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]] ------------------------------- ```