|
7.5.2.0. annfs
Procedure from library dmod.lib (see dmod_lib).
- Usage:
- annfs(f [,S,eng]); f a poly, S a string, eng an optional int
- Return:
- ring
- Purpose:
- compute the D-module structure of basering[1/f]*f^s with the algorithm given in S and with the Groebner basis engine given in 'eng'
- Note:
- activate the output ring with the
setring command.
The value of a string S can be
'bm' (default) - for the algorithm of Briancon and Maisonobe,
'ot' - for the algorithm of Oaku and Takayama,
'lot' - for the Levandovskyy's modification of the algorithm of Oaku and Takayama.
If eng <>0, std is used for Groebner basis computations,
otherwise and by default slimgb is used.
In the output ring:
- the ideal LD (which is a Groebner basis) is the needed D-module structure,
- the list BS is the list of roots and multiplicities of a Bernstein polynomial of f.
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 = z*x^2+y^3;
printlevel = 0;
def A = annfs(F); // here, the default BM algorithm will be used
setring A;
LD;
==> LD[1]=y*Dy+3*z*Dz+3
==> LD[2]=x*Dx-2*z*Dz
==> LD[3]=x^2*Dy-3*y^2*Dz
==> LD[4]=3*y^2*Dx-2*x*z*Dy
==> LD[5]=y^3*Dz+x^2*z*Dz+x^2
==> LD[6]=2*x*z*Dy^2+9*y*z*Dx*Dz+3*y*Dx
==> LD[7]=9*y*z*Dx^2*Dz+4*z^2*Dy^2*Dz+3*y*Dx^2+2*z*Dy^2
==> LD[8]=4*z^2*Dy^3*Dz-27*z^2*Dx^2*Dz^2+2*z*Dy^3-54*z*Dx^2*Dz-6*Dx^2
BS;
==> [1]:
==> _[1]=-7/6
==> _[2]=-5/6
==> _[3]=-4/3
==> _[4]=-1
==> _[5]=-5/3
==> [2]:
==> 1,1,1,1,1
|
|