Computer calculations for "Some singular curves in Mukai's model of
\(\overline{M}_7\)", Section 5
Code 5.9: The flat limit \(X_1\)
We study the flat limit as \(t \rightarrow 1\):
Macaulay2, version 1.20
with packages: ConwayPolynomials, Elimination, IntegralClosure, InverseSystems,
Isomorphism, LLLBases, MinimalPrimes, OnlineLookup, PrimaryDecomposition,
ReesAlgebra, Saturation, TangentCone
i1 : K=QQ;
i2 : t_0=1;
i3 : t_1=1;
i4 : R=K[x_0,x_12,x_13,x_14,x_15,x_23,x_24,x_25,x_34,x_35,x_45,x_1234,x_1235,x_1245,x_1345,x_2345];
i5 : J1 = ideal {x_2345, x_1245, x_1234, t_0*x_25-t_1*x_35-t_0*x_45, x_23-x_25, x_15+x_25-x_35-x_45, x_14, x_12-x_13, x_0+t_1*x_25-t_1*x_35-t_1*x_45, x_24*x_1345, x_13*x_1345, x_45*x_1235+x_25*x_1345, x_34*x_1235-x_25*x_1345, x_24*x_1235, x_13*x_45+x_25*x_45+x_34*x_45+t_1*x_25*x_1345-t_1*x_45*x_1345, (t_0-t_1)*x_34*x_35-t_0*x_34*x_45-t_1*x_35*x_45-t_0*x_45^2-t_0*t_1*x_35*x_1345, x_24*x_35-x_34*x_35+t_1*x_35*x_1345, x_13*x_35+x_25*x_35+x_34*x_35-t_1*x_35*x_1235-t_1*x_35*x_1345, x_25*x_34-x_34*x_35+x_25*x_45+t_1*x_35*x_1345, x_24*x_25-x_34*x_35-x_24*x_45+x_25*x_45+x_34*x_45+t_1*x_25*x_1345+t_1*x_35*x_1345-t_1*x_45*x_1345, x_13*x_25+x_25^2+x_34*x_35-x_25*x_45-t_1*x_25*x_1235-t_1*x_25*x_1345-t_1*x_35*x_1345, x_13*x_24-x_13*x_34, t_0*x_34*x_45*x_1345+t_1*x_35*x_45*x_1345+t_0*x_45^2*x_1345+t_1^2*x_35*x_1345^2, x_25*x_45*x_1345+x_34*x_45*x_1345+t_1*x_25*x_1345^2-t_1*x_45*x_1345^2, t_1*x_35^2*x_1345+t_0*x_35*x_45*x_1345-t_0*t_1*x_35*x_1235*x_1345, x_34*x_35*x_1345-t_1*x_35*x_1345^2, x_25*x_35*x_1345-t_1*x_35*x_1235*x_1345, x_25^2*x_1345+x_34*x_45*x_1345-t_1*x_25*x_1235*x_1345-t_1*x_45*x_1345^2, x_24*x_34*x_45-x_34^2*x_45+x_24*x_45^2-x_34*x_45^2+t_1*x_34*x_45*x_1345+t_1*x_45^2*x_1345, x_35^2*x_1235*x_1345-t_0*x_35*x_1235^2*x_1345-t_0*x_35*x_1235*x_1345^2, x_34^2*x_45*x_1345+x_34*x_45^2*x_1345-t_1*x_34*x_45*x_1345^2-t_1*x_45^2*x_1345^2};
o5 : Ideal of R
i6 : hilbertPolynomial(J1, Projective=>false)
o6 = 12i - 6
o6 : QQ[i]
i7 : J1 == radical J1
o7 = true
i8 : primaryDecomposition(ideal {x_2345, x_1345, x_1245, x_1235, x_1234, x_24-x_34, x_23-x_25, x_15+x_25-x_35-x_45, x_14, x_13+x_25+x_34, x_12+x_25+x_34, x_25*x_34-x_34*x_35+x_25*x_45, t_1*x_25-t_1*x_35-t_1*x_45+x_0, t_0*x_25-t_1*x_35-t_0*x_45, t_1*x_34*x_45+t_1*x_35*x_45+t_1*x_45^2-x_0*x_34-x_0*x_45, t_0*x_34*x_35-t_1*x_34*x_35-t_0*x_34*x_45-t_1*x_35*x_45-t_0*x_45^2, t_0*t_1*x_35-t_1^2*x_35-t_0*x_0})
o8 = {ideal (x , x , x , x , x , x , x - x , x - x , x - x , x ,
2345 1345 1245 1235 1234 45 25 35 24 34 23 35 15
-------------------------------------------------------------------------------------
x , x + x + x , x + x + x , x ), ideal (x , x , x , x , x ,
14 13 34 35 12 34 35 0 2345 1345 1245 1235 1234
-------------------------------------------------------------------------------------
x + x + x , x - x - x , x + x + x , x - x - x , x , x , x ,
34 35 45 25 35 45 24 35 45 23 35 45 15 14 13
-------------------------------------------------------------------------------------
x , x )}
12 0
o8 : List
i9 : L1= new HashTable from {
{0, ideal {x_2345, x_1245, x_1235, x_1234, x_45, x_35, x_25, x_24, x_23, x_15, x_14, x_13, x_12, x_0}},
{1, ideal {x_2345, x_1345, x_1245, x_1235, x_1234, x_45, x_35, x_25, x_23, x_15, x_14, x_13, x_12, x_0}},
{2, ideal {x_2345, x_1345, x_1245, x_1235, x_1234, x_45, x_35, x_25, x_24-x_34, x_23, x_15, x_14, x_12-x_13, x_0}},
{3,ideal(x_2345,x_1345,x_1245,x_1235,x_1234,x_34+x_35+x_45,x_25-x_35-x_45,x_24+x_35+x_45,x_23-x_35-x_45,x_15,x_14,x_13,x_12,x_0)},
{4,ideal(x_2345,x_1345,x_1245,x_1235,x_1234,x_45,x_25-x_35,x_24-x_34,x_23-x_35,x_15,x_14,x_13+x_34+x_35,x_12+x_34+x_35,x_0)},
{5, ideal {x_2345, x_1345, x_1245, x_1234, x_45, x_34, x_24, x_23-x_25, x_15+x_25-x_35, x_14, x_12-x_13, t_1*x_1235-x_13-x_25, x_13*x_25+x_25^2-x_13*x_35-x_25*x_35+x_0*x_1235, t_1*x_25-t_1*x_35+x_0, t_0*x_25-t_1*x_35, t_0*x_13*x_35-t_1*x_13*x_35-t_0*x_0*x_1235+x_0*x_35, t_0*t_1*x_35-t_1^2*x_35-t_0*x_0}},
{6, ideal {x_2345, x_1245, x_1234, x_34+x_45, x_24, x_23-x_25, x_15+x_25-x_35-x_45, x_14, x_13, x_12, t_1*x_1345+x_45, x_45*x_1235+x_25*x_1345, t_1*x_1235-x_25, t_0*x_1235+t_0*x_1345-x_35, x_25*x_45-x_35*x_45-x_45^2-x_0*x_1345, x_25^2-x_25*x_35-x_35*x_45-x_45^2+x_0*x_1235-x_0*x_1345, t_1*x_25-t_1*x_35-t_1*x_45+x_0, t_0*x_25-t_1*x_35-t_0*x_45, t_0*x_35*x_45-t_1*x_35*x_45+t_0*x_0*x_1345, t_0*t_1*x_35-t_1^2*x_35-t_0*x_0}},
{7, ideal {x_2345, x_1245, x_1235+x_1345, x_1234, x_35, x_34+x_45, x_25-x_45, x_24, x_23-x_45, x_15, x_14, x_13, x_12, x_0}},
{8, ideal {x_2345, x_1245, x_1234, x_45, x_35, x_34, x_25, x_24, x_23, x_15, x_14, x_13, x_12, x_0}},
{9, ideal {x_2345, x_1245, x_1235, x_1234, x_25, x_24, x_23, x_15-x_35-x_45, x_14, x_13, x_12, t_1*x_1345-x_34, t_0*x_45-t_1*x_45+x_0, x_34*x_35+x_34*x_45-x_0*x_1345, t_1*x_35+t_1*x_45-x_0}},
{10, ideal {x_2345, x_1345, x_1245, x_1235, x_1234, x_35, x_34+x_45, x_25-x_45, x_23-x_45, x_15, x_14, x_13, x_12, x_0}},
{11, ideal {x_2345, x_1345, x_1245, x_1234, x_45, x_35, x_34, x_25, x_24, x_23, x_15, x_14, x_12-x_13, x_0}}
};
i10 : M1 = matrix {
{0, 1, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0},
{1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0},
{0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1},
{0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 0},
{0, 0, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1},
{0, 0, 0, 0, 0, 1, 0, 1, 0, 1, 0, 0},
{0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 1, 0},
{1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1},
{1, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0},
{0, 1, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0},
{0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 0}
};
12 12
o10 : Matrix ZZ <--- ZZ
i11 : computedAdjacencyMatrix = matrix apply(keys L1, i -> apply(keys L1, j -> if i==j then 0 else dim(L1#i + L1#j)))
o11 = | 0 1 0 0 0 0 0 0 1 1 0 0 |
| 1 0 1 0 0 0 0 0 0 0 1 0 |
| 0 1 0 0 1 0 0 0 0 0 0 1 |
| 0 0 0 0 1 0 0 0 0 1 1 0 |
| 0 0 1 1 0 1 0 0 0 0 0 0 |
| 0 0 0 0 1 0 1 0 0 0 0 1 |
| 0 0 0 0 0 1 0 1 0 1 0 0 |
| 0 0 0 0 0 0 1 0 1 0 1 0 |
| 1 0 0 0 0 0 0 1 0 0 0 1 |
| 1 0 0 1 0 0 1 0 0 0 0 0 |
| 0 1 0 1 0 0 0 1 0 0 0 0 |
| 0 0 1 0 0 1 0 0 1 0 0 0 |
12 12
o11 : Matrix ZZ <--- ZZ
i12 : computedAdjacencyMatrix==M1
o12 = true
i13 : J1 == intersect(values L1)
o13 = true
i14 : P1 = ideal {x_2345,x_1245,x_1234,t_0*x_25-t_1*x_35-t_0*x_45,x_23-x_25,x_15+x_25-x_35-x_45,x_14,x_12-x_13,x_0+t_1*x_25-t_1*x_35-t_1*x_45};
o14 : Ideal of R
i15 : OG510 = ideal({x_0*x_2345-x_23*x_45+x_24*x_35-x_25*x_34,
x_12*x_1345-x_13*x_1245+x_14*x_1235-x_15*x_1234,
x_0*x_1345-x_13*x_45+x_14*x_35-x_15*x_34,
x_12*x_2345-x_23*x_1245+x_24*x_1235-x_25*x_1234,
x_0*x_1245-x_12*x_45+x_14*x_25-x_15*x_24,
x_13*x_2345-x_23*x_1345+x_34*x_1235-x_35*x_1234,
x_0*x_1235-x_12*x_35+x_13*x_25-x_15*x_23,
x_14*x_2345-x_24*x_1345+x_34*x_1245-x_45*x_1234,
x_0*x_1234-x_12*x_34+x_13*x_24-x_14*x_23,
x_15*x_2345-x_25*x_1345+x_35*x_1245-x_45*x_1235});
o15 : Ideal of R
i16 : VIcontainsVJ = (I,J) -> (I+J==J)
o16 = VIcontainsVJ
o16 : FunctionClosure
i17 : VIcontainsVJ(OG510,J1)
o17 = true
i18 : J1 == P1+OG510
o18 = false