
7.7.5.0. bFactor
Procedure from library dmodapp.lib (see dmodapp_lib).
 Usage:
 bFactor(f); f poly
 Return:
 list of ideal and intvec and possibly a string
 Purpose:
 tries to compute the roots of a univariate poly f
 Note:
 The output list consists of two or three entries:
roots of f as an ideal, their multiplicities as intvec, and,
if present, a third one being the product of all irreducible factors
of degree greater than one, given as string.
If f is the zero polynomial or if f has no roots in the ground field,
this is encoded as root 0 with multiplicity 0.
 Display:
 If printlevel=1, progress debug messages will be printed,
if printlevel>=2, all the debug messages will be printed.
Example:
 LIB "dmodapp.lib";
ring r = 0,(x,y),dp;
bFactor((x^21)^2);
==> [1]:
==> _[1]=1
==> _[2]=1
==> [2]:
==> 2,2
bFactor((x^2+1)^2);
==> [1]:
==> _[1]=0
==> [2]:
==> 0
==> [3]:
==> x4+2x2+1
bFactor((y^2+1/2)*(y+9)*(y7));
==> [1]:
==> _[1]=7
==> _[2]=9
==> [2]:
==> 1,1
==> [3]:
==> 2y2+1
bFactor(1);
==> [1]:
==> _[1]=0
==> [2]:
==> 0
==> [3]:
==> 1
bFactor(0);
==> [1]:
==> _[1]=0
==> [2]:
==> 0
==> [3]:
==> 0

