# Computations in Weyl algebra with rational function coefficients

I am looking for a software to perform calculations with modules over the algebra $R_n=\mathbb{C}(x_1\ldots x_n)\langle \partial_1\ldots\partial_n\rangle$ of differential operators with rational function coefficients. In the case of Weyl algebra $A_n$ with polynomial coefficients I know there is such functionality in Macaulay2 and Singular. Is there a system which allows working over $R_n$?

In principle I can factor my calculations through $A_n$, but my expressions are relatively simple when considered as polynomials in $R_n$ (i.e. I start with first-order diff. operators), but become very complicated when I reduce them to polynomial coefficients. I have tried going through Singular, but the computation is taking too much time. I expect that calculations directly over $R_n$ are actually much easier since the coefficients form a field. Is this expectation correct?

The sort of calculations I am looking for is computing syzygy modules and finding an expression for a given element of a module in terms of a given generating set. I guess it all boils down to computation of a Groebner basis.

Update: I found that OreModules package for Maple can in principle work with rational function coefficients. However, I can't find any accurate description of the algorithms used -- I have a feeling that it might be somehow re-using the polynomial coefficient code for rational computations. In any case, these packages fail to produce an answer on my machine in any reasonable time. I then become most interested in the question whether my expectation that the rational case is computationally simpler is correct.

Update 2: I have implemented the most naive version of Buchberger's algorithm over the rational function coefficients in Mathematica, and it appears to give a correct result in finite time, which suggests that either I am using OreModules package in a wrong way or that the package is indeed re-using the polynomial coefficient code.

• I've found myself in the same situation. Would you be willing to share your code? – Jay Pantone Jun 2 '17 at 23:33
• @JayPantone, I am not sure where I have this code. But as far as I remember, it was tailored very specifically to my problem and I am skeptical that anyone (me included) will be able to run it without pain and suffering. Unfortunately, I believe you will be better off implementing it yourself -- it is not that hard, the Buchberger's algorithm is pretty simple and works the same way over this algebra. – Peter Kravchuk Jun 3 '17 at 1:10