Macaulay2 » Documentation
Packages » VersalDeformations :: correctDeformation
next | previous | forward | backward | up | index | toc

correctDeformation -- correct lifting to avoid obstructions at next order



Each element of the sequence (F,R) is a list of matrices in increasing powers of the deformation parameter. (f,r,g,c) should be as in the output of liftDeformation and (M,L)should be as in the output of correctionMatrix. If the latter are omitted, they are replaced by (M,L)=correctionMatrix(f_1,r_1).

correctDeformation perturbs the last entries of f and r such that if possible, the next invocation of liftDeformation will introduce no new terms in the obstruction equations. If SanityCheck is set to true, as is the default, then the algorithm will check that the corrected perturbation really does solve the deformation equation, and terminate with an error if this is not the case.

For example, consider a degenerate twisted cubic curve, see [PS85]:

i1 : S=QQ[x,y,z,w];
i2 : F0=matrix {{x*z,y*z,z^2,x^3}};

             1      4
o2 : Matrix S  <-- S
i3 : (f,r,g,c)=localHilbertScheme(F0,Verbose=>0,HighestOrder=>2,SmartLift=>false);
Warning: calculation terminated since HighestOrder has been reached.
i4 : (liftDeformation(f,r,g,c))_2

o4 = {| t_1t_16             |, | 0                                     |}
      | t_9t_16             |  | -2t_6t_10t_16+3t_10^2t_16-t_8t_11t_16 |
      | -t_4t_16            |  | t_8t_10t_16+2t_3t_11t_16              |
      | -2t_14t_16+t_15t_16 |  | 4t_10t_12t_16+2t_11t_13t_16-t_8t_16^2 |

o4 : List
i5 : (F,R)=correctDeformation(f,r,g,c);
i6 : (liftDeformation(F,R,g,c))_2

o6 = {| t_1t_16             |, 0}
      | t_9t_16             |
      | -t_4t_16            |
      | -2t_14t_16+t_15t_16 |

o6 : List


If the obstruction space is zero, this will generate an error.

Ways to use correctDeformation :

For the programmer

The object correctDeformation is a method function with options.