[ << ] | [ < ] | [上] | [ > ] | [ >> ] | [冒頭] | [目次] | [見出し] | [ ? ] |
これまでは, 通常の可換な多項式環におけるグレブナ基底計算について 述べてきたが, グレブナ基底の理論は, ある条件を満たす非可換な 環にも拡張できる. このような環の中で, 応用上も重要な, 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]
を係数
とする微分作用素環で, Di
は xi
による微分を表す. 交換関係により,
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 関数の計算が実装されている.
[ << ] | [ < ] | [上] | [ > ] | [ >> ] |
この文書は12月 21, 2024にtexi2html 5.0を用いて生成されました。