##### 7.5.4.0. operatorModulo

Procedure from library `dmod.lib` (see dmod_lib).

Usage:
  operatorModulo(f,I,b); f a poly, I an ideal, b a poly

Return:
  poly

Purpose:
  compute the B-operator from the polynomial f,
  ideal I = Ann f^s and Bernstein-Sato polynomial b
  using modulo i.e. kernel of module homomorphism

Note:
  The computations take place in the ring, similar to the one
  returned by Sannfs procedure.
  Note, that operator is not completely reduced wrt Ann f^{s+1}.
  If printlevel=1, progress debug messages will be printed,
  if printlevel>=2, all the debug messages will be printed.

Example:

    LIB "dmod.lib";
    //  LIB "dmod.lib"; option(prot); option(mem);
    ring r = 0,(x,y),Dp;
    poly F = x^3+y^3+x*y^3;
    def A = Sannfs(F); // here we get LD = ann f^s
    setring A;
    poly F = imap(r,F);
    def B = annfs0(LD,F); // to obtain BS polynomial
    list BS = imap(B,BS);   poly bs = fl2poly(BS,"s");
    poly PS = operatorModulo(F,LD,bs);
    LD = groebner(LD);
    PS = NF(PS,subst(LD,s,s+1));; // reduction modulo Ann s^{s+1}
    ==> // ** _ is no standard basis
    size(PS);
    ==> 56
    lead(PS);
    ==> -2/243*y^3*Dx*Dy^3
    reduce(PS*F-bs,LD); // check the defining property of PS
    ==> 0

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