The polynomials \(F_{7,1}\) and \(F_{7,2}\) are constructed to be invariant under the action of \(\operatorname{Spin}(10)\) on the half-spin representation \(S^{+}\). We check this below as follows.
Every element of \(\operatorname{SO}(2n)\) may be written as a product of an even number of reflections, and elements of \(\operatorname{Spin}(2n)\) may be expressed as certain words of even length in the Clifford algebra. See for instance Fulton and Harris, Representation Theory, Prop. 20.28 and Exercise 20.32.
We test that \(F_{7,1}\) and \(F_{7,2}\) are invariant under some products of this form. First, we test this for a pair of vectors that are simple enough that the action on \(S^{+}\) can be checked by hand. Then, we test this for some pairs of random vectors.
Recall that for negative indices, the standard basis vector \(e_{-i}\) acts on the Clifford algebra as contracting by \(e_i\), and for positive indices, the standard basis vector \(e_{i}\) acts as wedging by \(e_i\).
Thus, the product \( (e_{-2}+e_{2}) \cdot (e_{-1} + e_{1}) \) acts on the basis of \(S^{+}\) as follows. \[ \begin{array}{lllll} (e_{-2}+e_{2}) \cdot (e_{-1} +e_{1}) \cdot 1& = & (e_{-2}+e_{2}) \cdot e_1 & = & e_2 \wedge e_1 \\ (e_{-2}+e_{2}) \cdot (e_{-1} +e_{1}) \cdot e_1 \wedge e_2 & = & (e_{-2}+e_{2}) \cdot e_2 & = & 1 \\ (e_{-2}+e_{2}) \cdot (e_{-1} +e_{1}) \cdot e_1 \wedge e_3 & = & (e_{-2}+e_{2}) \cdot e_3 & = & e_2 \wedge e_31\\ (e_{-2}+e_{2}) \cdot (e_{-1} +e_{1}) \cdot e_1 \wedge e_4 & = & (e_{-2}+e_{2}) \cdot e_4 & = & e_2 \wedge e_4\\ (e_{-2}+e_{2}) \cdot (e_{-1} +e_{1}) \cdot e_1 \wedge e_5 & = & (e_{-2}+e_{2}) \cdot e_5 & = & e_2 \wedge e_5\\ (e_{-2}+e_{2}) \cdot (e_{-1} +e_{1}) \cdot e_2 \wedge e_3 & = & (e_{-2}+e_{2}) \cdot e_1 \wedge e_2 \wedge e_3 & = & -e_1 \wedge e_3\\ (e_{-2}+e_{2}) \cdot (e_{-1} +e_{1}) \cdot e_2 \wedge e_4 & = & (e_{-2}+e_{2}) \cdot e_1 \wedge e_2 \wedge e_4 & = & -e_1 \wedge e_4\\ (e_{-2}+e_{2}) \cdot (e_{-1} +e_{1}) \cdot e_2 \wedge e_5 & = & (e_{-2}+e_{2}) \cdot e_1 \wedge e_2 \wedge e_5 & = & -e_1 \wedge e_5\\ (e_{-2}+e_{2}) \cdot (e_{-1} +e_{1}) \cdot e_3 \wedge e_4 & = & (e_{-2}+e_{2}) \cdot e_1 \wedge e_3 \wedge e_4 & = & e_2 \wedge e_1 \wedge e_3 \wedge e_4\\ (e_{-2}+e_{2}) \cdot (e_{-1} +e_{1}) \cdot e_3 \wedge e_5 & = & (e_{-2}+e_{2}) \cdot e_1 \wedge e_3 \wedge e_5 & = & e_2 \wedge e_1 \wedge e_3 \wedge e_5\\ (e_{-2}+e_{2}) \cdot (e_{-1} +e_{1}) \cdot e_4 \wedge e_5 & = & (e_{-2}+e_{2}) \cdot e_1 \wedge e_4 \wedge e_5 & = & e_2 \wedge e_1 \wedge e_4\wedge e_5\\ (e_{-2}+e_{2}) \cdot (e_{-1} +e_{1}) \cdot e_1 \wedge e_2 \wedge e_3 \wedge e_4 & = & (e_{-2}+e_{2}) \cdot e_2 \wedge e_3 \wedge e_4 & = & e_3 \wedge e_4\\ (e_{-2}+e_{2}) \cdot (e_{-1} +e_{1}) \cdot e_1 \wedge e_2 \wedge e_3 \wedge e_5 & = & (e_{-2}+e_{2}) \cdot e_2 \wedge e_3 \wedge e_5 & = & e_3 \wedge e_5\\ (e_{-2}+e_{2}) \cdot (e_{-1} +e_{1}) \cdot e_1 \wedge e_2 \wedge e_4 \wedge e_5 & = & (e_{-2}+e_{2}) \cdot e_2 \wedge e_4 \wedge e_5 & = & e_4 \wedge e_5\\ (e_{-2}+e_{2}) \cdot (e_{-1} +e_{1}) \cdot e_1 \wedge e_3 \wedge e_4 \wedge e_5 & = & (e_{-2}+e_{2}) \cdot e_3 \wedge e_4 \wedge e_5 & = & e_2 \wedge e_3 \wedge e_4 \wedge e_5\\ (e_{-2}+e_{2}) \cdot (e_{-1} +e_{1}) \cdot e_2 \wedge e_3 \wedge e_4 \wedge e_5 & = & (e_{-2}+e_{2}) \cdot e_1 \wedge e_2 \wedge e_3 \wedge e_4 \wedge e_5 & = & -e_1 \wedge e_3 \wedge e_4 \wedge e_5 \end{array} \] This matches the matrix \(g_1\) computed in the Macaulay2 session below. First, we load some files and and functions that will be useful.Macaulay2, version 1.25.11
Type "help" to see useful commands
i1 : load "MukaiModels.m2";
i2 : load "Invariant_Polynomials_for_Mukai_Models.m2";
i3 : matrixFromHyperplaneEquations = (L) -> (
R:=ring(L_0);
eqnMatrix:=matrix apply(L, f -> apply(numgens R, i -> coefficient(R_i,f)));
transpose gens ker eqnMatrix
);
i4 : Q = v -> sum apply(5, i -> v_i*v_(i+5));
i5 : FullContractAndWedgeList=join(apply(5, i -> contractByemk(i+1,wedgeBasis,wedgeBasis,QQ)),apply(5, i -> wedgeByek(i+1,wedgeBasis,wedgeBasis,QQ)));
i6 : Splusindices=apply(2^4, i -> i);
We enter \(e_{-2}+e_{2} \) and \(e_{-1} +e_{1}\) as vectors, and compute the element \(g_1 \in \operatorname{Spin}(10)\).
i7 : ReflectionVectorList1 = {{0,1,0,0,0, 0,1,0,0,0},{1,0,0,0,0,1,0,0,0,0}};
i8 : all(ReflectionVectorList1, v -> Q(v)==1)
o8 = true
i9 : g1 = actionOnSplus(ReflectionVectorList1,FullContractAndWedgeList,Splusindices)
o9 = | 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
| -1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
| 0 0 0 0 0 -1 0 0 0 0 0 0 0 0 0 0 |
| 0 0 0 0 0 0 -1 0 0 0 0 0 0 0 0 0 |
| 0 0 0 0 0 0 0 -1 0 0 0 0 0 0 0 0 |
| 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 |
| 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 |
| 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 |
| 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 |
| 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 |
| 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 |
| 0 0 0 0 0 0 0 0 -1 0 0 0 0 0 0 0 |
| 0 0 0 0 0 0 0 0 0 -1 0 0 0 0 0 0 |
| 0 0 0 0 0 0 0 0 0 0 -1 0 0 0 0 0 |
| 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -1 |
| 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 |
16 16
o9 : Matrix QQ <-- QQ
We check that this gives an automorphism of the orthogonal Grassmannian.
i10 : S=QQ[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];
i11 : 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};
o11 : Ideal of S
i12 : F1 = map(S,S,transpose g1);
o12 : RingMap S <-- S
i13 : F1(OG510)==OG510
o13 = true
Next, we choose a random matrix \(M_{7,1} \in \operatorname{Mat}_{7 \times 16}\) and consider the point in \(\operatorname{Gr}(7,16)\) corresponding to its row space.
We compute the value of \(F_{7,1}\) on \(M_{7,1}\) and \(g_1.M_{7,1}\).
i14 : M71 = matrix {{-10, -10, 10, 1, -8, 10, 9, 9, -5, 3, -1, 3, -3, 6, 6, 9}, {9, 9, -3, 1, -4, -5, -4, 9, -5, -1, 0, -7, 0, 2, -9, -9}, {7, 3, -6, 9, -5, -3, 9, 5, 0, -5, 4, -6, 3, 9, -2, 8}, {-1, 2, -9, -4, 9, -5, -1, 7, 10, -1, 10, -3, -8, -7, -7, -5}, {-5, 10, 3, -5, 4, -8, 5, -7, -4, -2, 1, 0, 0, 10, -10, 6}, {-4, -8, 8, 9, 0, 3, 4, -6, 8, -8, 0, -9, 3, 0, 5, -8}, {-8, -3, 6, 2, 6, 9, -5, -3, 5, 2, 1, 9, -1, -3, -4, -9}}
o14 = | -10 -10 10 1 -8 10 9 9 -5 3 -1 3 -3 6 6 9 |
| 9 9 -3 1 -4 -5 -4 9 -5 -1 0 -7 0 2 -9 -9 |
| 7 3 -6 9 -5 -3 9 5 0 -5 4 -6 3 9 -2 8 |
| -1 2 -9 -4 9 -5 -1 7 10 -1 10 -3 -8 -7 -7 -5 |
| -5 10 3 -5 4 -8 5 -7 -4 -2 1 0 0 10 -10 6 |
| -4 -8 8 9 0 3 4 -6 8 -8 0 -9 3 0 5 -8 |
| -8 -3 6 2 6 9 -5 -3 5 2 1 9 -1 -3 -4 -9 |
7 16
o14 : Matrix ZZ <-- ZZ
i15 : F71(M71)
o15 = -255458271033377715965762854032954123600
o15 : QQ
i16 : F71(transpose(g1*transpose(M71)))
o16 = -255458271033377715965762854032954123600
o16 : QQ
Next, we check that moving the point in \(\operatorname{Gr}(7,16)\) corresponding to the cuspidal curve of genus 7 with heptagonal symmetry does not change the value of \(F_{7,1}\).
i17 : R=QQ[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];
i18 : LCusp7 = {x_13, x_23+(5/3)*x_15, x_24, x_34-5*x_25, x_45-(4/3)*x_35, x_1245-(9/8)*x_1235, x_1345+(1/2)*x_12, x_2345+(2/15)*x_14,x_1234-1/30*x_0};
i19 : MCusp7 = matrixFromHyperplaneEquations LCusp7
o19 = | 0 0 0 0 -3/5 1 0 0 0 0 0 0 0 0 0 0 |
| 0 0 0 0 0 0 0 1/5 1 0 0 0 0 0 0 0 |
| 0 0 0 0 0 0 0 0 0 3/4 1 0 0 0 0 0 |
| 30 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 |
| 0 0 0 0 0 0 0 0 0 0 0 0 8/9 1 0 0 |
| 0 -2 0 0 0 0 0 0 0 0 0 0 0 0 1 0 |
| 0 0 0 -15/2 0 0 0 0 0 0 0 0 0 0 0 1 |
7 16
o19 : Matrix QQ <-- QQ
i20 : F71(MCusp7)
3038765625
o20 = ----------
2
o20 : QQ
i21 : F71(transpose(g1*transpose(MCusp7)))
3038765625
o21 = ----------
2
o21 : QQ
Finally, we randomly chose some additional vectors with norms in \( \mathbb{Q}\). We use these to create two additional elements \(g_2\) and \(g_3\) in \(\operatorname{Spin}(10)\) and check that \(F_{7,1}\) is invariant under these elements as well.
i22 : ReflectionVectorList2 = {1/12*{4, 8, 3, -8, -10, 1, 10, 0, 0, -6}, 1/3*{-1, 5, -5, -1, 10, 3, 6, -5, 3, -4}};
i23 : all(ReflectionVectorList2, v -> Q(v)==1)
o23 = true
i24 : g2 = actionOnSplus(ReflectionVectorList2,FullContractAndWedgeList,Splusindices)
o24 = | 61/36 -7/9 17/36 1/3 -5/6 55/36 -8/9 -65/18 43/36 5/9 5/2 0 0 0 0 0 |
| -2/3 25/18 -17/9 19/18 40/9 7/18 -23/36 -10/9 0 0 0 43/36 5/9 5/2 0 0 |
| -5/36 10/9 7/4 -10/9 -25/18 -19/36 0 0 -23/36 -10/9 0 8/9 65/18 0 5/2 0 |
| 1/12 -2/3 -1/4 2 5/6 0 -19/36 0 -7/18 0 -10/9 55/36 0 65/18 -5/9 0 |
| 7/18 1/18 7/6 -13/18 -13/9 0 0 -19/36 0 -7/18 23/36 0 55/36 -8/9 43/36 0 |
| -25/18 -5/9 -17/18 0 0 13/6 -10/9 -25/18 -19/18 -40/9 0 1/3 -5/6 0 0 5/2 |
| 5/6 1/3 0 -17/18 0 -1/4 29/12 5/6 -17/9 0 -40/9 -17/36 0 -5/6 0 -5/9 |
| -1/9 -11/18 0 0 -17/18 7/6 -13/18 -37/36 0 -17/9 19/18 0 -17/36 -1/3 0 43/36 |
| 0 0 1/3 5/9 0 2/3 10/9 0 25/9 5/6 25/18 -7/9 0 0 -5/6 -65/18 |
| -5/6 0 -11/18 0 5/9 -1/18 0 10/9 -13/18 -2/3 -10/9 0 -7/9 0 -1/3 8/9 |
| 1/2 0 0 -11/18 -1/3 0 -1/18 -2/3 -7/6 -1/4 -5/12 0 0 -7/9 17/36 55/36 |
| 0 0 -5/6 -25/18 0 1/12 5/36 0 -2/3 0 0 89/36 5/6 25/18 40/9 -10/9 |
| 0 -5/6 1/9 0 -25/18 7/18 0 5/36 0 -2/3 0 -13/18 -35/36 -10/9 -19/18 23/36 |
| 0 1/2 0 1/9 5/6 0 7/18 -1/12 0 0 -2/3 -7/6 -1/4 -13/18 -17/9 7/18 |
| 0 0 1/2 5/6 0 0 0 0 7/18 -1/12 -5/36 1/18 2/3 10/9 -13/36 -19/36 |
| 0 0 0 0 0 1/2 5/6 0 -1/9 -5/6 -25/18 -11/18 -1/3 -5/9 -17/18 1/18 |
16 16
o24 : Matrix QQ <-- QQ
i25 : F2 = map(S,S,transpose g2);
o25 : RingMap S <-- S
i26 : F2(OG510)==OG510
o26 = true
i27 : F71(transpose(g2*transpose(M71)))
o27 = -255458271033377715965762854032954123600
o27 : QQ
i28 : F71(transpose(g2*transpose(MCusp7)))
3038765625
o28 = ----------
2
o28 : QQ
i29 : ReflectionVectorList3 = {1/6*{-1, -4, 6, 10, -1, 1, 8, 10, 0, -9}, 1/6*{-3, 8, 0, 9, 1, -3, -1, -3, 5, -10}};
i30 : all(ReflectionVectorList3, v -> Q(v)==1)
o30 = true
i31 : g3 = actionOnSplus(ReflectionVectorList3,FullContractAndWedgeList,Splusindices)
o31 = | 49/36 5/9 -1/2 -7/12 1/9 4/3 29/9 -1/9 -3/2 -1/6 -19/36 0 0 0 0 0 |
| 23/36 103/36 1/6 41/18 7/36 -1/2 -13/12 1/18 0 0 0 -3/2 -1/6 -19/36 0 0 |
| 3/4 17/9 61/36 10/3 7/36 -1/9 0 0 -13/12 1/18 0 -29/9 1/9 0 -19/36 0 |
| 5/36 5/9 -5/6 -7/36 5/36 0 -1/9 0 1/2 0 1/18 4/3 0 1/9 1/6 0 |
| -37/36 -28/9 5/3 19/36 2/3 0 0 -1/9 0 1/2 13/12 0 4/3 29/9 -3/2 0 |
| -7/18 11/12 -25/36 0 0 127/36 10/3 7/36 -41/18 -7/36 0 -7/12 1/9 0 0 -19/36 |
| 10/9 -5/36 0 -25/36 0 -5/6 59/36 5/36 1/6 0 -7/36 1/2 0 1/9 0 1/6 |
| -89/36 -17/36 0 0 -25/36 5/3 19/36 5/2 0 1/6 41/18 0 1/2 7/12 0 -3/2 |
| 25/18 0 -5/36 -11/12 0 -5/9 17/9 0 17/36 5/36 -7/36 5/9 0 0 1/9 -1/9 |
| -127/36 0 -17/36 0 -11/12 28/9 0 17/9 19/36 4/3 10/3 0 5/9 0 7/12 -29/9 |
| 5/4 0 0 -17/36 5/36 0 28/9 5/9 -5/3 -5/6 -5/9 0 0 5/9 -1/2 4/3 |
| 0 25/18 -10/9 -7/18 0 5/36 -3/4 0 23/36 0 0 71/36 5/36 -7/36 7/36 1/18 |
| 0 -127/36 89/36 0 -7/18 -37/36 0 -3/4 0 23/36 0 19/36 17/6 10/3 -41/18 13/12 |
| 0 5/4 0 89/36 10/9 0 -37/36 -5/36 0 0 23/36 -5/3 -5/6 17/18 1/6 -1/2 |
| 0 0 5/4 127/36 25/18 0 0 0 -37/36 -5/36 3/4 -28/9 -5/9 17/9 -2/9 -1/9 |
| 0 0 0 0 0 5/4 127/36 25/18 -89/36 -10/9 -7/18 -17/36 5/36 11/12 -25/36 29/18 |
16 16
o31 : Matrix QQ <-- QQ
i32 : F3 = map(S,S,transpose g3);
o32 : RingMap S <-- S
i33 : F3(OG510)==OG510
o33 = true
i34 : F71(transpose(g3*transpose(M71)))
o34 = -255458271033377715965762854032954123600
o34 : QQ
i35 : F71(transpose(g3*transpose(MCusp7)))
3038765625
o35 = ----------
2
o35 : QQ
i36 : M72 = matrix {{-10, -10, 10, 1, -8, 10, 9, 9, -5, 3, -1, 3, -3, 6, 6, 9}, {9, 9, -3, 1, -4, -5, -4, 9, -5, -1, 0, -7, 0, 2, -9, -9}, {7, 3, -6, 9, -5, -3, 9, 5, 0, -5, 4, -6, 3, 9, -2, 8}, {-1, 2, -9, -4, 9, -5, -1, 7, 10, -1, 10, -3, -8, -7, -7, -5}, {-5, 10, 3, -5, 4, -8, 5, -7, -4, -2, 1, 0, 0, 10, -10, 6}, {-4, -8, 8, 9, 0, 3, 4, -6, 8, -8, 0, -9, 3, 0, 5, -8}, {-8, -3, 6, 2, 6, 9, -5, -3, 5, 2, 1, 9, -1, -3, -4, -9}, {-2, 9, -9, -6, 7, 2, 0, 0, 2, 3, -7, -6, -1, -2, 3, 3}}
o36 = | -10 -10 10 1 -8 10 9 9 -5 3 -1 3 -3 6 6 9 |
| 9 9 -3 1 -4 -5 -4 9 -5 -1 0 -7 0 2 -9 -9 |
| 7 3 -6 9 -5 -3 9 5 0 -5 4 -6 3 9 -2 8 |
| -1 2 -9 -4 9 -5 -1 7 10 -1 10 -3 -8 -7 -7 -5 |
| -5 10 3 -5 4 -8 5 -7 -4 -2 1 0 0 10 -10 6 |
| -4 -8 8 9 0 3 4 -6 8 -8 0 -9 3 0 5 -8 |
| -8 -3 6 2 6 9 -5 -3 5 2 1 9 -1 -3 -4 -9 |
| -2 9 -9 -6 7 2 0 0 2 3 -7 -6 -1 -2 3 3 |
8 16
o36 : Matrix ZZ <-- ZZ
i37 : LTD7 = {x_13, x_23+(5/3)*x_15, x_24, x_34-5*x_25, x_45-(4/3)*x_35, x_1245-(9/8)*x_1235, x_1345+(1/2)*x_12, x_2345+(2/15)*x_14};
i38 : MTD7 = matrixFromHyperplaneEquations LTD7
o38 = | 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |
| 0 0 0 0 -3/5 1 0 0 0 0 0 0 0 0 0 0 |
| 0 0 0 0 0 0 0 1/5 1 0 0 0 0 0 0 0 |
| 0 0 0 0 0 0 0 0 0 3/4 1 0 0 0 0 0 |
| 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 |
| 0 0 0 0 0 0 0 0 0 0 0 0 8/9 1 0 0 |
| 0 -2 0 0 0 0 0 0 0 0 0 0 0 0 1 0 |
| 0 0 0 -15/2 0 0 0 0 0 0 0 0 0 0 0 1 |
8 16
o38 : Matrix QQ <-- QQ
i39 : F72(M72)
o39 = 17163114907498626573888
o39 : QQ
i40 : F72(transpose(g1*transpose(M72)))
o40 = 17163114907498626573888
o40 : QQ
i41 : F72(transpose(g2*transpose(M72)))
o41 = 17163114907498626573888
o41 : QQ
i42 : F72(transpose(g3*transpose(M72)))
o42 = 17163114907498626573888
o42 : QQ
i43 : F72(MTD7)
665
o43 = ---
2
o43 : QQ
i44 : F72(transpose(g1*transpose(MTD7)))
665
o44 = ---
2
o44 : QQ
i45 : F72(transpose(g2*transpose(MTD7)))
665
o45 = ---
2
o45 : QQ
i46 : F72(transpose(g3*transpose(MTD7)))
665
o46 = ---
2
o46 : QQ