A theorem of Stafford says that every ideal in the Weyl algebra can be generated by 2 elements. This routine is the implementation of the effective version of this theorem following the constructive proof in A.Leykin, `Algorithmic proofs of two theorems of Stafford', Journal of Symbolic Computation, 38(6):1535-1550, 2004.
The current implementation provides a weaker result: the 2 generators produced are guaranteed to generate only the extension of the ideal I in the Weyl algebra with rational-function coefficients.
i1 : makeWA(QQ[x_1..x_4]) o1 = QQ[x ..x , dx ..dx ] 1 4 1 4 o1 : PolynomialRing, 4 differential variables |
i2 : stafford ideal (dx_1,dx_2,dx_3,dx_4) 4 2 3 o2 = ideal (dx , x x dx + x x dx + x dx + x dx + dx ) 1 1 4 4 1 3 3 1 4 1 3 2 o2 : Ideal of QQ[x ..x , dx ..dx ] 1 4 1 4 |
The input should be generated by at least 2 generators. The output and input ideals are not equal necessarily.
The object stafford is a method function.