|  |  7.5.5.0. integralModule Procedure from librarydmodapp.lib(see  dmodapp_lib).
 
Example:Usage:
integralModule(I,w,[,eng,m,G]);
I ideal, w intvec, eng and m optional ints, G optional ideal
 
Return:
ring (a Weyl algebra) containing a module 'intMod'
Assume:
The basering is the n-th Weyl algebra over a field of characteristic 0
and for all 1<=i<=n the identity var(i+n)*var(i)=var(i)*var(i+1)+1
 holds, i.e. the sequence of variables is given by
 x(1),...,x(n),D(1),...,D(n), where D(i) is the differential operator
 belonging to x(i).
 Further, assume that I is holonomic and that w is n-dimensional with
 non-negative entries.
 
Purpose:
computes the integral module of a holonomic ideal w.r.t. the subspace
defined by the variables corresponding to the non-zero entries of the
 given intvec
 
Note:
The output ring is the Weyl algebra defined by the zero entries of w.
It contains a module 'intMod' being the integral module of I wrt w.
 If there are no zero entries, the input ring is returned.
 If eng<>0,
 stdis used for Groebner basis computations,otherwise, and by default,
 slimgbis used.Let F(I) denote the Fourier transform of I w.r.t. w.
 The minimal integer root of the b-function of F(I) w.r.t. the weight
 (-w,w) can be specified via the optional argument m.
 The optional argument G is used for specifying a Groebner Basis of F(I)
 wrt the weight (-w,w), that is, the initial form of G generates the
 initial ideal of F(I) w.r.t. the weight (-w,w).
 Further note, that the assumptions on m and G (if given) are not
 checked.
 
Display:
If printlevel=1, progress debug messages will be printed,
if printlevel>=2, all the debug messages will be printed.
 
 |  | LIB "dmodapp.lib";
ring r = 0,(x,b,Dx,Db),dp;
def D2 = Weyl();
setring D2;
ideal I = x*Dx+2*b*Db+2, x^2*Dx+b*Dx+2*x;
intvec w = 1,0;
def im = integralModule(I,w);
setring im; im;
==> // coefficients: QQ
==> // number of vars : 2
==> //        block   1 : ordering C
==> //        block   2 : ordering dp
==> //                  : names    b Db
==> // noncommutative relations:
==> //    Dbb=b*Db+1
print(intMod);
==> 2*b*Db+1,0,  
==> 0,       b*Db
 | 
 
 |