# Drestriction -- restriction modules of a D-module

## Synopsis

• Usage:
N = Drestriction(M,w), NI = Drestriction(I,w), Ni = Drestriction(i,M,w),
NIi = Drestriction(i,I,w)
• Inputs:
• M, , over the Weyl algebra D
• I, an ideal, which represents the module M = D/I
• w, a list, a weight vector
• i, an integer, nonnegative
• Optional inputs:
• Strategy => ..., default value Schreyer,
• Outputs:
• Ni, , the i-th derived integration module of M with respect to the weight vector w
• N, , contains entries of the form i=>Ni
• NIi, , the i-th derived integration module of D/I with respect to the weight vector w
• NI, , contains entries of the form i=>NIi

## Description

The derived restriction modules of a D-module M are the derived inverse images in the sense of algebraic geometry but in the category of D-modules. This routine computes restrictions to coordinate subspaces, where the subspace is determined by the strictly positive entries of the weight vectorw, e.g., {x_i = 0 : w_i > 0} if D = C<x_1,...,x_n,d_1,...,d_n>. The input weight vector should be a list of n numbers to induce the weight (-w,w) on D.

The algorithm used appears in the paper 'Algorithims for D-modules' by Oaku-Takayama(1999). The method is to compute an adapted resolution with respect to the weight vector w and use the b-function with respect to w to truncate the resolution.

 i1 : R = QQ[x_1,x_2,D_1,D_2,WeylAlgebra=>{x_1=>D_1,x_2=>D_2}] o1 = R o1 : PolynomialRing, 2 differential variables i2 : I = ideal(x_1, D_2-1) o2 = ideal (x , D - 1) 1 2 o2 : Ideal of R i3 : Drestriction(I,{1,0}) o3 = HashTable{0 => 0 } 1 => cokernel | D_2-1 | o3 : HashTable

## Caveat

The module M should be specializable to the subspace. This is true for holonomic modules.The weight vector w should be a list of n numbers if M is a module over the n-th Weyl algebra.