|
7.7.20.0. dmodoublext
Procedure from library nchomolog.lib (see nchomolog_lib).
- Usage:
- dmodoublext(M [,i]); M module, i optional int
- Compute:
- a presentation of Ext^i(Ext^i(M,D),D) for basering D
- Return:
- left module
- Note:
- by default, i is set to the integer part of the half of number of variables of D
for holonomic modules over Weyl algebra, the double ext is known to be holonomic left module
Example:
| LIB "nchomolog.lib";
ring R = 0,(x,y),dp;
poly F = x3-y2;
def A = annfs(F);
setring A;
dmodoublext(LD);
==> _[1]=2*x*Dx+3*y*Dy+6
==> _[2]=3*x^2*Dy+2*y*Dx
==> _[3]=9*x*y*Dy^2-4*y*Dx^2+15*x*Dy
==> _[4]=27*y^2*Dy^3+8*y*Dx^3+135*y*Dy^2+105*Dy
LD;
==> LD[1]=2*x*Dx+3*y*Dy+6
==> LD[2]=3*x^2*Dy+2*y*Dx
==> LD[3]=9*x*y*Dy^2-4*y*Dx^2+15*x*Dy
==> LD[4]=27*y^2*Dy^3+8*y*Dx^3+135*y*Dy^2+105*Dy
// fancier example:
setring A;
ideal I = Dx*(x2-y3),Dy*(x2-y3);
I = groebner(I);
print(dmodoublext(I,1));
==> y^3-x^2
print(dmodoublext(I,2));
==> Dy,
==> Dx
|
|