up previous next
2.2.20 Generic Minors
The following example computes the relations among the 2x2 minors of a generic 2xN matrix for a range of values of N. Note the use of indeterminates with multiple indices.

Example
  Define Minor2(M, I, J)
    Return M[1,I] M[2,J] - M[2,I] M[1,J];
  EndDefine;

  Define Det_SubAlgebra(N)
    M := Mat([[x[I,J] | J In 1..N] | I In 1..2]);
    Cols := (1..N) >< (1..N);
    L := [ y[C[1],C[2]] - Minor2(M, C[1], C[2]) | C In Cols And C[1] < C[2] ];
    Return Ideal(L);
  EndDefine;

  Define Det_SubAlgebra_Print(N)  -- calculate and print relations
    J := Det_SubAlgebra(N);
    PrintLn NewLine, "N = ", N;
    PrintLn "Sub-algebra equations:";
    PrintLn Gens(Elim(x, J))
  EndDefine;
  
  Set Indentation;
  For N := 3 To 5 Do
    S ::= ZZ/(32003)[y[1..(N-1),2..N],x[1..2,1..N]];
    Using S Do
      Det_SubAlgebra_Print(N);
    EndUsing;
  EndFor;

N = 3
Sub-algebra equations:
[
  0]

N = 4
Sub-algebra equations:
[
  2y[1,4]y[2,3] - 2y[1,3]y[2,4] + 2y[1,2]y[3,4]]

N = 5
Sub-algebra equations:
[
  2y[2,5]y[3,4] - 2y[2,4]y[3,5] + 2y[2,3]y[4,5],
  2y[1,5]y[3,4] - 2y[1,4]y[3,5] + 2y[1,3]y[4,5],
  2y[1,5]y[2,4] - 2y[1,4]y[2,5] + 2y[1,2]y[4,5],
  2y[1,5]y[2,3] - 2y[1,3]y[2,5] + 2y[1,2]y[3,5],
  2y[1,4]y[2,3] - 2y[1,3]y[2,4] + 2y[1,2]y[3,4]]

-------------------------------