Consider a polynomial ring S=ℤ[x0,…,xr], and a quotient Q=Sp/N where N is a homogeneous submodule generated in degrees at most d. Suppose that Qd is free of rank n. We then have a short exact sequence 0→Nd→Sdp→Qd→0 where also Nd is free. Thus, Nd⊗S1→Spd+1→Qd+1→0 is a free presentation of Qd+1. If the basis of Qd can be choosen as a so called Gotzmann set, then Qd+1 is free of rank n if and only if the (n-1)’th Fitting ideal of Qd+1 is zero.
As an example, we consider a quotient Q of S2=ℤ[x0,x1]2 such that Q1 is free of rank 1. As S21=ℤ<xe1,ye1,xe2,ye2> is a free ℤ4-module we have that Q1 is the cokernel of a (1×4)-matrix.
i1 : S=ZZ[x_0,x_1]; |
i2 : R=ZZ[a_1..a_4]; |
i3 : Q1=matrix{{a_1,a_2,a_3,a_4}}
o3 = | a_1 a_2 a_3 a_4 |
1 4
o3 : Matrix R <--- R
|
Suppose that Q1 has a basis given by xe1, corresponding to the 0’th column. We check that this is a Gotzmann set, and calculate a free presentation of Q2.
i4 : gotzmannTest(S^2,1,{0})
o4 = true
|
i5 : Q1=affinePart(Q1,{0})
o5 = | 1 a_2 a_3 a_4 |
1 4
o5 : Matrix R <--- R
|
i6 : N1=gens ker Q1
o6 = {0} | a_2 a_3 a_4 |
{1} | -1 0 0 |
{1} | 0 -1 0 |
{1} | 0 0 -1 |
4 3
o6 : Matrix R <--- R
|
i7 : N2=nextDegree(N1,1,S)
o7 = {-1} | a_2 0 a_3 0 a_4 0 |
{-1} | -1 a_2 0 a_3 0 a_4 |
{0} | 0 -1 0 0 0 0 |
{0} | 0 0 -1 0 0 0 |
{0} | 0 0 0 -1 -1 0 |
{0} | 0 0 0 0 0 -1 |
6 6
o7 : Matrix R <--- R
|
N2 is the matrix corresponding to the map N1⊗S1→S22, so Q2 is the cokernel. We want to calculate the (n-1)’th Fitting ideal of N2 with n=1.
i8 : co1Fitting(N2)
o8 = ideal(a a - a )
2 3 4
o8 : Ideal of R
|
Thus, the obstruction for Q2 to be free of rank 1 is the equation a2a3-a4.
A result is that the Quot scheme of rank n quotients of Op is cut out by a single (n-1)’th Fitting ideal in the Grassmannian of locally free rank n quotients of a push forward of O(d)p for d≥n.
In the case above, we have the Grassmannian Gr(1,4)=ℙ3, and the Quot scheme is given by a (n-1)’th Fitting ideal. All of the above calculations can also be done directly by:
i9 : quotScheme(S^2,1,{0})
o9 = ideal(a a - a )
2 3 4
o9 : Ideal of ZZ[a , a , a , a ]
1 2 3 4
|
We can calculate much bigger examples with these function than with the ordinary Fitting ideal function. As an example, we consider the following with rank 2 quotients of S2.
i10 : S=ZZ[x,y]; |
i11 : R=ZZ[a_1..a_12]; |
i12 : Q2=matrix{toList(a_1..a_6),toList(a_7..a_12)}
o12 = | a_1 a_2 a_3 a_4 a_5 a_6 |
| a_7 a_8 a_9 a_10 a_11 a_12 |
2 6
o12 : Matrix R <--- R
|
i13 : Q2=affinePart(Q2,{0,1})
o13 = | 1 0 a_3 a_4 a_5 a_6 |
| 0 1 a_9 a_10 a_11 a_12 |
2 6
o13 : Matrix R <--- R
|
i14 : K3=nextDegree(gens ker Q2,2,S);
8 8
o14 : Matrix R <--- R
|
i15 : time I=co1Fitting(K3)
-- used 0.00251851 seconds
o15 = ideal (a a + a - a , a a - a , a a + a - a , a a - a )
9 11 5 12 3 11 6 9 10 4 11 3 10 5
o15 : Ideal of R
|
i16 : time J=fittingIdeal(2-1,coker K3);
-- used 0.00740824 seconds
o16 : Ideal of R
|
i17 : I==J o17 = true |
Note that our method is a bit faster for this small example, and for rank 2 quotients of S3=ℤ[x,y]3 the time difference is massive.