Macaulay2 » Documentation
Packages » ReesAlgebra :: expectedReesIdeal
next | previous | forward | backward | up | index | toc

expectedReesIdeal -- symmetric algebra ideal plus jacobian dual



Let M be an R-module with g generators and free presentation phi: R^h \to R^g. The symmetric algebra of M can be written as R[T_1,\dots,T_g]/J, where J is the ideal generated by the entries of the 1 x h matrix T*m, where T = (T_1..T_g). If the entries of m are all contained in an ideal (X_1..X_n) (for example, when m is a minimal presentation and the X_i generate the maximal ideal, there is a matrix psi: R[Z]^h \to R[Z]^n such that T*phi = X*psi. Under reasonable hypotheses (eg when R is a domain) the relation X*psi = 0 in the Rees algebra implies that the n x n minors of psi are 0. Thus these minors lie in the ideal defining the Rees algebra. The expectedReesIdeal is the sum of the ideals (T*phi) and the ideal of nxn minors of psi. Under particularly good circumstances this sum is known to be equal to the ideal of the Rees algebra. More generally, it may speed computations of reesIdeal to start with this sum rather than with the ideal T*phi, as in the following example. (This can be turned off with the Jacobian=>false option.)

The term 'Expected Rees Ideal' for the sum of of the ideal of the symmetric algebra of I with the ideal of maximal minors of the Jacobian dual matrix of a presentation of I is derived from the paper "Rees Algebras of Ideals of Low Codimension", Proc. Am. Math. Soc. 1996 of Colley and Ulrich. Building on the paper "Ideals with Expected Reduction Number", Am. J. Math 1996, they prove that this ideal is in fact equal to the ideal of the Rees algebra of I when I is a codimension 2 perfect ideal whose Hilbert-Burch matrix has a special form. See jacobianDual for an example.

i1 : setRandomSeed 0

o1 = 0
i2 : n = 5

o2 = 5
i3 : S = ZZ/101[x_0..x_(n-2)];
i4 : M1 = random(S^(n-1),S^{n-1:-2});

             4      4
o4 : Matrix S  <-- S
i5 : M = M1||vars S

o5 = | 24x_0^2-36x_0x_1+19x_1^2-30x_0x_2+19x_1x_2-29x_2^2-29x_0x_3-10x_1x_3
     | -29x_0^2-24x_0x_1+39x_1^2-38x_0x_2+21x_1x_2+19x_2^2-16x_0x_3+34x_1x_
     | -18x_0^2-13x_0x_1-28x_1^2-43x_0x_2-47x_1x_2+2x_2^2-15x_0x_3+38x_1x_3
     | 45x_0^2-34x_0x_1+47x_1^2-48x_0x_2+19x_1x_2+7x_2^2-47x_0x_3-16x_1x_3+
     | x_0                                                                 
     -8x_2x_3-22x_3^2   39x_0^2+43x_0x_1+48x_1^2-17x_0x_2+36x_1x_2+11x_2
     3-47x_2x_3-39x_3^2 40x_0^2+11x_0x_1+x_1^2+46x_0x_2-3x_1x_2-47x_2^2-
     +16x_2x_3+22x_3^2  2x_0^2+29x_0x_1-37x_1^2-47x_0x_2-13x_1x_2+30x_2^
     15x_2x_3-23x_3^2   27x_0^2-22x_0x_1-32x_1^2+32x_0x_2-20x_1x_2-30x_2
     _3-39x_3^2       -49x_0^2-13x_0x_1-47x_1^2+4x_0x_2+27x_1x_2+37x_2^2
     -11x_2x_3-8x_3^2 -39x_0^2-31x_0x_1-48x_1^2-48x_0x_2+30x_1x_2+47x_2^
     -28x_2x_3-6x_3^2 -18x_0^2+46x_0x_1-22x_1^2+x_0x_2+10x_1x_2+30x_2^2+
     2x_2x_3-41x_3^2  -13x_0^2+3x_0x_1+8x_1^2-41x_0x_2-29x_1x_2-46x_2^2+
     +30x_0x_3-40x_1x_3-35x_2x_3-31x_3^2  |
     2-29x_0x_3-37x_1x_3-49x_2x_3+28x_3^2 |
     40x_0x_3+7x_1x_3+13x_2x_3-17x_3^2    |
     8x_0x_3+30x_1x_3+49x_2x_3-18x_3^2    |

             5      4
o5 : Matrix S  <-- S
i6 : I = minors(n-1, M);

o6 : Ideal of S
i7 : time rI = expectedReesIdeal I; -- n= 5 case takes < 1 sec.
 -- used 1.6683s (cpu); 1.35337s (thread); 0s (gc)

o7 : Ideal of S[w ..w ]
                 0   4
i8 : kk = ZZ/101;
i9 : S = kk[x,y,z];
i10 : m = random(S^3, S^{4:-2});

              3      4
o10 : Matrix S  <-- S
i11 : I = minors(3,m);

o11 : Ideal of S
i12 : time reesIdeal (I, I_0);
 -- used 2.60957s (cpu); 2.18301s (thread); 0s (gc)

o12 : Ideal of S[w ..w ]
                  0   3
i13 : time reesIdeal (I, I_0, Jacobian =>false);
 -- used 2.57532s (cpu); 2.24784s (thread); 0s (gc)

o13 : Ideal of S[w ..w ]
                  0   3

See also

Ways to use expectedReesIdeal :

For the programmer

The object expectedReesIdeal is a method function.