[ << ] [ < ] [?] [ > ] [ >> ]         [??] [??] [???] [ ? ]

8.4 計算および表示の制御

グレブナ基底の計算において, さまざまなパラメタ設定を行うことにより計算, 表示を制御することができる. これらは, 組み込み函数 dp_gr_flags() により設定参照することができる. 無引数で dp_gr_flags() を実行する と, 現在設定されているパラメタが, 名前と値のリストで返される.

[100] dp_gr_flags();
[Demand,0,NoSugar,0,NoCriB,0,NoGC,0,NoMC,0,NoRA,0,NoGCD,0,Top,0,
ShowMag,1,Print,1,Stat,0,Reverse,0,InterReduce,0,Multiple,0]
[101]

以下で, 各パラメタの意味を説明する. on の場合とは, パラメタが 0 でない場合を いう. これらのパラメタの初期値は全て 0 (off) である.

NoSugar

on の場合, sugar strategy の代わりに Buchbergerの normal strategy が用 いられる.

NoCriB

on の場合, 不必要対検出規準のうち, 規準 B を適用しない.

NoGC

on の場合, 結果がグレブナ基底になっているかどうかのチェックを行わない.

NoMC

on の場合, 結果が入力イデアルと同等のイデアルであるかどうかのチェック を行わない.

NoRA

on の場合, 結果を reduced グレブナ基底にするための interreduce を行わない.

NoGCD

on の場合, 有理式係数のグレブナ基底計算において, 生成された多項式の, 係数の content をとらない.

Top

on の場合, normal form 計算において頭項消去のみを行う.

Reverse

on の場合, normal form 計算の際の reducer を, 新しく生成されたものを優 先して選ぶ.

Print

on の場合, グレブナ基底計算の途中におけるさまざまな情報を表示する.

PrintShort

on で、Print が off の場合, グレブナ基底計算の途中の情報を短縮形で表示する.

Stat

on で Print が off ならば, Print が on のとき表示さ れるデータの内, 集計データのみが表示される.

ShowMag

on で Print が on ならば, 生成が生成される毎に, その多項式の 係数のビット長の和を表示し, 最後に, それらの和の最大値を表示する.

Content
Multiple

0 でない有理数の時, 有理数上の正規形計算において, 係数のビット長の和が Content 倍になるごとに係数全体の GCD が計算され, その GCD で 割った多項式を簡約する. Content が 1 ならば, 簡約するごとに GCD 計算が行われ一般には効率が悪くなるが, Content を 2 程度 とすると, 巨大な整数が係数に現れる場合, 効率が良くなる場合がある. backward compatibility のため、Multiple で整数値を指定できる.

Demand

正当なディレクトリ名 (文字列) を値に持つとき, 生成された多項式はメモリ 中におかれず, そのディレクトリ中にバイナリデータとして置かれ, その多項 式を用いる normal form 計算の際, 自動的にメモリ中にロードされる. 各多 項式は, 内部でのインデックスをファイル名に持つファイルに格納される. ここで指定されたディレクトリに書かれたファイルは自動的には消去されない ため, ユーザが責任を持って消去する必要がある.

Print が 0 でない場合次のようなデータが表示される.

[93] gr(cyclic(4),[c0,c1,c2,c3],0)$
mod= 99999989, eval = []
(0)(0)<<0,2,0,0>>(2,3),nb=2,nab=5,rp=2,sugar=2,mag=4
(0)(0)<<0,1,2,0>>(1,2),nb=3,nab=6,rp=2,sugar=3,mag=4
(0)(0)<<0,1,1,2>>(0,1),nb=4,nab=7,rp=3,sugar=4,mag=6
.
(0)(0)<<0,0,3,2>>(5,6),nb=5,nab=8,rp=2,sugar=5,mag=4
(0)(0)<<0,1,0,4>>(4,6),nb=6,nab=9,rp=3,sugar=5,mag=4
(0)(0)<<0,0,2,4>>(6,8),nb=7,nab=10,rp=4,sugar=6,mag=6
....gb done
reduceall
.......
membercheck
(0,0)(0,0)(0,0)(0,0)
gbcheck total 8 pairs
........
UP=(0,0)SP=(0,0)SPM=(0,0)NF=(0,0)NFM=(0.010002,0)ZNFM=(0.010002,0)
PZ=(0,0)NP=(0,0)MP=(0,0)RA=(0,0)MC=(0,0)GC=(0,0)T=40,B=0 M=8 F=6
D=12 ZR=5 NZR=6 Max_mag=6
[94]

最初に表示される mod, eval は, trace-lifting で用いられる法 である. mod は素数, eval は有理式係数の場合に用いられる 数のリストである.

計算途中で多項式が生成される毎に次の形のデータが表示される.

(TNF)(TCONT)HT(INDEX),nb=NB,nab=NAB,rp=RP,sugar=S,mag=M

それらの意味は次の通り.

TNF

normal form 計算時間 (秒)

TCONT

content 計算時間 (秒)

HT

生成された多項式の頭項

INDEX

S-多項式を構成する多項式のインデックスのペア

NB

現在の, 冗長性を除いた基底の数

NAB

現在までに生成された基底の数

RP

残りのペアの数

S

生成された多項式の sugar の値

M

生成された多項式の係数のビット長の和 (ShowMag が on の時に表示される. )

最後に, 集計データが表示される. 意味は次の通り. (時間の表示において, 数字が 2 つあるものは, 計算時間と GC 時間のペアである.)

UP

ペアのリストの操作にかかった時間

SP

有理数上の S-多項式計算時間

SPM

有限体上の S-多項式計算時間

NF

有理数上の normal form 計算時間

NFM

有限体上の normal form 計算時間

ZNFM

NFM の内, 0 への reduction にかかった時間

PZ

content 計算時間

NP

有理数係数多項式の係数に対する剰余演算の計算時間

MP

S-多項式を生成するペアの選択にかかった時間

RA

interreduce 計算時間

MC

trace-lifting における, 入力多項式のメンバシップ計算時間

GC

結果のグレブナ基底候補のグレブナ基底チェック時間

T

生成されたペアの数

B, M, F, D

各 criterion により除かれたペアの数

ZR

0 に reduce されたペアの数

NZR

0 でない多項式に reduce されたペアの数

Max_mag

生成された多項式の, 係数のビット長の和の最大値


[ << ] [ < ] [?] [ > ] [ >> ]

?????12? 13, 2017?texi2html 5.0????????????