# Singular          ##### 7.5.20.0. WeylClosure1
Procedure from library `dmodloc.lib` (see dmodloc_lib).

Usage:
WeylClosure1(L); L a poly

Assume:
The basering is the first Weyl algebra D=K<x,d|dx=xd+1> over a field K of characteristic 0.

Return:
ideal, the Weyl closure of the principal left ideal generated by L

Remarks:
The Weyl closure of a left ideal I in the Weyl algebra D is defined to be the intersection of I regarded as left ideal in the rational Weyl algebra K(x)<d> with the polynomial Weyl algebra D.
Reference: (Tsa), Algorithm 1.2.4

Note:
If printlevel=1, progress debug messages will be printed, if printlevel>=2, all the debug messages will be printed.

Example:
 ```LIB "dmodloc.lib"; ring r = 0,(x,Dx),dp; def W = Weyl(); setring W; poly L = (x^3+2)*Dx-3*x^2; WeylClosure1(L); ==> _=x^3*Dx-3*x^2+2*Dx ==> _=x^2*Dx^2-2*x*Dx ==> _=x^2*Dx+Dx^2-3*x ==> _=x*Dx^2-2*Dx L = (x^4-4*x^3+3*x^2)*Dx^2+(-6*x^3+20*x^2-12*x)*Dx+(12*x^2-32*x+12); WeylClosure1(L); ==> _=x^4*Dx^2-4*x^3*Dx^2-6*x^3*Dx+3*x^2*Dx^2+20*x^2*Dx+12*x^2-12*x*Dx-32*\ x+12 ==> _=x^2*Dx^3-21/10*x^2*Dx^2+3/10*x*Dx^3-6/5*x*Dx^2+63/5*x*Dx-3/5*Dx^2-12\ /5*Dx-126/5 ==> _=x^3*Dx^2-43/10*x^2*Dx^2+9/10*x*Dx^3-6*x^2*Dx+12/5*x*Dx^2+109/5*x*Dx-\ 9/5*Dx^2+12*x-36/5*Dx-178/5 ==> _=x^3*Dx^3-48/5*x^2*Dx^2+9/5*x*Dx^3+24/5*x*Dx^2+198/5*x*Dx-18/5*Dx^2-7\ 2/5*Dx-336/5 ==> _=x^3*Dx^4-4*x^2*Dx^4+2*x^2*Dx^3+3*x*Dx^4-69/10*x^2*Dx^2+67/10*x*Dx^3-\ 24/5*x*Dx^2-3*Dx^3+207/5*x*Dx-27/5*Dx^2-18/5*Dx-414/5 ==> _=x^3*Dx^6+8/3*x^3*Dx^5-4*x^2*Dx^6-2/3*x^2*Dx^5+3*x*Dx^6+16*x^2*Dx^4-2\ 0*x*Dx^5-92/3*x*Dx^4+12*Dx^5+126/5*x^2*Dx^2-258/5*x*Dx^3-168/5*x*Dx^2+92/\ 3*Dx^3-756/5*x*Dx+356/5*Dx^2+504/5*Dx+1512/5 ``` 