# Singular

##### 7.5.7.0. makeMalgrange
Procedure from library `dmodvar.lib` (see dmodvar_lib).

Usage:
makeMalgrange(F [,ORD]); F an ideal, ORD an optional string

Return:
ring (Weyl algebra) containing an ideal IF

Purpose:
create the ideal by Malgrange associated with F = F[1],...,F[P].

Note:
Activate the output ring with the `setring` command. In this ring, the ideal IF is the ideal by Malgrange corresponding to F.
The value of ORD must be an arbitrary ordering in K<_t,_x,_Dt,_Dx> written in the string form. By default ORD = 'dp'.

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

Example:
 ```LIB "dmodvar.lib"; ring R = 0,(x,y,z),Dp; ideal I = x^2+y^3, z; def W = makeMalgrange(I); setring W; W; ==> // coefficients: QQ ==> // number of vars : 10 ==> // block 1 : ordering dp ==> // : names t(1) t(2) x y z Dt(1) Dt(2) Dx Dy Dz ==> // block 2 : ordering C ==> // noncommutative relations: ==> // Dt(1)t(1)=t(1)*Dt(1)+1 ==> // Dt(2)t(2)=t(2)*Dt(2)+1 ==> // Dxx=x*Dx+1 ==> // Dyy=y*Dy+1 ==> // Dzz=z*Dz+1 IF; ==> IF[1]=-y^3-x^2+t(1) ==> IF[2]=t(2)-z ==> IF[3]=2*x*Dt(1)+Dx ==> IF[4]=3*y^2*Dt(1)+Dy ==> IF[5]=Dt(2)+Dz ```