##### 7.5.2.0. bfctAnn

Procedure from library `bfun.lib` (see bfun_lib).

Usage:
  bfctAnn(f [,a,b,c]); f a poly, a, b, c optional ints

Return:
  list of ideal and intvec

Purpose:
  computes the roots of the Bernstein-Sato polynomial b(s) for the
  hypersurface defined by f.

Assume:
  The basering is commutative and of characteristic 0.

Background:
  In this proc, Ann(f^s) is computed and then a system of linear
  equations is solved by linear reductions.

Note:
  In the output list, the ideal contains all the roots and the intvec
  their multiplicities.
  If a<>0, only f is appended to Ann(f^s), otherwise, and by default,
  f and all its partial derivatives are appended.
  If b<>0, `std` is used for GB computations, otherwise, and by
  default, `slimgb` is used.
  If c<>0, `std` is used for Groebner basis computations of ideals
  <I+J> when I is already a Groebner basis of <I>.
  Otherwise, and by default the engine determined by the switch b is used.
  Note that in the case c<>0, the choice for b will be overwritten only
  for the types of ideals mentioned above.
  This means that if b<>0, specifying c has no effect.

Display:
  If printlevel=1, progress debug messages will be printed,
  if printlevel>=2, all the debug messages will be printed.

Example:

    LIB "bfun.lib";
    ring r = 0,(x,y),dp;
    poly f = x^2+y^3+x*y^2;
    bfctAnn(f);
    ==> [1]:
    ==>    _[1]=-5/6
    ==>    _[2]=-1
    ==>    _[3]=-7/6
    ==> [2]:
    ==>    1,1,1
    def R = reiffen(4,5); setring R;
    RC; // the Reiffen curve in 4,5
    ==> xy4+y5+x4
    bfctAnn(RC,0,1);
    ==> [1]:
    ==>    _[1]=-9/20
    ==>    _[2]=-11/20
    ==>    _[3]=-13/20
    ==>    _[4]=-7/10
    ==>    _[5]=-17/20
    ==>    _[6]=-9/10
    ==>    _[7]=-19/20
    ==>    _[8]=-1
    ==>    _[9]=-21/20
    ==>    _[10]=-11/10
    ==>    _[11]=-23/20
    ==>    _[12]=-13/10
    ==>    _[13]=-27/20
    ==> [2]:
    ==>    1,1,1,1,1,1,1,1,1,1,1,1,1

User manual for Singular version 4.4.1, 2025, generated by texi2html.