This function computes the finite list of all possible Bernstein-Sato polynomials for a polynomial with parametric coefficients and creates latex code describing strata in the parameter space corresponding to the B.-S. polynomials --- each stratum is a constructible set. This is an implementation of the algorithmic approach in Anton Leykin. Constructibility of the Set of Polynomials with a Fixed Bernstein-Sato Polynomial: an Algorithmic Approach. Journal of Symbolic Computation, 32(6):663–675, 2001.
i1 : A = (QQ [a,b,c]) [x, y, Dx, Dy, WeylAlgebra => {x=>Dx, y=>Dy}]
o1 = A
o1 : PolynomialRing, 2 differential variable(s)
i2 : paramBpoly(a*x^2 + b*x*y + c*y^2, stdio)
\begin{itemize}
\item $b(s)=(S+1)^2$ corresponds to
$V(0)$$\setminus$$V(b^2-4*a*c)$
\item $b(s)=(S+1/2)*(S+1)$ corresponds to
$V(b^2-4*a*c)$
\end{itemize}
2 1
o2 = {(S + 1) , (S + -)(S + 1)}
2
o2 : List
Caveat
A finite field ZZ/p is used to speed up computations. Option "ground field" may be used to change the characteristic p. If p=0 the computation will be attempted over QQ.
See also
globalBFunction -- global b-function (else known as the Bernstein-Sato polynomial)
Ways to use this method:
paramBpoly(RingElement,File) -- compute the list of all possible Bernstein-Sato polynomials for a parametric polynomial