# deformMCMModule(Module) -- deformation in the absolute case

## Synopsis

• Function: deformMCMModule
• Usage:
deformMCMModule M0
• Inputs:
• M0, , the module to be deformed; it must be maximal Cohen-Macaulay
• Optional inputs:
• DegreeLimit => ..., default value 10, Compute only up to this exponent
• Outputs:
• S, a ring, a ring representing the base space of the versal deformation of M0
• M, , a module representing the module of the versal deformation

## Description

This interface to deformMCMModule computes a deformation in the absolute case. Its inputs consist only of the module M0 to deform.

If M0 is free, then deformMCMModule returns (QQ[], M), where M is isomorphic as a graded module to M0.

 i1 : R = QQ[x,y, Degrees => {3,4}]/(x^4-y^3); i2 : deformMCMModule R^1 1 o2 = (QQ[], R ) o2 : Sequence

The next example computes a versal deformation of the maximal ideal of the E6 singularity. The deformation theory of this module is equivalent to that of the residue field, whose versal deformation is the Hilbert scheme of one point on the singularity.

 i3 : M0 = truncate(1,R^1) o3 = image | x y | 1 o3 : R-module, submodule of R i4 : (S,M) = deformMCMModule M0 o4 = (S, cokernel {3} | y+xi_1 x3-x2xi_2+xxi_2^2-xi_2^3 |) {4} | -x-xi_2 -y2+yxi_1-xi_1^2 | o4 : Sequence i5 : prune S QQ[xi ..xi ] 1 2 o5 = ------------ 3 4 - xi - xi 1 2 o5 : QuotientRing
The base space of the deformation is therefore isomorphic to the singularity itself. The substitution x => -xi_2, y => xi_1 shows that this is indeed the case with the result of the computation above.

The resulting module $M$, when restricted to the product of the singularity with the base space, is isomorphic to the ideal defining the diagonal embedding of the singularity.

The following example demonstrates the performance advantage of making use of a graded structure when possible. We deform the ideal generated by $x^2, xy$ and $y^2$ of the $E_6$ curve singularity. In the first case, the module is input as a graded module.

 i6 : use R; i7 : N0 = module ideal (x^2,y^2) o7 = image | x2 y2 | 1 o7 : R-module, submodule of R i8 : (S,N) = time deformMCMModule N0 -- used 1.21134 seconds o8 = (S, cokernel {6} | x2-xxi_2-xi_1+xi_2^2-yxi_4^2-2xi_3xi_4^2+xi_2xi_4^3 {8} | xxi_4-y+xi_3 ------------------------------------------------------------------------ xyxi_4+2xxi_3xi_4-xxi_2xi_4^2+y2+yxi_3+xi_3^2-xi_1xi_4^2 |) -x2-xxi_2-xi_1 | o8 : Sequence i9 : prune S QQ[xi ..xi ] 1 4 o9 = --------------------------------------------------------------------------------------------------------- 2 2 3 2 3 3 2 2 3 2 3 (- xi + xi xi + xi - 3xi xi xi + xi xi xi , - 2xi xi + xi + 3xi xi - 3xi xi xi - xi xi + xi xi ) 1 1 2 3 1 3 4 1 2 4 1 2 2 3 4 2 3 4 1 4 2 4 o9 : QuotientRing
In the second case, we strip the grading from the module and rerun the computation.
 i10 : N0' = coker matrix entries presentation N0 o10 = cokernel | x2 y2 | | -y -x2 | 2 o10 : R-module, quotient of R i11 : (S',N') = time deformMCMModule N0' -- used 1.43999 seconds o11 = (S', cokernel | x2-xxi_4^3-xxi_2+xi_2xi_4^3-3xi_3xi_4^2+xi_2^2-xi_1 | xxi_4-y+xi_3 ----------------------------------------------------------------------- x2xi_4^2+xyxi_4+2xxi_3xi_4+y2+yxi_3+xi_3^2 |) -x2-xxi_2-xi_1 | o11 : Sequence i12 : prune S' QQ[xi ..xi ] 1 4 o12 = ----------------------------------------------------------------------------------------------------- 3 2 2 3 2 2 3 2 3 3 2 (xi xi xi - 3xi xi xi + xi xi + xi - xi , xi xi - 3xi xi xi - xi xi + xi + 3xi xi - 2xi xi ) 1 2 4 1 3 4 1 2 3 1 2 4 2 3 4 1 4 2 3 4 1 2 o12 : QuotientRing
On the author's computer, the second computation takes approximately of 10% more processor time as the first. The user may see by inspection that the outputs of the two computations are isomorphic. More complicated examples, such as the square of the maximal ideal, show a much greater difference.