[ << ] | [ < ] | [ Up ] | [ > ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |

So far we have explained Groebner basis computation in commutative polynomial rings. However Groebner basis can be considered in more general non-commutative rings. Weyl algebra is one of such rings and Risa/Asir implements fundamental operations in Weyl algebra and Groebner basis computation in Weyl algebra.

The `n`

dimensional Weyl algebra over a field `K`

,
`D=K<x1,…,xn,D1,…,Dn>`

is a non-commutative
algebra which has the following fundamental relations:

`xi*xj-xj*xi=0`

, `Di*Dj-Dj*Di=0`

, `Di*xj-xj*Di=0`

(`i!=j`

),
`Di*xi-xi*Di=1`

`D`

is the ring of differential operators whose coefficients
are polynomials in `K[x1,…,xn]`

and
`Di`

denotes the differentiation with respect to `xi`

.
According to the commutation relation,
elements of `D`

can be represented as a `K`

-linear combination
of monomials `x1^i1*…*xn^in*D1^j1*…*Dn^jn`

.
In Risa/Asir, this type of monomial is represented
by `<<i1,…,in,j1,…,jn>>`

as in the case of commutative
polynomial.
That is, elements of `D`

are represented by distributed polynomials.
Addition and subtraction can be done by `+`

, `-`

,
but multiplication is done by calling `dp_weyl_mul()`

because of
the non-commutativity of `D`

.

[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>>

The following functions are avilable for Groebner basis computation
in Weyl algebra:
`dp_weyl_gr_main()`

,
`dp_weyl_gr_mod_main()`

,
`dp_weyl_gr_f_main()`

,
`dp_weyl_f4_main()`

,
`dp_weyl_f4_mod_main()`

.
Computation of the global b function is implemented as an application.

[ << ] | [ < ] | [ Up ] | [ > ] | [ >> ] |

This document was generated on *April 22, 2021* using *texi2html 5.0*.