
7.7.2.0. bfct
Procedure from library bfun.lib (see bfun_lib).
 Usage:
 bfct(f [,s,t,v]); f a poly, s,t optional ints, v an optional intvec
 Return:
 list of ideal and intvec
 Purpose:
 computes the roots of the BernsteinSato polynomial b(s)
for the hypersurface defined by f.
 Assume:
 The basering is commutative and of characteristic 0.
 Background:
 In this proc, the initial Malgrange ideal is computed according to
the algorithm by Masayuki Noro 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 s<>0, std is used for GB computations,
otherwise, and by default, slimgb is used.
If t<>0, a matrix ordering is used for Groebner basis computations,
otherwise, and by default, a block ordering is used.
If v is a positive weight vector, v is used for homogenization
computations, otherwise and by default, no weights are used.
 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;
bfct(f);
==> [1]:
==> _[1]=5/6
==> _[2]=1
==> _[3]=7/6
==> [2]:
==> 1,1,1
intvec v = 3,2;
bfct(f,1,0,v);
==> [1]:
==> _[1]=5/6
==> _[2]=1
==> _[3]=7/6
==> [2]:
==> 1,1,1

