|
7.7.3.0. annfsOT
Procedure from library dmod.lib (see dmod_lib).
- Usage:
- annfsOT(f [,eng]); f a poly, eng an optional int
- Return:
- ring
- Purpose:
- compute the D-module structure of basering[1/f]*f^s,
according to the algorithm by Oaku and Takayama
- Note:
- activate the output ring with the
setring command. In this ring,
- the ideal LD (which is a Groebner basis) is the needed D-module structure,
which is obtained by substituting the minimal integer root of a Bernstein
polynomial into the s-parametric ideal;
- the list BS contains roots with multiplicities of a Bernstein polynomial of f.
If eng <>0, std is used for Groebner basis computations,
otherwise, and by default slimgb is used.
If printlevel=1, progress debug messages will be printed,
if printlevel>=2, all the debug messages will be printed.
Example:
| LIB "dmod.lib";
ring r = 0,(x,y,z),Dp;
poly F = x^2+y^3+z^5;
printlevel = 0;
def A = annfsOT(F);
setring A;
LD;
==> LD[1]=15*x*Dx+10*y*Dy+6*z*Dz+30
==> LD[2]=3*y^2*Dx-2*x*Dy
==> LD[3]=5*y^3*Dy+3*y^2*z*Dz+5*x^2*Dy+15*y^2
==> LD[4]=5*z^4*Dy-3*y^2*Dz
==> LD[5]=5*z^4*Dx-2*x*Dz
==> LD[6]=z^5*Dz+5*z^4+y^3*Dz+x^2*Dz
BS;
==> [1]:
==> _[1]=-47/30
==> _[2]=-31/30
==> _[3]=-41/30
==> _[4]=-1
==> _[5]=-49/30
==> _[6]=-43/30
==> _[7]=-59/30
==> _[8]=-53/30
==> _[9]=-37/30
==> [2]:
==> 1,1,1,1,1,1,1,1,1
|
|