Top
Back: bernsteinBM
Forward: annfsParamBM
FastBack: central_lib
FastForward: involut_lib
Up: dmod_lib
Top: Singular Manual
Contents: Table of Contents
Index: Index
About: About this document
7.5.2.0. operatorBM
Procedure from library dmod.lib (see dmod_lib).

Usage:
operatorBM(f [,eng]); f a poly, eng an optional int

Return:
ring

Purpose:
compute the B-operator and other relevant data for Ann F^s, according to the algorithm by Briancon and Maisonobe

Note:
activate this ring with the setring command. In this ring D[s]
- the polynomial F is the same as the input,
- the ideal LD is the annihilator of f^s in Dn[s],
- the ideal LD0 is the needed D-mod structure, where LD0 = LD|s=s0,
- the polynomial bs is the global Bernstein polynomial of f in the variable s,
- the list BS contains all the roots with multiplicities of the global Bernstein polynomial of f,
- the polynomial PS is an operator in Dn[s] such that PS*f^(s+1) = bs*f^s.
If eng <>0, std is used for Groebner basis computations,
otherwise and by default slimgb is used.
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,w),Dp;
//  poly F = x^3+y^3+z^2*w;
ring r = 0,(x,y,z),Dp;
poly F = x^3+y^3+z^3;
printlevel = 0;
def A = operatorBM(F);
setring A;
F; // the original polynomial itself
==> x^3+y^3+z^3
LD; // generic annihilator
==> LD[1]=x*Dx+y*Dy+z*Dz-3*s
==> 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-3*z^2*s
==> LD[6]=x^3*Dy+y^3*Dy+y^2*z*Dz-3*y^2*s
LD0; // annihilator
==> LD0[1]=x*Dx+y*Dy+z*Dz+6
==> LD0[2]=z^2*Dy-y^2*Dz
==> LD0[3]=z^2*Dx-x^2*Dz
==> LD0[4]=y^2*Dx-x^2*Dy
==> LD0[5]=x^3*Dz+y^3*Dz+z^3*Dz+6*z^2
==> LD0[6]=x^3*Dy+y^3*Dy+y^2*z*Dz+6*y^2
bs; // normalized Bernstein poly
==> s^5+7*s^4+173/9*s^3+233/9*s^2+154/9*s+40/9
BS; // root and multiplicities of the Bernstein poly
==> [1]:
==>    _[1]=-1
==>    _[2]=-4/3
==>    _[3]=-5/3
==>    _[4]=-2
==> [2]:
==>    2,1,1,1
PS; // the operator, s.t. PS*F^{s+1} = bs*F^s mod LD
==> 2/81*y*z*Dx^3*Dy*Dz-2/81*y*z*Dy^4*Dz-1/81*z^2*Dx^3*Dz^2-1/27*z^2*Dy^3*Dz^\
   2+1/81*z^2*Dz^5+2/81*y*Dx^3*Dy*s-2/81*y*Dy^4*s+2/81*z*Dx^3*Dz*s+2/27*z*Dy\
   ^3*Dz*s-8/81*z*Dz^4*s+2/27*y*Dx^3*Dy-2/27*y*Dy^4+2/81*z*Dx^3*Dz-2/27*z*Dy\
   ^3*Dz-8/81*z*Dz^4+1/27*Dx^3*s^2+1/9*Dy^3*s^2+2/9*Dz^3*s^2+5/27*Dx^3*s+11/\
   27*Dy^3*s+14/27*Dz^3*s+2/9*Dx^3+2/9*Dy^3+8/27*Dz^3
reduce(PS*F-bs,LD); // check the property of PS
==> 0


Top Back: bernsteinBM Forward: annfsParamBM FastBack: central_lib FastForward: involut_lib Up: dmod_lib Top: Singular Manual Contents: Table of Contents Index: Index About: About this document
            User manual for Singular version 3-0-3, May 2007, generated by texi2html.