Suppose that M has free presentation F→G. universalEmbedding provides the universal map from the input module M into a free module H over the same ring, written as a map u:M →H, such that any map from M to a free R-module, factors uniquely through u. Let u1 be the map u1: G→H induced by composing u with the surjection p: G →M. By definition, the Rees algebra of M is the image of the induced map Sym(u1): Sym(G)→Sym(H), and thus can be computed with symmetricKernel(u1). The map u is computed from the dual of the first syzygy map of the dual of the presentation of M.
We first give a simple example looking at the syzygy matrix of the cube of the maximial ideal of a polynomial ring.
i1 : S = ZZ/101[x,y,z];
|
i2 : FF=res ((ideal vars S)^3);
|
i3 : M=coker (FF.dd_2)
o3 = cokernel {3} | -y 0 0 -z 0 0 0 0 0 0 0 0 0 0 0 |
{3} | x -y 0 0 -z 0 0 0 0 0 0 0 0 0 0 |
{3} | 0 x -y 0 0 0 -z 0 0 0 0 0 0 0 0 |
{3} | 0 0 x 0 0 0 0 0 -z 0 0 0 0 0 0 |
{3} | 0 0 0 x y -y 0 0 0 -z 0 0 0 0 0 |
{3} | 0 0 0 0 0 x y -y 0 0 -z 0 0 0 0 |
{3} | 0 0 0 0 0 0 0 x y 0 0 0 -z 0 0 |
{3} | 0 0 0 0 0 0 0 0 0 x y -y 0 -z 0 |
{3} | 0 0 0 0 0 0 0 0 0 0 0 x y 0 -z |
{3} | 0 0 0 0 0 0 0 0 0 0 0 0 0 x y |
10
o3 : S-module, quotient of S
|
i4 : universalEmbedding M
o4 = | x3 x2y xy2 y3 x2z xyz y2z xz2 yz2 z3 |
o4 : Matrix
|
A more complicated example.
i5 : x = symbol x;
|
i6 : R=QQ[x_1..x_8];
|
i7 : m1=genericMatrix(R,x_1,2,2); m2=genericMatrix(R,x_5,2,2);
2 2
o7 : Matrix R <--- R
2 2
o8 : Matrix R <--- R
|
i9 : m=m1*m2
o9 = | x_1x_5+x_3x_6 x_1x_7+x_3x_8 |
| x_2x_5+x_4x_6 x_2x_7+x_4x_8 |
2 2
o9 : Matrix R <--- R
|
i10 : d1=minors(2,m1); d2=minors(2,m2);
o10 : Ideal of R
o11 : Ideal of R
|
i12 : M=matrix{{0,d1_0,m_(0,0),m_(0,1)}, {0,0,m_(1,0),m_(1,1)}, {0,0,0,d2_0}, {0,0,0,0}}
o12 = | 0 -x_2x_3+x_1x_4 x_1x_5+x_3x_6 x_1x_7+x_3x_8 |
| 0 0 x_2x_5+x_4x_6 x_2x_7+x_4x_8 |
| 0 0 0 -x_6x_7+x_5x_8 |
| 0 0 0 0 |
4 4
o12 : Matrix R <--- R
|
i13 : M=M-(transpose M);
4 4
o13 : Matrix R <--- R
|
i14 : N= coker(res coker transpose M).dd_2
o14 = cokernel {0} | -x_2x_5-x_4x_6 -x_2x_7-x_4x_8 x_6x_7-x_5x_8 0 |
{2} | x_2x_3-x_1x_4 0 x_1x_7+x_3x_8 x_2x_7+x_4x_8 |
{2} | -x_1x_5-x_3x_6 -x_1x_7-x_3x_8 0 -x_6x_7+x_5x_8 |
{2} | 0 x_2x_3-x_1x_4 -x_1x_5-x_3x_6 -x_2x_5-x_4x_6 |
4
o14 : R-module, quotient of R
|
i15 : universalEmbedding(N)
o15 = {-1} | x_1 -x_6 -x_2 -x_8 |
{-1} | x_3 x_5 -x_4 x_7 |
o15 : Matrix
|
Here is an example from the paper "What is the Rees Algebra of a Module" by David Eisenbud, Craig Huneke and Bernd Ulrich, Proc. Am. Math. Soc. 131, 701--708, 2002. The example shows that one cannot, in general, define the Rees algebra of a module by using *any* embedding of that module, even when the module is isomorphic to an ideal; this is the reason for using the map provided by the routine universalEmbedding. Note that the same paper shows that such problems do not arise when the ring is torsion-free as a ZZ-module, or when one takes the natural embedding of the ideal into the ring.
i16 : p = 3;
|
i17 : S = ZZ/p[x,y,z];
|
i18 : R = S/((ideal(x^p,y^p))+(ideal(x,y,z))^(p+1))
o18 = R
o18 : QuotientRing
|
i19 : I = module ideal(z)
o19 = image | z |
1
o19 : R-module, submodule of R
|
As a module (or ideal), Hom(I,R1) is minimally generated by 3 elements, and thus the universal embedding of I into a free module is into R3.
i20 : betti Hom(I,R^1)
0 1
o20 = total: 3 14
0: 3 3
1: . 2
2: . 9
o20 : BettiTally
|
i21 : ui = universalEmbedding I
o21 = | z |
| y |
| x |
o21 : Matrix
|
it is injective:
i22 : kernel ui
o22 = image 0
1
o22 : R-module, submodule of R
|
It is easy to make two other embeddings of I into free modules. First, the natural inclusion of I into R as an ideal is
i23 : inci = map(R^1,I,matrix{{z}})
o23 = | z |
o23 : Matrix
|
i24 : kernel inci
o24 = image 0
1
o24 : R-module, submodule of R
|
and second, the map defined by multiplication by x and y.
i25 : gi = map(R^2, I, matrix{{x},{y}})
o25 = | x |
| y |
o25 : Matrix
|
i26 : kernel gi
o26 = image 0
1
o26 : R-module, submodule of R
|
We can compose ui, inci and gi with a surjection R--> i to get maps u:R1 --> R3, inc: R1 --> R1 and g:R1 --> R2 having image i
i27 : u= map(R^3,R^{-1},ui)
o27 = | z |
| y |
| x |
3 1
o27 : Matrix R <--- R
|
i28 : inc=map(R^1, R^{-1}, matrix{{z}})
o28 = | z |
1 1
o28 : Matrix R <--- R
|
i29 : g=map(R^2, R^{-1}, matrix{{x},{y}})
o29 = | x |
| y |
2 1
o29 : Matrix R <--- R
|
We now form the symmetric kernels of these maps and compare them. Note that since symmetricKernel defines a new ring, we must bring them to the same ring to make the comparison. First the map u, which would be used by reesIdeal:
i30 : A=symmetricKernel u
3 2 2 2 2 2 2
o30 = ideal (z w , y*z w , x*z w , y z*w , x*y*z*w , x z*w , x*y w , x y*w ,
0 0 0 0 0 0 0 0
-----------------------------------------------------------------------
2 2 2 2 2 2 2 2 2 3 3 3 4
z w , y*z*w , x*z*w , y w , x*y*w , x w , z*w , y*w , x*w , w )
0 0 0 0 0 0 0 0 0 0
o30 : Ideal of R[w ]
0
|
Next the inclusion:
i31 : B1=symmetricKernel inc
3 2 2 2 2 2 2
o31 = ideal (z w , y*z w , x*z w , y z*w , x*y*z*w , x z*w , x*y w , x y*w ,
0 0 0 0 0 0 0 0
-----------------------------------------------------------------------
2 2 2 2 2 2 2 2 2 3 3 3 4
z w , y*z*w , x*z*w , y w , x*y*w , x w , z*w , y*w , x*w , w )
0 0 0 0 0 0 0 0 0 0
o31 : Ideal of R[w ]
0
|
i32 : B=(map(ring A, ring B1)) B1
3 2 2 2 2 2 2
o32 = ideal (z w , y*z w , x*z w , y z*w , x*y*z*w , x z*w , x*y w , x y*w ,
0 0 0 0 0 0 0 0
-----------------------------------------------------------------------
2 2 2 2 2 2 2 2 2 3 3 3 4
z w , y*z*w , x*z*w , y w , x*y*w , x w , z*w , y*w , x*w , w )
0 0 0 0 0 0 0 0 0 0
o32 : Ideal of R[w ]
0
|
Finallly, the map g1:
i33 : C1 = symmetricKernel g
3 3 2 2 2 2 2
o33 = ideal (w , z w , y*z w , x*z w , y z*w , x*y*z*w , x z*w , x*y w ,
0 0 0 0 0 0 0 0
-----------------------------------------------------------------------
2 2 2 2 2 2 2 2 2 2
x y*w , z w , y*z*w , x*z*w , y w , x*y*w , x w )
0 0 0 0 0 0 0
o33 : Ideal of R[w ]
0
|
i34 : C=(map(ring A, ring C1)) C1
3 3 2 2 2 2 2
o34 = ideal (w , z w , y*z w , x*z w , y z*w , x*y*z*w , x z*w , x*y w ,
0 0 0 0 0 0 0 0
-----------------------------------------------------------------------
2 2 2 2 2 2 2 2 2 2
x y*w , z w , y*z*w , x*z*w , y w , x*y*w , x w )
0 0 0 0 0 0 0
o34 : Ideal of R[w ]
0
|
The following test yields “true”, as implied by the theorem of Eisenbud, Huneke and Ulrich.
But the following yields “false”, showing that one must take care in general, which inclusion one uses.