GAP 4.8.9 installation with standard packages -- copy to your CoCalc project to get it
1[1X3 [33X[0;0YThe Ring Table[133X[101X234[1X3.1 [33X[0;0YAn Example for a Ring Table - Singular[133X[101X56[33X[0;0Ytodo: introductory text, mention: transposed matrices, the macros, refer to7the philosophy[133X89[1X3.1-1 BasisOfRowModule[101X1011[29X[2XBasisOfRowModule[102X( [3XM[103X ) [32X function1213[33X[0;0YThis is the entry of the [5Xhomalg[105X table, which calls the corresponding macro14[2XBasisOfRowModule[102X ([14X3.1-2[114X) inside the computer algebra system.[133X1516[4X[32X Code [32X[104X17[4XBasisOfRowModule :=[104X18[4X function( M )[104X19[4X local N;[104X20[4X [104X21[4X N := HomalgVoidMatrix([104X22[4X "unknown_number_of_rows",[104X23[4X NrColumns( M ),[104X24[4X HomalgRing( M )[104X25[4X );[104X26[4X [104X27[4X homalgSendBlocking( [104X28[4X [ "matrix ", N, " = BasisOfRowModule(", M, ")" ],[104X29[4X "need_command",[104X30[4X HOMALG_IO.Pictograms.BasisOfModule[104X31[4X );[104X32[4X [104X33[4X return N;[104X34[4X [104X35[4X end,[104X36[4X[32X[104X3738[1X3.1-2 BasisOfRowModule[101X3940[29X[2XBasisOfRowModule[102X( [3XM[103X ) [32X function4142[4X[32X Code [32X[104X43[4X BasisOfRowModule := "\n\[104X44[4Xproc BasisOfRowModule (matrix M)\n\[104X45[4X{\n\[104X46[4X return(std(M));\n\[104X47[4X}\n\n",[104X48[4X[32X[104X4950[1X3.1-3 BasisOfColumnModule[101X5152[29X[2XBasisOfColumnModule[102X( [3XM[103X ) [32X function5354[33X[0;0YThis is the entry of the [5Xhomalg[105X table, which calls the corresponding macro55[2XBasisOfColumnModule[102X ([14X3.1-4[114X) inside the computer algebra system.[133X5657[4X[32X Code [32X[104X58[4XBasisOfColumnModule :=[104X59[4X function( M )[104X60[4X local N;[104X61[4X [104X62[4X N := HomalgVoidMatrix([104X63[4X NrRows( M ),[104X64[4X "unknown_number_of_columns",[104X65[4X HomalgRing( M )[104X66[4X );[104X67[4X [104X68[4X homalgSendBlocking([104X69[4X [ "matrix ", N, " = BasisOfColumnModule(", M, ")" ],[104X70[4X "need_command",[104X71[4X HOMALG_IO.Pictograms.BasisOfModule[104X72[4X );[104X73[4X [104X74[4X return N;[104X75[4X [104X76[4X end,[104X77[4X[32X[104X7879[1X3.1-4 BasisOfColumnModule[101X8081[29X[2XBasisOfColumnModule[102X( [3XM[103X ) [32X function8283[4X[32X Code [32X[104X84[4X BasisOfColumnModule := "\n\[104X85[4Xproc BasisOfColumnModule (matrix M)\n\[104X86[4X{\n\[104X87[4X return(Involution(BasisOfRowModule(Involution(M))));\n\[104X88[4X}\n\n",[104X89[4X[32X[104X9091[1X3.1-5 DecideZeroRows[101X9293[29X[2XDecideZeroRows[102X( [3XA[103X, [3XB[103X ) [32X function9495[33X[0;0YThis is the entry of the [5Xhomalg[105X table, which calls the corresponding macro96[2XDecideZeroRows[102X ([14X3.1-6[114X) inside the computer algebra system.[133X9798[4X[32X Code [32X[104X99[4XDecideZeroRows :=[104X100[4X function( A, B )[104X101[4X local N;[104X102[4X [104X103[4X N := HomalgVoidMatrix([104X104[4X NrRows( A ),[104X105[4X NrColumns( A ),[104X106[4X HomalgRing( A )[104X107[4X );[104X108[4X [104X109[4X homalgSendBlocking( [104X110[4X [ "matrix ", N, " = DecideZeroRows(", A, B, ")" ],[104X111[4X "need_command",[104X112[4X HOMALG_IO.Pictograms.DecideZero[104X113[4X );[104X114[4X [104X115[4X return N;[104X116[4X [104X117[4X end,[104X118[4X[32X[104X119120[1X3.1-6 DecideZeroRows[101X121122[29X[2XDecideZeroRows[102X( [3XA[103X, [3XB[103X ) [32X function123124[4X[32X Code [32X[104X125[4X DecideZeroRows := "\n\[104X126[4Xproc DecideZeroRows (matrix A, module B)\n\[104X127[4X{\n\[104X128[4X attrib(B,\"isSB\",1);\n\[104X129[4X return(reduce(A,B));\n\[104X130[4X}\n\n",[104X131[4X[32X[104X132133[1X3.1-7 DecideZeroColumns[101X134135[29X[2XDecideZeroColumns[102X( [3XA[103X, [3XB[103X ) [32X function136137[33X[0;0YThis is the entry of the [5Xhomalg[105X table, which calls the corresponding macro138[2XDecideZeroColumns[102X ([14X3.1-8[114X) inside the computer algebra system.[133X139140[4X[32X Code [32X[104X141[4XDecideZeroColumns :=[104X142[4X function( A, B )[104X143[4X local N;[104X144[4X [104X145[4X N := HomalgVoidMatrix([104X146[4X NrRows( A ),[104X147[4X NrColumns( A ),[104X148[4X HomalgRing( A )[104X149[4X );[104X150[4X [104X151[4X homalgSendBlocking([104X152[4X [ "matrix ", N, " = DecideZeroColumns(", A, B, ")" ],[104X153[4X "need_command",[104X154[4X HOMALG_IO.Pictograms.DecideZero[104X155[4X );[104X156[4X [104X157[4X return N;[104X158[4X [104X159[4X end,[104X160[4X[32X[104X161162[1X3.1-8 DecideZeroColumns[101X163164[29X[2XDecideZeroColumns[102X( [3XA[103X, [3XB[103X ) [32X function165166[4X[32X Code [32X[104X167[4X DecideZeroColumns := "\n\[104X168[4Xproc DecideZeroColumns (matrix A, matrix B)\n\[104X169[4X{\n\[104X170[4X return(Involution(DecideZeroRows(Involution(A),Involution(B))));\n\[104X171[4X}\n\n",[104X172[4X[32X[104X173174[1X3.1-9 SyzygiesGeneratorsOfRows[101X175176[29X[2XSyzygiesGeneratorsOfRows[102X( [3XM[103X ) [32X function177178[33X[0;0YThis is the entry of the [5Xhomalg[105X table, which calls the corresponding macro179[2XSyzygiesGeneratorsOfRows[102X ([14X3.1-10[114X) inside the computer algebra system.[133X180181[4X[32X Code [32X[104X182[4XSyzygiesGeneratorsOfRows :=[104X183[4X function( M )[104X184[4X local N;[104X185[4X [104X186[4X N := HomalgVoidMatrix([104X187[4X "unknown_number_of_rows",[104X188[4X NrRows( M ),[104X189[4X HomalgRing( M )[104X190[4X );[104X191[4X [104X192[4X homalgSendBlocking([104X193[4X [ "matrix ", N, " = SyzygiesGeneratorsOfRows(", M, ")" ],[104X194[4X "need_command",[104X195[4X HOMALG_IO.Pictograms.SyzygiesGenerators[104X196[4X );[104X197[4X [104X198[4X return N;[104X199[4X [104X200[4X end,[104X201[4X[32X[104X202203[1X3.1-10 SyzygiesGeneratorsOfRows[101X204205[29X[2XSyzygiesGeneratorsOfRows[102X( [3XM[103X ) [32X function206207[4X[32X Code [32X[104X208[4X SyzygiesGeneratorsOfRows := "\n\[104X209[4Xproc SyzygiesGeneratorsOfRows (matrix M)\n\[104X210[4X{\n\[104X211[4X return(SyzForHomalg(M));\n\[104X212[4X}\n\n",[104X213[4X[32X[104X214215[1X3.1-11 SyzygiesGeneratorsOfColumns[101X216217[29X[2XSyzygiesGeneratorsOfColumns[102X( [3XM[103X ) [32X function218219[33X[0;0YThis is the entry of the [5Xhomalg[105X table, which calls the corresponding macro220[2XSyzygiesGeneratorsOfColumns[102X ([14X3.1-12[114X) inside the computer algebra system.[133X221222[4X[32X Code [32X[104X223[4XSyzygiesGeneratorsOfColumns :=[104X224[4X function( M )[104X225[4X local N;[104X226[4X [104X227[4X N := HomalgVoidMatrix([104X228[4X NrColumns( M ),[104X229[4X "unknown_number_of_columns",[104X230[4X HomalgRing( M )[104X231[4X );[104X232[4X [104X233[4X homalgSendBlocking([104X234[4X [ "matrix ", N, " = SyzygiesGeneratorsOfColumns(", M, ")" ],[104X235[4X "need_command",[104X236[4X HOMALG_IO.Pictograms.SyzygiesGenerators[104X237[4X );[104X238[4X [104X239[4X return N;[104X240[4X [104X241[4X end,[104X242[4X[32X[104X243244[1X3.1-12 SyzygiesGeneratorsOfColumns[101X245246[29X[2XSyzygiesGeneratorsOfColumns[102X( [3XM[103X ) [32X function247248[4X[32X Code [32X[104X249[4X SyzygiesGeneratorsOfColumns := "\n\[104X250[4Xproc SyzygiesGeneratorsOfColumns (matrix M)\n\[104X251[4X{\n\[104X252[4X return(Involution(SyzForHomalg(Involution(M))));\n\[104X253[4X}\n\n",[104X254[4X[32X[104X255256[1X3.1-13 BasisOfRowsCoeff[101X257258[29X[2XBasisOfRowsCoeff[102X( [3XM[103X, [3XT[103X ) [32X function259260[33X[0;0YThis is the entry of the [5Xhomalg[105X table, which calls the corresponding macro261[2XBasisOfRowsCoeff[102X ([14X3.1-14[114X) inside the computer algebra system.[133X262263[4X[32X Code [32X[104X264[4XBasisOfRowsCoeff :=[104X265[4X function( M, T )[104X266[4X local v, N;[104X267[4X [104X268[4X v := homalgStream( HomalgRing( M ) )!.variable_name;[104X269[4X [104X270[4X N := HomalgVoidMatrix([104X271[4X "unknown_number_of_rows",[104X272[4X NrColumns( M ),[104X273[4X HomalgRing( M )[104X274[4X );[104X275[4X [104X276[4X homalgSendBlocking([104X277[4X [[104X278[4X "list ", v, "l=BasisOfRowsCoeff(", M, "); ",[104X279[4X "matrix ", N, " = ", v, "l[1]; ",[104X280[4X "matrix ", T, " = ", v, "l[2]"[104X281[4X ],[104X282[4X "need_command",[104X283[4X HOMALG_IO.Pictograms.BasisCoeff[104X284[4X );[104X285[4X [104X286[4X return N;[104X287[4X [104X288[4X end,[104X289[4X[32X[104X290291[1X3.1-14 BasisOfRowsCoeff[101X292293[29X[2XBasisOfRowsCoeff[102X( [3XM[103X, [3XT[103X ) [32X function294295[4X[32X Code [32X[104X296[4X BasisOfRowsCoeff := "\n\[104X297[4Xproc BasisOfRowsCoeff (matrix M)\n\[104X298[4X{\n\[104X299[4X matrix B = BasisOfRowModule(M);\n\[104X300[4X matrix T = lift(M,B);\n\[104X301[4X list l = B,T;\n\[104X302[4X return(l)\n\[104X303[4X}\n\n",[104X304[4X[32X[104X305306[1X3.1-15 BasisOfColumnsCoeff[101X307308[29X[2XBasisOfColumnsCoeff[102X( [3XM[103X, [3XT[103X ) [32X function309310[33X[0;0YThis is the entry of the [5Xhomalg[105X table, which calls the corresponding macro311[2XBasisOfColumnsCoeff[102X ([14X3.1-16[114X) inside the computer algebra system.[133X312313[4X[32X Code [32X[104X314[4XBasisOfColumnsCoeff :=[104X315[4X function( M, T )[104X316[4X local v, N;[104X317[4X [104X318[4X v := homalgStream( HomalgRing( M ) )!.variable_name;[104X319[4X [104X320[4X N := HomalgVoidMatrix([104X321[4X NrRows( M ),[104X322[4X "unknown_number_of_columns",[104X323[4X HomalgRing( M )[104X324[4X );[104X325[4X [104X326[4X homalgSendBlocking( [104X327[4X [[104X328[4X "list ", v, "l=BasisOfColumnsCoeff(", M, "); ",[104X329[4X "matrix ", N, " = ", v, "l[1]; ",[104X330[4X "matrix ", T, " = ", v, "l[2]"[104X331[4X ],[104X332[4X "need_command",[104X333[4X HOMALG_IO.Pictograms.BasisCoeff[104X334[4X );[104X335[4X [104X336[4X return N;[104X337[4X [104X338[4X end,[104X339[4X[32X[104X340341[1X3.1-16 BasisOfColumnsCoeff[101X342343[29X[2XBasisOfColumnsCoeff[102X( [3XM[103X, [3XT[103X ) [32X function344345[4X[32X Code [32X[104X346[4X BasisOfColumnsCoeff := "\n\[104X347[4Xproc BasisOfColumnsCoeff (matrix M)\n\[104X348[4X{\n\[104X349[4X list l = BasisOfRowsCoeff(Involution(M));\n\[104X350[4X matrix B = l[1];\n\[104X351[4X matrix T = l[2];\n\[104X352[4X l = Involution(B),Involution(T);\n\[104X353[4X return(l);\n\[104X354[4X}\n\n",[104X355[4X[32X[104X356357[1X3.1-17 DecideZeroRowsEffectively[101X358359[29X[2XDecideZeroRowsEffectively[102X( [3XA[103X, [3XB[103X, [3XT[103X ) [32X function360361[33X[0;0YThis is the entry of the [5Xhomalg[105X table, which calls the corresponding macro362[2XDecideZeroRowsEffectively[102X ([14X3.1-18[114X) inside the computer algebra system.[133X363364[4X[32X Code [32X[104X365[4XDecideZeroRowsEffectively :=[104X366[4X function( A, B, T )[104X367[4X local v, N;[104X368[4X [104X369[4X v := homalgStream( HomalgRing( A ) )!.variable_name;[104X370[4X [104X371[4X N := HomalgVoidMatrix([104X372[4X NrRows( A ),[104X373[4X NrColumns( A ),[104X374[4X HomalgRing( A )[104X375[4X );[104X376[4X [104X377[4X homalgSendBlocking([104X378[4X [[104X379[4X "list ", v, "l=DecideZeroRowsEffectively(", A, B, "); ",[104X380[4X "matrix ", N, " = ", v, "l[1]; ",[104X381[4X "matrix ", T, " = ", v, "l[2]"[104X382[4X ],[104X383[4X "need_command",[104X384[4X HOMALG_IO.Pictograms.DecideZeroEffectively[104X385[4X );[104X386[4X [104X387[4X return N;[104X388[4X [104X389[4X end,[104X390[4X[32X[104X391392[1X3.1-18 DecideZeroRowsEffectively[101X393394[29X[2XDecideZeroRowsEffectively[102X( [3XA[103X, [3XB[103X, [3XT[103X ) [32X function395396[4X[32X Code [32X[104X397[4X DecideZeroRowsEffectively := "\n\[104X398[4Xproc DecideZeroRowsEffectively (matrix A, module B)\n\[104X399[4X{\n\[104X400[4X attrib(B,\"isSB\",1);\n\[104X401[4X matrix M = reduce(A,B);\n\[104X402[4X matrix T = lift(B,M-A);\n\[104X403[4X list l = M,T;\n\[104X404[4X return(l);\n\[104X405[4X}\n\n",[104X406[4X[32X[104X407408[1X3.1-19 DecideZeroColumnsEffectively[101X409410[29X[2XDecideZeroColumnsEffectively[102X( [3XA[103X, [3XB[103X, [3XT[103X ) [32X function411412[33X[0;0YThis is the entry of the [5Xhomalg[105X table, which calls the corresponding macro413[2XDecideZeroColumnsEffectively[102X ([14X3.1-20[114X) inside the computer algebra system.[133X414415[4X[32X Code [32X[104X416[4XDecideZeroColumnsEffectively :=[104X417[4X function( A, B, T )[104X418[4X local v, N;[104X419[4X [104X420[4X v := homalgStream( HomalgRing( A ) )!.variable_name;[104X421[4X [104X422[4X N := HomalgVoidMatrix([104X423[4X NrRows( A ),[104X424[4X NrColumns( A ),[104X425[4X HomalgRing( A )[104X426[4X );[104X427[4X [104X428[4X homalgSendBlocking([104X429[4X [[104X430[4X "list ", v, "l=DecideZeroColumnsEffectively(", A, B, "); ",[104X431[4X "matrix ", N, " = ", v, "l[1]; ",[104X432[4X "matrix ", T, " = ", v, "l[2]"[104X433[4X ],[104X434[4X "need_command",[104X435[4X HOMALG_IO.Pictograms.DecideZeroEffectively[104X436[4X );[104X437[4X [104X438[4X return N;[104X439[4X [104X440[4X end,[104X441[4X[32X[104X442443[1X3.1-20 DecideZeroColumnsEffectively[101X444445[29X[2XDecideZeroColumnsEffectively[102X( [3XA[103X, [3XB[103X, [3XT[103X ) [32X function446447[4X[32X Code [32X[104X448[4X DecideZeroColumnsEffectively := "\n\[104X449[4Xproc DecideZeroColumnsEffectively (matrix A, matrix B)\n\[104X450[4X{\n\[104X451[4X list l = DecideZeroRowsEffectively(Involution(A),Involution(B));\n\[104X452[4X matrix B = l[1];\n\[104X453[4X matrix T = l[2];\n\[104X454[4X l = Involution(B),Involution(T);\n\[104X455[4X return(l);\n\[104X456[4X}\n\n",[104X457[4X[32X[104X458459[1X3.1-21 RelativeSyzygiesGeneratorsOfRows[101X460461[29X[2XRelativeSyzygiesGeneratorsOfRows[102X( [3XM[103X, [3XM2[103X ) [32X function462463[33X[0;0YThis is the entry of the [5Xhomalg[105X table, which calls the corresponding macro464[2XRelativeSyzygiesGeneratorsOfRows[102X ([14X3.1-22[114X) inside the computer algebra465system.[133X466467[4X[32X Code [32X[104X468[4XRelativeSyzygiesGeneratorsOfRows :=[104X469[4X function( M, M2 )[104X470[4X local N;[104X471[4X [104X472[4X N := HomalgVoidMatrix([104X473[4X "unknown_number_of_rows",[104X474[4X NrRows( M ),[104X475[4X HomalgRing( M )[104X476[4X );[104X477[4X [104X478[4X homalgSendBlocking([104X479[4X [ "matrix ", N, " = RelativeSyzygiesGeneratorsOfRows(", M, M2, ")" ],[104X480[4X "need_command",[104X481[4X HOMALG_IO.Pictograms.SyzygiesGenerators[104X482[4X );[104X483[4X [104X484[4X return N;[104X485[4X [104X486[4X end,[104X487[4X[32X[104X488489[1X3.1-22 RelativeSyzygiesGeneratorsOfRows[101X490491[29X[2XRelativeSyzygiesGeneratorsOfRows[102X( [3XM[103X, [3XM2[103X ) [32X function492493[4X[32X Code [32X[104X494[4X RelativeSyzygiesGeneratorsOfRows := "\n\[104X495[4Xproc RelativeSyzygiesGeneratorsOfRows (matrix M1, matrix M2)\n\[104X496[4X{\n\[104X497[4X return(BasisOfRowModule(modulo(M1, M2)));\n\[104X498[4X}\n\n",[104X499[4X[32X[104X500501[1X3.1-23 RelativeSyzygiesGeneratorsOfColumns[101X502503[29X[2XRelativeSyzygiesGeneratorsOfColumns[102X( [3XM[103X, [3XM2[103X ) [32X function504505[33X[0;0YThis is the entry of the [5Xhomalg[105X table, which calls the corresponding macro506[2XRelativeSyzygiesGeneratorsOfColumns[102X ([14X3.1-24[114X) inside the computer algebra507system.[133X508509[4X[32X Code [32X[104X510[4XRelativeSyzygiesGeneratorsOfColumns :=[104X511[4X function( M, M2 )[104X512[4X local N;[104X513[4X [104X514[4X N := HomalgVoidMatrix([104X515[4X NrColumns( M ),[104X516[4X "unknown_number_of_columns",[104X517[4X HomalgRing( M )[104X518[4X );[104X519[4X [104X520[4X homalgSendBlocking([104X521[4X [ "matrix ", N, " = RelativeSyzygiesGeneratorsOfColumns(", M, M2, ")" ],[104X522[4X "need_command",[104X523[4X HOMALG_IO.Pictograms.SyzygiesGenerators[104X524[4X );[104X525[4X [104X526[4X return N;[104X527[4X [104X528[4X end,[104X529[4X[32X[104X530531[1X3.1-24 RelativeSyzygiesGeneratorsOfColumns[101X532533[29X[2XRelativeSyzygiesGeneratorsOfColumns[102X( [3XM[103X, [3XM2[103X ) [32X function534535[4X[32X Code [32X[104X536[4X RelativeSyzygiesGeneratorsOfColumns := "\n\[104X537[4Xproc RelativeSyzygiesGeneratorsOfColumns (matrix M1, matrix M2)\n\[104X538[4X{\n\[104X539[4X return(Involution(RelativeSyzygiesGeneratorsOfRows(Involution(M1),Involution(M2))));\n\[104X540[4X}\n\n",[104X541[4X[32X[104X542543[1X3.1-25 ReducedSyzygiesGeneratorsOfRows[101X544545[29X[2XReducedSyzygiesGeneratorsOfRows[102X( [3XM[103X ) [32X function546547[33X[0;0YThis is the entry of the [5Xhomalg[105X table, which calls the corresponding macro548[2XReducedSyzygiesGeneratorsOfRows[102X ([14X3.1-26[114X) inside the computer algebra system.[133X549550[4X[32X Code [32X[104X551[4XReducedSyzygiesGeneratorsOfRows :=[104X552[4X function( M )[104X553[4X local N;[104X554[4X [104X555[4X N := HomalgVoidMatrix([104X556[4X "unknown_number_of_rows",[104X557[4X NrRows( M ),[104X558[4X HomalgRing( M )[104X559[4X );[104X560[4X [104X561[4X homalgSendBlocking([104X562[4X [ "matrix ", N, " = ReducedSyzygiesGeneratorsOfRows(", M, ")" ],[104X563[4X "need_command",[104X564[4X HOMALG_IO.Pictograms.SyzygiesGenerators[104X565[4X );[104X566[4X [104X567[4X return N;[104X568[4X [104X569[4X end,[104X570[4X[32X[104X571572[1X3.1-26 ReducedSyzygiesGeneratorsOfRows[101X573574[29X[2XReducedSyzygiesGeneratorsOfRows[102X( [3XM[103X ) [32X function575576[4X[32X Code [32X[104X577[4X ReducedSyzForHomalg := "\n\[104X578[4Xproc ReducedSyzForHomalg (matrix M)\n\[104X579[4X{\n\[104X580[4X return(matrix(nres(M,2)[2]));\n\[104X581[4X}\n\n",[104X582[4X ReducedSyzygiesGeneratorsOfRows := "\n\[104X583[4Xproc ReducedSyzygiesGeneratorsOfRows (matrix M)\n\[104X584[4X{\n\[104X585[4X return(ReducedSyzForHomalg(M));\n\[104X586[4X}\n\n",[104X587[4X[32X[104X588589[1X3.1-27 ReducedSyzygiesGeneratorsOfColumns[101X590591[29X[2XReducedSyzygiesGeneratorsOfColumns[102X( [3XM[103X ) [32X function592593[33X[0;0YThis is the entry of the [5Xhomalg[105X table, which calls the corresponding macro594[2XReducedSyzygiesGeneratorsOfColumns[102X ([14X3.1-28[114X) inside the computer algebra595system.[133X596597[4X[32X Code [32X[104X598[4XReducedSyzygiesGeneratorsOfColumns :=[104X599[4X function( M )[104X600[4X local N;[104X601[4X [104X602[4X N := HomalgVoidMatrix([104X603[4X NrColumns( M ),[104X604[4X "unknown_number_of_columns",[104X605[4X HomalgRing( M )[104X606[4X );[104X607[4X [104X608[4X homalgSendBlocking([104X609[4X [ "matrix ", N, " = ReducedSyzygiesGeneratorsOfColumns(", M, ")" ],[104X610[4X "need_command",[104X611[4X HOMALG_IO.Pictograms.SyzygiesGenerators[104X612[4X );[104X613[4X [104X614[4X return N;[104X615[4X [104X616[4X end,[104X617[4X[32X[104X618619[1X3.1-28 ReducedSyzygiesGeneratorsOfColumns[101X620621[29X[2XReducedSyzygiesGeneratorsOfColumns[102X( [3XM[103X ) [32X function622623[4X[32X Code [32X[104X624[4X ReducedSyzygiesGeneratorsOfColumns := "\n\[104X625[4Xproc ReducedSyzygiesGeneratorsOfColumns (matrix M)\n\[104X626[4X{\n\[104X627[4X return(Involution(ReducedSyzForHomalg(Involution(M))));\n\[104X628[4X}\n\n",[104X629[4X[32X[104X630631632633