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

8.9 Weyl 代数

これまでは, 通常の可換な多項式環におけるグレブナ基底計算について 述べてきたが, グレブナ基底の理論は, ある条件を満たす非可換な 環にも拡張できる. このような環の中で, 応用上も重要な, Weyl 代数, すなわち多項式環上の微分作用素環の演算および グレブナ基底計算が Risa/Asir に実装されている.

K 上の n 次元 Weyl 代数 D=K<x1,…,xn,D1,…,Dn>

xi*xj-xj*xi=0, Di*Dj-Dj*Di=0, Di*xj-xj*Di=0 (i!=j), Di*xi-xi*Di=1

という基本関係を持つ環である. D は 多項式環 K[x1,…,xn] を係数 とする微分作用素環で, Dixi による微分を表す. 交換関係により, D の元は, x1^i1*…*xn^in*D1^j1*…*Dn^jn なる単項 式の K 線形結合として書き表すことができる. Risa/Asir においては, この単項式を, 可換な多項式と同様に <<i1,…,in,j1,…,jn>> で表す. すなわち, D の元も 分散表現多項式として表される. 加減算は, 可換の場合と同様に, +, - により 実行できるが, 乗算は, 非可換性を考慮して dp_weyl_mul() という関数 により実行する.

[0] A=<<1,2,2,1>>;
(1)*<<1,2,2,1>>
[1] B=<<2,1,1,2>>;
(1)*<<2,1,1,2>>
[2] A*B;
(1)*<<3,3,3,3>>
[3] dp_weyl_mul(A,B);
(1)*<<3,3,3,3>>+(1)*<<3,2,3,2>>+(4)*<<2,3,2,3>>+(4)*<<2,2,2,2>>
+(2)*<<1,3,1,3>>+(2)*<<1,2,1,2>>

グレブナ基底計算についても, Weyl 代数専用の関数として, 次の関数が用意してある. dp_weyl_gr_main(), dp_weyl_gr_mod_main(), dp_weyl_gr_f_main(), dp_weyl_f4_main(), dp_weyl_f4_mod_main(). また, 応用として, global b 関数の計算が実装されている.


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

?????10? 21, 2017?texi2html 5.0????????????