##### 7.5.14.0. Dlocalization

Procedure from library `dmodloc.lib` (see dmodloc_lib).

Usage:
  Dlocalization(I,f[,k,e]); I ideal, f poly, k,e optional ints

Assume:
  The basering is the n-th Weyl algebra over a field of characteristic 0 and for all 1<=i<=n the identity
  var(i+n)*var(i)=var(i)*var(i+1)+1 holds, i.e. the sequence of variables is given by x(1),...,x(n),D(1),...,D(n), where D(i) is the differential operator belonging to x(i).
  Further, assume that f does not contain any D(i) and that I is holonomic on K^n\V(f).

Return:
  ideal or list, computes an ideal J such that D/J is isomorphic to D/I localized at f as D-modules.
  If k<>0, a list consisting of J and an integer m is returned, such that f^m represents the natural map from D/I to D/J. Otherwise (and by default), only the ideal J is returned.

Remarks:
  It is known that a localization at f of a holonomic D-module is again a holonomic D-module.
  Reference: (OTW)

Note:
  If e<>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 "dmodloc.lib";
    // (OTW), Example 8
    ring r = 0,(x,y,z,Dx,Dy,Dz),dp;
    def W = Weyl();
    setring W;
    poly f = x^3-y^2*z^2;
    ideal I = f^2*Dx+3*x^2, f^2*Dy-2*y*z^2, f^2*Dz-2*y^2*z;
    // I annihilates exp(1/f)
    ideal J = Dlocalization(I,f);
    J;
    ==> J[1]=y*Dy-z*Dz
    ==> J[2]=2*y*z^2*Dx+3*x^2*Dy
    ==> J[3]=2*y^2*z*Dx+3*x^2*Dz
    ==> J[4]=2*z^3*Dx*Dz+3*x^2*Dy^2+2*z^2*Dx
    ==> J[5]=3*y^2*z^3*Dz-2*x^4*Dx-6*x^3*z*Dz+12*y^2*z^2-12*x^3-6
    ==> J[6]=4*x^4*Dx^2+12*x^3*z*Dx*Dz+9*x^2*z^2*Dz^2+40*x^3*Dx+63*x^2*z*Dz+72*x^\
       2+12*Dx
    ==> J[7]=3*y*z^4*Dz^2-2*x^4*Dx*Dy-6*x^3*z*Dy*Dz+21*y*z^3*Dz-12*x^3*Dy+24*y*z^\
       2-6*Dy
    ==> J[8]=3*z^5*Dz^3-2*x^4*Dx*Dy^2-6*x^3*z*Dy^2*Dz+30*z^4*Dz^2-12*x^3*Dy^2+66*\
       z^3*Dz+24*z^2-6*Dy^2
    Dlocalization(I,f,1); // The natural map D/I -> D/J is given by 1/f^2
    ==> [1]:
    ==>    _[1]=y*Dy-z*Dz
    ==>    _[2]=2*y*z^2*Dx+3*x^2*Dy
    ==>    _[3]=2*y^2*z*Dx+3*x^2*Dz
    ==>    _[4]=2*z^3*Dx*Dz+3*x^2*Dy^2+2*z^2*Dx
    ==>    _[5]=3*y^2*z^3*Dz-2*x^4*Dx-6*x^3*z*Dz+12*y^2*z^2-12*x^3-6
    ==>    _[6]=4*x^4*Dx^2+12*x^3*z*Dx*Dz+9*x^2*z^2*Dz^2+40*x^3*Dx+63*x^2*z*Dz+72\
       *x^2+12*Dx
    ==>    _[7]=3*y*z^4*Dz^2-2*x^4*Dx*Dy-6*x^3*z*Dy*Dz+21*y*z^3*Dz-12*x^3*Dy+24*y\
       *z^2-6*Dy
    ==>    _[8]=3*z^5*Dz^3-2*x^4*Dx*Dy^2-6*x^3*z*Dy^2*Dz+30*z^4*Dz^2-12*x^3*Dy^2+\
       66*z^3*Dz+24*z^2-6*Dy^2
    ==> [2]:
    ==>    2

See also: DLoc; DLoc0; SDLoc.

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