Home Online Manual
Top
Back: annfs2
Forward: checkFactor
FastBack:
FastForward:
Up: dmod_lib
Top: Singular Manual
Contents: Table of Contents
Index: Index
About: About this document
7.5.4.0. annfsRB
Procedure from library dmod.lib (see dmod_lib).

Usage:
annfsRB(I, F [,eng]); I an ideal, F a poly, eng an optional int

Return:
ring

Purpose:
compute the annihilator ideal of f^s in the Weyl Algebra,
based on the output of Sannfs like procedure

Note:
activate the output ring with the setring command. In this ring,
- the ideal LD (which is a Groebner basis) is the annihilator of f^s,
- the list BS contains the 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.
This procedure uses in addition to F its Jacobian ideal.

Display:
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^3+y^3+z^3;
printlevel = 0;
def A = SannfsBM(F); setring A;
LD; // s-parametric ahhinilator
==> LD[1]=z^2*Dy-y^2*Dz
==> LD[2]=x*Dx+y*Dy+z*Dz-3*s
==> LD[3]=z^2*Dx-x^2*Dz
==> LD[4]=y^2*Dx-x^2*Dy
poly F = imap(r,F);
def B  = annfsRB(LD,F); setring B;
LD;
==> LD[1]=x*Dx+y*Dy+z*Dz+6
==> LD[2]=z^2*Dy-y^2*Dz
==> LD[3]=z^2*Dx-x^2*Dz
==> LD[4]=y^2*Dx-x^2*Dy
==> LD[5]=x^3*Dz+y^3*Dz+z^3*Dz+6*z^2
==> LD[6]=x^3*Dy+y^3*Dy+y^2*z*Dz+6*y^2
BS;
==> [1]:
==>    _[1]=-1
==>    _[2]=-2
==>    _[3]=-4/3
==>    _[4]=-5/3
==> [2]:
==>    2,1,1,1