Real-time collaboration for Jupyter Notebooks, Linux Terminals, LaTeX, VS Code, R IDE, and more,
all in one place.
Real-time collaboration for Jupyter Notebooks, Linux Terminals, LaTeX, VS Code, R IDE, and more,
all in one place.
| Download
GAP 4.8.9 installation with standard packages -- copy to your CoCalc project to get it
Project: cocalc-sagemath-dev-slelievre
Views: 418346/home/fabianska/maple/lib/9/QuillenSuslin ...................................................................................................................................................................................................................... ?�+E���� uillenSuslin QuillenSuslinA QuillenSuslinT QuillenSuslin/version ALLPROCS QuillenSuslinA/init QuillenSuslin/APatching QuillenSuslin/APatch QuillenSuslin/Cofactors QuillenSuslin/CompleteMatrix QuillenSuslin/copyright_QuillenSuslin QuillenSuslin/DenomOf QuillenSuslin/easy2 QuillenSuslin/easyf QuillenSuslin/easyg QuillenSuslin/easysr QuillenSuslin/FindIrreducibleNotIn QuillenSuslin/FindMonic1Var QuillenSuslin/FindMonicIn QuillenSuslin/HEURISTIC QuillenSuslin/HorrocksN QuillenSuslin/Horrocks QuillenSuslin/init QuillenSuslin/InvertibleIn QuillenSuslin/iseasyg1 QuillenSuslin/iseasy QuillenSuslin/IsInS QuillenSuslin/IsMonic QuillenSuslin/IsParkNormalised QuillenSuslin/IsRegular QuillenSuslin/IsUnimod QuillenSuslin/JIsUnimod ............ ,uM7R0 I)ALLPROCS7$Q6QuillenSuslin/version6"Q)ALLPROCSF%F% M7R0 I:QuillenSuslin/PatchingNewf*6(%"mG'%"rG%%listG'%$varGF(%"XG'%"UGF(%¶mG6*%" iG%"VG%"YG%"ZG%"pG%#irG%#rmG%#UIG6#%enCopyright~(C)~2004~by~Anna~Fabianska.~All ~rights~reserved.G6"C,@$2""%9#>8(-%2InvolutiveOptionsG6$Q)rationalF:9)>8*-%$map G6$f*6#%"aGF:6$%)operatorG%&arrowGF:)9$T$F:F:6$F%FS9%@%0&-%0InvolutiveBasisG6$F H9&6#"""FinC$@$2""&F?-FC6$FEFA-%&ERRORG6#%<the~row~r~is~not~unimodularGC$>8)-%$ rhsG6#&-Fen6$-%'AddRhsG6#FHFgnFhn@$4-%%typeG6$FfoF(>Ffo7#Ffo>8&9'>8',&FipFin*(& FHFhnFin&FfoFhnFinFipFin!"">8+-&%.LinearAlgebraG6#%.MatrixInverseG6#&9(Fhn>8%-% ".G6$Fiq-%%subsG6$/FipF[qFbq?(8$""#Fin-%%nopsG6#FV%%trueGC&>Fhp,&FhpFin*(&FH6#, &FerFinF`qFinFin&FfoF`sFinFipFinF`q>F[q,&F[qFin*(&FH6#FerFin&FfoFgsFinFipFinF`q >Fbq-Fdq6#&FjqFgs>F\r-F^r6%F\r-Far6$/FipFhpF\tF`r@$F\oF^oO-%)simplifyG6#F\rF:F: F:F: M7R0 I>QuillenSuslin/RedRightInversef*6%'%"fG%%listG'%$VARGF'%"pG6)%"gG%"rG%$varG%#g rG%#IBG%"SG%#ISG6#%enCopyright~(C)~2005~by~Anna~Fabianska.~All~rights~reserved. G6"C(@$2""#9#>8%-%=Involutive/InvolutiveOptionsG6$Q)rationalF59&@%/9%7">8&7#%$_ T_G>FGFD>8(-%;Involutive/InvolutiveBasisG6$-%2Involutive/AddRhsG6#9$FG@%0-%$lhs G6#&FL6#"""FenC$@$F8-F>6$F@F<-%&ERRORG6#%:the~row~is~not~unimodularGC'>8$-%$rhs GFX-%&printG6#Q5compute~SyzygyModuleF5>8)-%8Involutive/SyzygyModuleG6$FSFG>8*-F N6$FhoFG>8'-%8Involutive/PolInvReduceG6%F`oF]pFG@$F8FhnOFapF5F5F5F5 M7R0 I@QuillenSuslin/ReduceBasisDegreef*6&'%"BG%'MatrixG'%"qG%(integerG'%$varG%%list G%¶mG6.%"nG%"fG%"RG%#IBG%#NBG%"iG%"rG%"jG%"ZG%#IRG%#ZiG%*reductionG6#%enCop yright~(C)~2006~by~Anna~Fabianska.~All~rights~reserved.G6"C+>8(-%%copyG6#9$>8$- &%.LinearAlgebraG6#%0ColumnDimensionGFD@$0-&FJ6#%-RowDimensionGFDFG-%&ERRORG6#% :The~matrix~is~not~square!G>8/%&falseG>8*-%=Involutive/InvolutiveOptionsG6$Q)ra tionalF>9'?(8),&9%"""F_oF_oF_oFG%%trueGC(>8,-%(convertG6$FA%)listlistG@%/F\oFG> 8&&Fco6#;F_o,&FGF_o!""F_o>F[p7$-%#opG6#&Fco6#;F_o,&F\oF_oF`pF_o-Fdp6#&Fco6#;,&F \oF_oF_oF_oFG>8--%;Involutive/InvolutiveBasisG6$F[p9&>8.-%8Involutive/PolInvRed uceG6%&Fco6#F\oFaqFeq@$0FgqF[r>FXF`o?(8+F_oF_oFGF`o>&FA6$F\oFar&Fgq6#Far@$2""%9 #-%'assignG6$&9"6#""&FX-Fgn6$FinFenOFAF>F>F>F> M7R0 I8QuillenSuslin/testSEASYf*6''%"fG%%listG'%"gGF''%$varGF''%"SGF'%¶mG6#%"EG6 #%enCopyright~(C)~2006~by~Anna~Fabianska.~All~rights~reserved.G6"C&-%)userinfoG 6%""$%+SHeuristicG%,test~SeasyfG>8$-%6QuillenSuslin/Seasyf1G6&9$9&9'9(@%/-%)wha ttypeG6#F<%'MatrixGC$-F66%F8F9%;Seasyf1~-~no~induction~!!!GOF<C%-F66%F8F9%-test ~Seasyf2G>F<-%6QuillenSuslin/Seasyf2GF?@%FEC$-F66%F8F9%;Seasyf2~-~no~induction~ !!!GOF<C%-F66%F8F9%-test~SeasysrG>F<-%6QuillenSuslin/SeasysrGF?@%FEC$-F66%F8F9% ;Seasysr~-~no~induction~!!!GOF<C%-F66&F8F9%-~test~SeasygG9%>F<-%9QuillenSuslin/ testSeasygG6'F@FgoFAFBFC@$FEC$-F66%F8F9%:Seasyg~-~no~induction~!!!GOF<OF<F3F3F3 F3 M7R0 I6QuillenSuslin/version"-Z:423?6" M7R0 I5QuillenSuslin/APatchf*6'%"AG'%"XG%'symbolG'%%varcG%%listG'%"UGF+%¶mG6,%"i G%"VG%"YG%"ZG%#UIG%'DeltaIG%"rG%"dG%#idG%"nG6#%enCopyright~(C)~2006~by~Anna~Fab ianska.~All~rights~reserved.G6"C,-%)userinfoG6%""$%&PatchG%gnyou~should~test~be fore~if~we~have~enough~local~|+information!G>8--%%nopsG6#9'>8+7#-%"$G6$""!FE>8) FL?(8$"""FUFE%%trueGC%>8(-&%.LinearAlgebraG6#%.MatrixInverseG6#&FI6#FT>&FRF[o-% )simplifyG6#-%".G6$Fjn-%%subsG6$/9%,&FhoFU8'FUFY>&FKF[o-%6QuillenSuslin/DenomOf G6#F]o@%/-FG6#FKFU>8,7#*$&FK6#FU!"">Fep-%;QuillenSuslin/RightInverseG6%FK9&9(>8 &Fho>8%-F_o6#-Feo6$/Fjo,$*(,&FhoFU9$FjpFUFhpFU&FepFipFUFjp&FRFip?(FT""#FUFEFVC$ >Fbq,&FbqFU*(&FK6#,&FTFUFjpFUFU&FepFgrFUF\rFUFjp>Fdq-F_o6#-Fbo6$Fdq-Feo6%/FhoFb q/Fjo,$*(F\pFU&FepF[oFUF\rFUFjpF]oOFdqF<F<F<F< M7R0 I?QuillenSuslin/RightInverseFastf*6%'%"fG%%listG'%$VARGF'%¶mG6&%"gG%"rG%$va rG%#IBG6#%enCopyright~(C)~2005~by~Anna~Fabianska.~All~rights~reserved.G6"C(@$2" "#9#@%/-%)whattypeG6#9&%(integerG@%-%(isprimeGF<>8%-%=Involutive/InvolutiveOpti onsG6$Q%charF2F=-%&ERRORG6#QjnExpecting~a~prime~number~as~a~characteristic~of~a ~finite~field!F2>FC-FE6$Q)rationalF2F=@%/9%7">8&7#%$_T_G>FUFR>8'-%?Involutive/I nvolutiveBasisFastG6$-%2Involutive/AddRhsG6#9$FU@$F5@%F9-FE6$FGFC-FE6$FOFC@%0-% $lhsG6#&FZ6#"""FioC$-%)userinfoG6%""$%,QSAlgorithmG%MThe~row~is~not~unimodular~ in~the~given~ring.GOFS>8$-%$rhsGFfoOFcpF2F2F2F2 M7R0 I4QuillenSuslin/RowQSf*6&'%"FG%%listG'%$varGF'%"pG%*lastparamG62%"gG%"EG%$VARG% #SUG%$ISUG%"NG%#ffG%#ggG%#fnG%#gnG%"fG%"UG%#QMG%#fmG%"RG%¶mG6#%enCopyright~ (C)~2005~by~Anna~Fabianska.~All~rights~reserved.G6"C.@%2""#9#>839&>FF%%trueG-%) userinfoG6&""$%,QSAlgorithmG%&RowQSG&9"6#;"""!"#-FK6%FMFN%5Compute~RightInverse G>8$-%;QuillenSuslin/RightInverseG6%9$9%FF@$/FZ7"OF\o-FK6&FMFN%-RightInverseGFZ @$/FinF\oC$-FK6&FMFN%CNo~variables~-~a~row~of~constants~GFhn@%/&%$argG6#FM%&fal seGO-%4QuillenSuslin/RowZZG6#FhnO-%4QuillenSuslin/RowQQGF`p@$3/FFFI/-%%nopsG6#F inFT-FK6%FMFN%&QQ[x]G-FK6&FMFNFO%coTest~heuristic~methods.~For~more~information ~set~infolevel[Heuristic]:=3G>8%F\p@$52FD""%09'Q'noeasyF?>Fbq-%7QuillenSuslin/t estEASYG6&FhnFZFinFF@%/-%)whattypeG6#Fbq%'MatrixGC%-FK6%FMFO%+Heuristic:G-FK6%F MFN%BUsing~heuristic~methods~return~E:GOFbqC8-FK6%FMFN%ENot~easy~-~no~heuristic ~methods~workG>8.Fhn@%4-%6QuillenSuslin/IsMonicG6$Fas&Fin6#!""C%>8&-%$mapG6$f*6 #%"aGF?6$%)operatorG%&arrowGF?-%$catG6$Fhn%"_GF?F?F?Fin>6%8)8'8(-%@QuillenSusli n/NormalizationStepG6'FasFinF\tFFQ%lastF?>8,-%%subsG6$F]u&-%(convertG6$-%)simpl ifyG6#-%".G6$-Fcr6#FasF\u%)listlistG6#FTC'>F\tFin>F\u-&%.LinearAlgebraG6#%/Diag onalMatrixG6#7#-%"$G6$FT-FipFcv>F]u7#/&FinFev&F\tFev>F^u7#/FhwFgw>FduFas>Fdu-F] v6#Fdu-FK6&FMFN%<The~row~after~normalizationGFdu-FK6&FMFN%NTest~heuristic~metho ds~for~the~normalized~rowGFdu>8--Ffn6%FduF\tFF>FbqF\p@$Fdq>Fbq-F\r6&FduFgxF\tFF @%F_rC$-FK6%FMFN%KHeuristic~for~the~row~after~normalization:GO-F]v6#-F`v6$F\u-F fu6$F^uFbq-FK6%FMFN%QNo~heuristic~methods~work~for~the~normalized~rowG>6$8*82-% 8QuillenSuslin/ReduceDegG6%Fdu&F\tFhs.%(reducedG@%FgzC(-FK6&FMFN%Jthe~row~after ~normalization~and~reductionGF`z-FK6&FMFN%KTest~heuristic~methods~for~the~reduc ed~rowGF`z>8+-Ffn6%F`zF\tFF>FbqF\p@$Fdq>Fbq-F\r6&F`zFa[lF\tFF@%F_rC$-FK6%FMFN%Y Heuristic~for~the~row~after~normalization~and~reduction:GO-F]v6#-F`v6$F\u-Ffu6$ F^u-F`v6$FazFbq-FK6%FMFN%NNo~heuristic~methods~work~for~the~reduced~rowG-FK6&FM FN%KNo~reduction~-~the~row~was~already~reducedGF`z-FK6%FMFN%[oOneStep~-~Enter~t he~inductive~procedure~and~reduce~one~variable:G-FK6%FMFN%enOneStep~-~Compute~l ocal~solutions~and~patch~them~together!G-FK6%FMFN%gnOneStep~-~For~more~informat ion~set~infolevel[OneStepMore]:=3G>80-%:QuillenSuslin/OneStepMoreGFc[l-FK6&FMFN %1After~one~step:~G-Fju6$-F]v6#-F`v6$-Fcr6#F`zFg]lFdv>8/-F]v6#-F`v6$F\u-Ffu6$F^ u-F]v6#-F`v6$FazFg]l>81&F]^lFev-FK6&FMFN%BNow~repeat~the~computation~for~fmGFb_ l@%Feq>Ff^l-F]v6#-F`v6$Ff^l-Ffu6$F^u-F"6%Fb_l&F\tFRFF>Ff^l-F]v6#-F`v6$Ff^l-Ffu6 $F^u-F"6&Fb_lFa`lFFFhqOFf^lF?F?F?F? M7R0 I6QuillenSuslin/Seasyf2f*6''%"fG%%listG'%$varGF'%"SG%$parG%$strG6.%¶mG%"nG% #IBG%"iG%"jG%"kG%#riG%#M1G%#M2G%"PG%"lG%"sG6#%enCopyright~(C)~2006~by~Anna~Fabi anska.~All~rights~reserved.G6"C'@%2""$9#>8$9'>FC%%trueG-%)userinfoG6%""%%&SEASY G%9test~two~components~of~fG>8%-%%nopsG6#9$?(8'"""FU,&FNFU!""FUFF?(8(,&FTFUFUFU FUFNFFC$>8/-%;QuillenSuslin/InvertibleInG6&7$&FR6#FT&FR6#FY9&9%FC@&0-FP6#Fgn""! C.>8+-&%.LinearAlgebraG6#%/DiagonalMatrixG6#7#-%"$G6$FUFN>&Fio6$FTFT*&&&Fgn6#"" #6#FUFU&FgnF\qFW>&Fio6$FYFT*&&FipFjpFUF]qFW>&Fio6$FTFY,$F^oFW>&Fio6$FYFYF\o>8,F jo?(8.FUFUFNFF>&F[r6$FTF]r,$&FR6#F]rFW>&F[rFfpFU>&F[rFeqFfo@%0FTFUC$>8--%@Quill enSuslin/PermutationMatrixG6%FUFTFNO-%)simplifyG6#-%".G6%FioF[rF\sO-Fbs6#-Fes6$ FioF[r>FTFN>FYFN/FTFVC$-FH6%FJ%*HeuristicG%LThe~row~is~not~Seasyf2~over~the~giv en~ring.GO%&falseGOFhsF<F<F<F< M7R0 I:QuillenSuslin/SuslinLemmaf*6&%"pG%"qG'%"vG%'symbolG%"tG6*%"sG%"aG%"bG%#cpG%#c qG%"hG%"iG%"kG6#%enCopyright~(C)~2005~by~Anna~Fabianska.~All~rights~reserved.G6 "C-@$/-%6QuillenSuslin/IsMonicG6$7#9$7#9&%&falseG-%&ERRORG6%%UThe~first~polynom ial~should~be~monic~in~the~variableGF@%"!G>8$-%'degreeG6$F>F@@$2FI-FJ6$9%F@-FC6 #%^oThe~polynomial~q~should~be~of~degree~smaller~then~the~polynomial~p!G@$2,&FH """!""FW9'-FC6#%[oThe~polynomial~q~is~of~degree~smaller~then~the~last~parameter ~t!G>8%-%$mapG6$f*6#F2F66$%)operatorG%&arrowGF6-%&coeffG6%T$T&,&T'FWF>FXF6F66(F %F>F(F@F,FH7#-%"$G6#;FWFH>8&-Fjn6$f*F]oF6F^oF6FaoF6F66(F&FPF(F@F,FHFio>8+,&FHFW FYFX@$2""%9#C%-%&printG6$Q"aF6Fhn-F]q6$Q"bF6F_p-F]q6&Q"kF6FepQ%b[k]F6&F_p6#Fep@ %/Fgq""!C%>8)F[r>8'F[r>8(F[rC$@%/FepFWC$>FbrFW>F`rF[rC&>Fbr)F@,&FepFWFXFW?(8*FW FWF\s%%trueG>Fbr,&FbrFW*&&Fhn6#F^sFW)F@,(FepFWFXFWF^sFXFWFW>F`r&F_p6#F\s@$2""#F ep?(F^sFWFW,&FepFW!"#FWF_s>F`r,&F`rFW*&&F_p6#FfsFW)F@F^sFWFW>F^r-%)simplifyG6#, &*&FbrFWFPFWFW*&F`rFWF>FWFX@$Fhp-F]q6%%RThe~leading~coefficient~and~the~leading ~monomial:G-%1QuillenSuslin/LCG6$F^rF@)F@-FJFcuO6%,$F`rFXFbrF^rF6F6F6F6 M7R0 I9QuillenSuslin/SHeuristicf*6('%"fG%%listG'%"gGF''%$varGF''%"SGF'%¶mG%*last paramG6+%"hG%"EG%"FG%"GG%"HG%"MG%"nG%"iG%*infolevelG6#%enCopyright~(C)~2006~by~ Anna~Fabianska.~All~rights~reserved.G6"C'>8*-%%nopsG6#9$@$2""&9#>&8,6#%+SHeuris ticG""$>8%-%8QuillenSuslin/testSEASYG6'FC9%9&9'9(@$/FO%&falseG-%)userinfoG6%""! FL%erNo~heuristic~methods~work~for~the~given~row~and~this~inverse.~You~can~try~ the~same~procedure~giving~another~right~inverse.GOFOF<F<F<F< M7R0 I<QuillenSuslin/BasisOfModulef*6%'%"RG<$%'MatrixG%%listG'%$varGF)%¶mG6&%"nG %"mG%"CG%(reducedG6#%enCopyright~(C)~2006~by~Anna~Fabianska.~All~rights~reserve d.G6"C%>8&-%/CompleteMatrixG6%9$9%9&@%/-%)whattypeG6#F;F)C$>8$""">8%-%%nopsGFBC $>FE-&%.LinearAlgebraG6#%-RowDimensionGFB>FH-&FO6#%0ColumnDimensionGFB@%/-FA6#F 7F(C%>8'%%trueG?(F4FFFFF4Fgn>F7-%@QuillenSuslin/ReduceBasisDegreeG6'F7FEF<%&fal seG.FgnO-&FO6#%*SubMatrixG6%F7;,&FEFFFFFFFH;FFFH-%&ERRORG6#%8Not~a~unimodular~m atrixGF4F4F4F4 M7R0 IDQuillenSuslin/BasisOfCokernelModulef*6%'%"RG<$%'MatrixG%%listG'%$varGF)%¶ mG6(%"nG%"mG%"CG%#FRG%(reducedG%"rG6#%enCopyright~(C)~2006~by~Anna~Fabianska.~A ll~rights~reserved.G6"C)>8$-&%.LinearAlgebraG6#%-RowDimensionG6#9$>8%-&F<6#%0Co lumnDimensionGF?@$-%;QuillenSuslin/IsZeroMatrixGF?C$-%(WARNINGG6#%ioThe~module~ is~defined~as~a~cokernel~of~a~zero~matrix,~thus~isomorph~to~D^|fr1xq|hrGO-&F<6# %/IdentityMatrixG6#F9@%/F9""">8'F@C(>8)-%=Involutive/InvolutiveOptionsG6$Q)rati onalF69&>FY-%AInvolutive/PolShortestResolutionG6$F@9%-Fhn6$FjnFfn@%/-%%nopsG6#F YFWC$>FY&FY6#FW@$/-%7QuillenSuslin/IsUnimodG6%FYF`oF[o%&falseGC$-FL6#%=The~modu le~is~not~projectiveGO7"C$-FL6#%coThe~module~is~not~projective,~the~shortest~fr ee~resolution~has~length~>1GOFgp>F9-F;Fgo>FB-FDFgo>8&-%=QuillenSuslin/CompleteM atrixGF`p@%2""$9#>8(%%trueG>FjqFap@%/-%)whattypeG6#FbqF(C$?(F6FWFWF6Fjq>Fbq-%@Q uillenSuslin/ReduceBasisDegreeG6'FbqF9F`oF[o.FjqO-&F<6#%*SubMatrixG6%Fbq;,&F9FW FWFWFB;FWFCC%-%)userinfoG6%Fgq%6BasisOfCokernelModuleG%\qThe~full~row~rank~matr ix~defining~the~module~(as~a~cokernel)~is~not~unimodular~in~the~given~ring.GFcp OFgpF6F6F6F6 M7R0 I>QuillenSuslin/RCFactorizationf*6$'%"PG%'MatrixG'%$varG%%listG6.%"qG%"rG%"DG%" NG%"RG%$RtTG%"LG%$LtTG%"UG%$R2pG%#NpG%#DpG6#%enCopyright~(C)~2007~by~Anna~Fabia nska.~All~rights~reserved.G6"C.>8$-&%.LinearAlgebraG6#%-RowDimensionG6#9$>8%-&F @6#%0ColumnDimensionGFC>8&-&F@6#%/DiagonalMatrixG6#7#-%"$G6$-%6QuillenSuslin/De nomOfGFCF=>8'-%)simplifyG6#-%".G6$FLFD>8(-F'6#-%$<|gr>G6$FL,$FY!""@%2""#9#>8*&- %7QuillenSuslin/LinBose1G6%F[o9%%$optG6#Feo>Fho&-F[p6$F[oF]pF_p@$4-%7QuillenSus lin/IsUnimodG6%FhoF]p%%trueGC$-%(WARNINGG6#%\othe~transfer~matrix~does~not~admi t~a~right~coprime~factorization.G-%'RETURNG6#7">8,-%:QuillenSuslin/QSAlgorithmG Fhp>8--&F@6#%*SubMatrixG6%Fdq;""",&F=F_rFFF_r;,&F=F_rF_rF_rF`r>8.-Fjq6%Fhq;F_rF =;F_rFF>8/-Fjq6%FhqFarFhr-F`q6#7$FdrFjrF:F:F:F: M7R0 I<QuillenSuslin/FindMonic1Varf*6%'%"AG%%listG'%"vG%'symbolG%¶mG6&%#IBG%"iG% "kG%"rG6#%enCopyright~(C)~2005~by~Anna~Fabianska.~All~rights~reserved.G6"C)@$2" "#9#>8'-%=Involutive/InvolutiveOptionsG6$Q)rationalF39&>8$-%;Involutive/Involut iveBasisG6$-%2Involutive/AddRhsG6#9$7#9%>8&""!?(8%"""FP-%%nopsG6#FA%%trueG@$/-% $absG6#-%1QuillenSuslin/LCG6$-%$lhsG6#&FA6#FOFJFPC$>FLFO>FOFQ@$/FLFMC&@$F6-F<6$ F>F:-%&printG6%%coCheck~if~the~hight~of~the~ideal~generated~by~the~leading~coef ficients~ofGFH%^qis~greater~then~the~Krull~dimension~of~the~ring~of~coefficient s.~See~Lemma~10.5~Vaserstein,~Suslin.G-%(WARNINGG6#%=Fail~to~find~~monic~elemen t.GO7"@$F6FcoO6$-Fhn6#&FA6#FL-%$rhsGFdpF3F3F3F3 M7R0 I8QuillenSuslin/HorrocksNf*6&'%#ffG%%listG'%$MaxGF''%$varGF'%¶mG64%"fG%"LG% "TG%%lastG%%varcG%$MAXG%"rG%#fmG%"NG%"sG%"iG%"mG%"jG%$lcMG%$dlcG%$LCMG%#SLG%#ft G6#%enCopyright~(C)~2005~by~Anna~Fabianska.~All~rights~reserved.G6"C2>8$9$>8&-& %.LinearAlgebraG6#%/DiagonalMatrixG6#7#-%"$G6$"""-%%nopsG6#FE>8'&9&6#!"">8(&FZ6 #;FS!"#@$2""%9#-%&printG6&%TConsider~the~polynomials~as~polynomials~in~variable GFX%gnand~with~coefficients~with~the~polynomial~ring~in~variables:GFhn>8*-%2Inv olutiveOptionsG6$Q)rationalFB9'@%0Fhn7">8)-%0InvolutiveBasisG6$9%Fhn>Fap-Fcp6$F ep7#%$_T_G@$F^oC%-Fbo6$Q$MAXFBFap-%(WARNINGG6#%_rIt~will~not~be~tested~here~if~ the~ideal~is~maximal~in~the~given~ring~of~coefficients.~Please~check~it~on~your ~own...G-%(WarningG6#%Lwe~set~Max=[0]~for~the~computation~in~QQ[x]G-Fio6$F[pFgo >8-""!>8%-%$mapG6$f*6#%"aGFB6$%)operatorG%&arrowGFB@%2F\r-%'degreeG6$FFT#F\r-%( ReduceFG6&FFT%T(T*FBFB6*F1FXF3FapF+FZF,F\pFE?(8.FSFSFT%%trueG@$0&F^r6#FfsF\r@%/ -%(DenomOfGFVFS@%/F[rF\r>F[rFfs@$2-F[s6#&FEF[t-F[s6#&FE6#F[r>F[rFfsC$>F[rFfs>Ff sFT@$0F[rF\rC(>&FH6$F[rF[r*$FjtFfn>8,FI?(FfsFSFSFTFgs>&Fhu6$F[rFfs,$FgtFfn>&Fhu FeuFS>FH-%".G6$FHFhuO-%)simplifyG6#FH@$F^oC$-Fbo6$%Zthe~row~should~have~an~elem ent~monic~in~the~last~variableGFX-Fbo6$Q"fFBFE@%-%(IsMonicG6$FEFXC'>FhuFI>Fhu&- %*ReduceDegG6%FEFX.%%flagG6#""#>FH-Ffv6#Fav>FE-F`r6$f*FcrFBFerFB-Ffv6#FFFBFBFB& -%(convertG6$-Fbv6$-%'MatrixGFgxFH%)listlistG6#FS@%F\x@%F^oC$-Fbo6$Qgnthe~row~w as~reduced,~do~the~computation~for~the~reduced~row:FBFE>FH-Fbv6$FH-%*HorrocksNG 6'-FfvFVFepFZF\p%$strG>FH-Fbv6$FH-F\z6&F^zFepFZF\pC)>8/&&-Fbw6%FEFXF\pF]xF]x@$F ^oC$-Fbo6#%6SuslinLemma~neccesaryG-Fbo6$Q4the~monic~componentFB&FE6#Fgz>81-F`r6 $f*6#F8FBFerFB-F_s6&FFT$T&%&falseGFBFB6&F)FepF+FZFE>&Fg[lFe[lF\r>F[rF\r?(FfsFSF SFTFgs@$0&Fg[lF[tF\rC$>F[rFfs>FfsFT@%FauC0?(FfsFSFSFTFgs@$30FfsFgz0FfsF[rC$>80F fs>FfsFT>FhuFI@$F^oC$-Fbo6&Q'monic:FBFd[lQ0invertible~lc:~FBFjt-Fbo6%Q1Suslin~L emma~forFBFd[lFjt>847#-%,SuslinLemmaG6&Fd[lFjtFX-F[s6$&Fg[lF[uFX>&Fhu6$FgzFe]l& Fb^lFay>&Fhu6$F[rFe]l&Fb^lF]x@$F^o-Fbo6$Q'SUSLINFBFb^l>FHF`x>85-F`r6$f*FcrFBFer FBFfxFBFBFBFhx>FhuFI>&Fhu6$Fe]lFe]l-Ffv6#*$-Ffv6#-%#LCG6$&Fh_l6#Fe]lFXFfn>FHF`x >Fh_l-F`r6$f*FcrFBFerFBFfxFBFBFBFhx@%F^o>FH-Fbv6$FH-F\z6'-Ffv6#Fh_lFepFZF\pF_z> FH-Fbv6$FH-F\z6&FealFepFZF\pC$-Fbo6#QEThe~row~f~seems~to~be~NOT~unimodularFBO-F J6#7#-FQ6$F\rFTC&@$F^o-Fbo6#Qgp3.~test~if~one~of~the~leading~coefficients~of~th e~elements~is~invertible~in~the~localisationFB>Fg[l-F`r6$f*F[\lFBFerFB-F_s6&-Ff `lF\sFasFbsFcsFBFBFdsFE?(FfsFSFSFTFgs@$0-Ffv6#Fh\lF\r@%Fau@$2-F[s6$FgtFX-F[s6$F jtFX>F[rFfs>F[rFfs@%FauC)@$F^o-Fbo6$FjtQZhas~a~leading~coefficient~invertible~i n~the~localisation:FB>FHFI>Fdu-Ffv6#*$-Ffv6#-Ff`lF]dlFfn>Fh_l-F`r6$f*FcrFBFerFB FfxFBFBFB&-Fjx6$-Fbv6$-F_yFVFHF`yFay@$F^oC$-Fbo6$QAft~is~monic~in~the~last~vari ableFB-%(collectG6$-Ffv6#&Fh_lF[uFX-Fbo6$Q#LCFB-Ffv6#-Ff`l6$FbflFX>FEFh_l@%F^oC $Fey>FHFiy>FHFazC$-%&ERRORG6$%ZFail~to~find~a~monic~component~of~f~in~the~last~ variable!GFXOFablOFevFBFBFBFB M7R0 I6QuillenSuslin/IsMonicf*6%%"FG%$VarG%$strG6'%"fG%$varG%"iG%"jG%"MG6#%enCopyrig ht~(C)~2005~by~Anna~Fabianska.~All~rights~reserved.G6"C'@%-%%typeG6$9$%%listG>8 $F6>F97#F6@%-F46$9%F7>8%F?>FA7#F?>8(7"?(8&"""FI-%%nopsG6#FA%%trueG?(8'FIFI-FK6# F9FM@$/-%$absG6#-%)simplifyG6#-%1QuillenSuslin/LCG6$&F96#FO&FA6#FHFI@%0FEFF>FE6 $FE7%7$FgnFinFOFH>FEF_o@%F\o@%2""#9#O6$FMFEOFMO%&falseGF0F0F0F0 M7R0 I1QuillenSuslin/LMf*6$%"fG%"vG6"6#%enCopyright~(C)~2004~by~Anna~Fabianska.~All~ rights~reserved.GF'C$@$/9$""!OF.-%'RETURNG6#)9%-%'degreeG6$F-F4F'F'F'F' M7R0 I6QuillenSuslin/ReduceFf*6&%"bG'%"MG%%listG'%$varGF(%¶mG6&%"rG%"cG%"pG%"iG6 #%enCopyright~(C)~2005~by~Anna~Fabianska.~All~rights~reserved.G6"C%@%2""$9#>8&9 '>F:%%trueG@%/-%)whattypeG6#9$F(C$>8%7#-%"$G6#;"""-%%nopsGFB?(8'FLFLFMF=@%0*$-% &denomG6#&FC6#FP""#FL@%/-%8QuillenSuslin/ReduceModG6&FT9%9&F:""!-%&ERRORG6$FTQU ~This~term~cannot~be~reduced~modulo~M:~Division~by~0F3>&FFFX*&-Fgn6&-%)simplify G6#-%&numerGFVFinFjnF:FL-Fgn6&-Ffo6#FTFinFjnF:!"">Fao-Fgn6&FWFinFjnF:@%0*$-FUFB FYFL@%/-Fgn6&FepFinFjnF:F[o-F]o6$FepF_o>FF*&-Fgn6&-FioFBFinFjnF:FLFhpF^p>FF-Fgn 6&FCFinFjnF:OFFF3F3F3F3 M7R0 I4QuillenSuslin/RowQQf*6#'%"fG%%listG6)%$minG%"jG%"nG%"iG%#M1G%#M2G%"PG6#%enCop yright~(C)~2006~by~Anna~Fabianska.~All~rights~reserved.G6"C,>8&-%%nopsG6#9$>8$% )infinityG?(8%"""F?F5%%trueG@$30&F96#F>""!2-%$absG6#FDF;C$>F;FH>8'F>@$/F;F<-%&E RRORG6#%6It~is~a~row~of~zeros!G>8(-&%.LinearAlgebraG6#%/DiagonalMatrixG6#7#-%"$ G6$F?F5>8)FW>&FV6$FNFN*$&F96#FN!""?(F>F?F?F5F@>&F\o6$FNF>,$FDFco>&F\oF_oF?@%/FN F?O-%)simplifyG6#-%".G6$FVF\oC$>8*-%@QuillenSuslin/PermutationMatrixG6%F?FNF5O- F_p6#-Fbp6%FVF\oFfpF2F2F2F2 M7R0 I9QuillenSuslin/testdeglocf*6&'%"fG%%listG'%%varsGF''%"PGF'%¶mG6,%"nG%"dG%" iG%"jG%"UG%%lastG%"MG%#IBG%"HG%"rG6#%enCopyright~(C)~2006~by~Anna~Fabianska.~Al l~rights~reserved.G6"C'>8$-%%nopsG6#9$>8)&9%6#!"">8--%=Involutive/InvolutiveOpt ionsG6$Q)rationalF:9'?(8&"""FQF=%%trueGC$>8%-%&numerG6#&FA6#FP@&3/-%'degreeG6$F YFC""!0-%;Involutive/InvolutiveBasisG6$7$-%#opG6#9&,&FQFQ*&%$_T_GFQFUFQFG7$-Fbo 6#FEFgo7#FQC)>8(-&%.LinearAlgebraG6#%/DiagonalMatrixG6#7#-%"$G6$FQF=>&F^p6$FPFP *$FYFG>8*F_p?(8'FQFQF=FRC$>&F^q6$FPF`q,$&FA6#F`qFG>&F^qF[qFQ>8,-%)simplifyG6#-% ".G6$F^pF^q@&/FN%&falseG@$/FUFQ>FUF[o/-Fin6#FUF[o>FUF[oO6$F[rFU/FPF=C$-%&printG 6#Q7no~invertible~elementsF:O6$7"F[o-F^o6$FMFIF:F:F:F: M7R0 I@QuillenSuslin/NormalizationStepf*6''%"FG%%listG'%$varGF''%%NVARGF'%$parG%$opt G6:%%nvarG%)IMOutputG%"iG%"jG%"nG%#npG%&alphaG%#SUG%$ISUG%$FMIG%#suG%$isuG%"fG% #nsG%#FsG%"mG%"uG%"qG%"aG%#qsG%¶mG%$dnsG%%dFslG%"MG6#%enCopyright~(C)~2005~ by~Anna~Fabianska.~All~rights~reserved.G6"C&@%0&9"6#!""Q%lastFI>8$9&>FS7$&FTFO- %#opG6#&FT6#;"""!"#@$0-%%nopsG6#9%-F]o6#FS-%&ERRORG6#%`pThe~number~of~the~new~v ariables~and~the~number~of~the~old~variables~are~not~the~same!G@%29#""%>88%%tru eG>F[p9'@'/F[pF\pC$-%)userinfoG6%""$%,QSAlgorithmG%6normalization~over~QQG-%BQu illenSuslin/NormalizationStepQQG6%9$F_oFS3/-%)whattypeG6#F[p%(integerG-%(isprim eGF`qC%-Fcp6&FepFfp%Tnormalization~over~a~finite~field~of~characteristicGF[p-%& printG6$FgqF[p-%BQuillenSuslin/NormalizationStepFFG6&F[qF_oFSF[pC1-Fcp6%FepFfp% 6normalization~over~ZZG>8(-F]o6#F[q>8+7#-%"$G6$FhnF\o>8,Fhr?(8&FhnFhnF\oF\pC$>& Fgr6#F_s/&F_oFcs&FSFcs>&F]sFcs/FfsFes>8%7#-%6QuillenSuslin/IsMonicG6%F[qF_oQ$st rFI@%/&F[t6#FhnF\pC(>8'&&F[t6#""#Fjt>F_s&Fit6#Fep>8)&F[q6#Fgt>8*-%@QuillenSusli n/PermutationMatrixG6%FgtFcrFcr@$0F_sFhnC&>&FgrFdt/&F_oFdtFfs>Fbs/Fes&FSFdt>&F] sFdt/FfsF^v>Fhs/FavFesO6%FduFgrF]sC6>8--%:QuillenSuslin/FindMonicInGF]r@%/F[w7" -Fiq6#Q7should~never~happen???FIC'>F`u&F[wFdt>85&F[wFjt>8.&F[wF^u>8/&F[w6#Fio@$ 3/F[p%&falseG-%'memberG6$Fhn-%$mapG6$f*6#%"rGFI6$%)operatorG%&arrowGFI-%$absGFe rFIFIFI<#-FY6#FhwC$>Fdu-&%.LinearAlgebraG6#%/DiagonalMatrixG6#7#-Fjr6$FhnFcr@$4 F[p?(F_sFhnFhnFcrF\p@$/-Fby6#&FhwFcsFhnC&?(FgtFhnFhnFcrF\p>&Fdu6$FgtF_s&FhwFbu> 8;-Ffu6%F_sFcrFcr>F_sFcrO6%-%)simplifyG6#-%".G6$FduF`[lF[xF^x-Fiq6$Q"FFIF[q?(F_ sFhnFhnFcrF\p@&/&F[qFcs""!C(>80F[q>&Ff\lFcs&F[q6#Fcr>Ff\l&Ff\lFfn>F`[lFa[l>F[w- F]w6&Ff\lF_oFSF[p>F_sFcr/F_sFcrC$-Fiq6#Q4Changed~on~10.06.08FI?(FgtFhnFhnFcrF\p C'-FiqFbu>Ff\l-Fix6$f*6#F1FIF^yFI@$0F[qT#&T&FerFIFI6&F2FgtF&F[q7#-Fjr6#;FhnFdr- Fiq6$.Ff\lFf\l>F[wF_]l@&0F[wF`wC%>F`[l-&Fjy6#%*SubMatrixG6%-&Fjy6#%/IdentityMat rixGFj\l7#-Fjr6#;FhnFcr7$-FY6#-Fix6$f*F^^lFIF^yFI@$F`^lF[qFIFI6$F2FgtFe^lFgt-Fi q6$Q"MFIF`[l>FgtFcr/FgtFcrC$-%(WARNINGG6#%DNo~monic~element~found~in~the~idealG OF`w-Fiq6$Q"fFIFf\l-Fiq6$Q$FMIFIF[w>F`uFfw>FhwFiw>F[xF\x>F^xF_x-Fiq6(Q2f,~np,~q ,~su,~isuFIFf\lF`uFhwF[xF^x>82-%%subsG6$F[xF[q>F_bl-Fix6$f*6#F2FIF^yFI-Fg[lFerF IFIFIF_bl>87-Fabl6$F[xFhw>81-Fabl6$F[xF`u>89-%'degreeG6$F^clFav>8:-Fdcl6$&F_blF OFav@%2FgclFbcl>83Fc\l>F^dl,(FgclFhnFbclFPFhnFhn>FgrF[x>F]sF^x-Fiq6$Q"mFIF^dl>8 4-Fix6$f*6#%"bGFIF^yFI*&F[qFhn)&Fa^lFdtT%FhnFIFI6&F/FSF>F^dlFjbl-Fiq6$Q"uFIFgdl >Fdu-Fiy6#7#-Fjr6$FhnFdr@%/FdrF[u>&Fdu6$FhnF[uFgdl?(F_sFhnFhn,&FdrFhnFPFhnF\p>& Fdu6$F_sFdr&FgdlFcs-Fiq6#Fdu>Fdu-Fg[l6#-Fj[l6$F`[l-Fabl6$F]sFduOFhvFIFIFIFI M7R0 I?QuillenSuslin/IsParkNormalizedf*6$%"aG'%$varG%%listG6,%+normalizedG%"lG%"pG%# coG%#deG%"cG%#dpG%"dG%"iG%"jG6#%enCopyright~(C)~2006~by~Anna~Fabianska.~All~rig hts~reserved.G6"C$@%/-%)simplifyG6#9$""!>8$%%trueGC)>F@%&falseG>8+-%'degreeG6$F =&9%6#""">8(7">8'FP>8&F:?(F6FMFMF60FTF>C'>8*-FH6$FTFJ>8)-%&coeffG6%FTFJFY>FR7$- %#opG6#FR-F;6#Fgn>FO7$-F^o6#FOFY>FT-F;6#,&FTFM*&FgnFM)FJFYFM!""?(8,FMFM-%%nopsG F_oFA?(8-FMFM-F`p6#FKFA@%0-FH6$&FR6#F^p&FK6#Fbp-%;QuillenSuslin/LowestDegreeGFh pC%-%)userinfoG6'""$%1IsParkNormalizedG%0the~coefficientGFip%:is~not~a~Laurent~ monomialG>F^pF_p>FbpFcp@$3/FbpFcp/F^pF_p>F@FAOF@F6F6F6F6 M7R0 IFQuillenSuslin/ParkMatrixNormalizationf*6%%"MG'%$varG%%listG'%%varnGF(6-%#MMG% +normalizedG%(degreesG%$ROWG%$COLG%"aG%"lG%"iG%"jG%"sG%#isG6#%enCopyright~(C)~2 006~by~Anna~Fabianska.~All~rights~reserved.G6"C.@$0-%%nopsG6#9%-F>6#9&-%&ERRORG 6#%cpThe~list~of~new~variables~and~the~list~of~the~old~variables~should~have~th e~same~length!G>8%%&falseG>8'-&%.LinearAlgebraG6#%-RowDimensionG6#9$>8(-&FO6#%0 ColumnDimensionGFR>8*""!>8-7#-%"$G6$"""F=>8.Fin?(8,F]oF]oF=%%trueGC$>&Fhn6#Fao/ &F@Ffo&FCFfo>&F_oFfo/FioFho>8&-%$mapG6$f*6#F1F96$%)operatorG%&arrowGF9@$0FSFfn- %'degreeG6$FST$F9F96$F'F@-F`p6$f*FcpF9FdpF9-%#opGFRF9F9F9<#-Fbq6#-%(convertG6$F S%)listlistG@$/F^p<#FfnC$-%&printG6#Q2a~constant~matrixF9O6&FSFhnF_oFen?(F9F]oF ]oF94FIC(>&Fhn6#F]o/&F@Fir&FCFir>&F_oFir/F\sF[s?(Fao""#F]oF=FboC$>Feo/Fho*&FioF ]o)F\s)Fen,&FaoF]o!""F]oF]o>F[p/Fio*&FhoF]o)F[s,$FgsFisF]o>8$-%)simplifyG6#-%%s ubsG6$FhnFS?(8+F]oF]oFLFbo?(FaoF]oF]oFUFboC$>8)&F`t6$FhtFao@%4-%?QuillenSuslin/ IsParkNormalizedG6$F\uFCC$>FhtFL>FaoFU@$3/FhtFL/FaoFU>FIFbo@$Fer>Fen,&FenF]oF]o F]oO6&-F`p6$f*FcpF9FdpF9-%(collectG6$FS&F\qFirF9F96$F*FCF`tFhnF_oFenF9F9F9F9 M7R0 I8QuillenSuslin/Horrockspf*6&'%#ffG%%listG'%$MaxGF''%$varGF'%¶mG65%"fG%"LG% "TG%%lastG%%varcG%$MAXG%"rG%#fmG%"NG%"sG%"iG%"mG%"jG%$lcMG%"FG%$dlcG%$LCMG%#SLG %#ftG6#%jnCopyright~(C)~2005-2007~by~Anna~Fabianska.~All~rights~reserved.G6"C6> 8$9$>8&-&%.LinearAlgebraG6#%/DiagonalMatrixG6#7#-%"$G6$"""-%%nopsG6#FF>8'&9&6#! "">8(&Fen6#;FT!"#@$2""%9#-%&printG6&%TConsider~the~polynomials~as~polynomials~i n~variableGFY%gnand~with~coefficients~with~the~polynomial~ring~in~variables:GFi n>8*-%=Involutive/InvolutiveOptionsG6$Q)rationalFC9'@%0Fin7">8)-%;Involutive/In volutiveBasisG6$9%Fin>Fbp-Fdp6$Ffp7#%$_T_G@$F_oC%-Fco6$Q$MAXFCFbp-%(WARNINGG6#% _rIt~will~not~be~tested~here~if~the~ideal~is~maximal~in~the~given~ring~of~coeff icients.~Please~check~it~on~your~own...G-%(WarningG6#%Lwe~set~Max=[0]~for~the~c omputation~in~QQ[x]G-Fjo6$F\pFho>8-""!>8%-%$mapG6$f*6#%"aGFC6$%)operatorG%&arro wGFC@%2F]r-%'degreeG6$FGT#F]r-%6QuillenSuslin/ReduceFG6&FGT%T(T*FCFC6*F1FYF3Fbp F+FenF,F]pFF?(8.FTFTFU%%trueG@$0&F_r6#FgsF]r@%/-%6QuillenSuslin/DenomOfGFWFT@%/ F\rF]r>F\rFgs@$2-F\s6#&FFF\t-F\s6#&FF6#F\r>F\rFgsC$>F\rFgs>FgsFU@$0F\rF]rC(>&FI 6$F\rF\r*$F[uFgn>8,FJ?(FgsFTFTFUFhs>&Fiu6$F\rFgs,$FhtFgn>&FiuFfuFT>FI-%".G6$FIF iuO-%)simplifyG6#FI@$F_o-Fco6#Qgp2.~test~if~one~of~the~leading~coefficients~of~ the~elements~is~invertible~in~the~localizationFC>81-Far6$f*6#F8FCFfrFC-F`s6&-%1 QuillenSuslin/LCGF]sFbsFcsFdsFCFCFesFF?(FgsFTFTFUFhs@$0-Fgv6#&F^wF\tF]r@%Fbu@$2 -F\s6$FhtFY-F\s6$F[uFY>F\rFgs>F\rFgs@$FbuC(@$F_oC$-Fco6#Q'SECONDFC-Fco6$F[uQZha s~a~leading~coefficient~invertible~in~the~localization:FC>FIFJ>Feu-Fgv6#*$-Fgv6 #-FfwFcxFgn>86-Far6$f*FdrFCFfrFC-Fgv6#FGFCFCFC&-%(convertG6$-Fcv6$-%'MatrixGFWF I%)listlistG6#FT@$F_oC$-Fco6$QAft~is~monic~in~the~last~variableFC-%(collectG6$- Fgv6#&FiyF\uFY-Fco6$Q#LCFC-Fgv6#-Ffw6$Fc[lFY>FFFiy@$F_oC%-Fco6#Q&THIRDFC-Fco6$% Zthe~row~should~have~an~element~monic~in~the~last~variableGFY-Fco6$Q#ffFCFG@%-% 6QuillenSuslin/IsMonicG6$FFFYC'>FiuFJ>Fiu&-%8QuillenSuslin/ReduceDegG6%FFFY.%%f lagG6#""#>FI-Fgv6#Fbv>FF-Far6$f*FdrFCFfrFCF]zFCFCFC&-Faz6$-Fcv6$-FfzF^zFIFgzFhz @%Fc]l@%F_oC$-Fco6$Qgnthe~row~was~reduced,~do~the~computation~for~the~reduced~r ow:FCFF>FI-Fcv6$FI-%7QuillenSuslin/HorrocksG6'-FgvFWFfpFenF]p%$strG>FI-Fcv6$FI- F]_l6&F__lFfpFenF]pC)>8/&&-Fi\l6%FFFYF]pFd]lFd]l@$F_oC$-Fco6#%6SuslinLemma~necc esaryG-Fco6$Q4the~monic~componentFC&FF6#Fh_l>F^w-Far6$f*FbwFCFfrFC-F`s6&FGT$T&F csFCFC6(F)FfpF+FenF,F]pFF>&F^wFf`lF]r>F\rF]r?(FgsFTFTFUFhs@$0F\xF]rC$>F\rFgs>Fg sFU@%FbuC0?(FgsFTFTFUFhs@$30FgsFh_l0FgsF\rC$>80Fgs>FgsFU>FiuFJ@$F_oC$-Fco6&Q'mo nic:FCFe`lQ0invertible~lc:~FCF[u-Fco6%Q1Suslin~Lemma~forFCFe`lF[u>857#-%:Quille nSuslin/SuslinLemmaG6&Fe`lF[uFY-F\s6$&F^wF\uFY>&Fiu6$Fh_lFbbl&F_clFhz>&Fiu6$F\r Fbbl&F_clFd]l@$F_o-Fco6$Q'SUSLINFCF_cl>FIFg]l>Fiy-Far6$f*FdrFCFfrFCF]zFCFCFCF]^ l>FiuFJ>&Fiu6$FbblFbbl-Fgv6#*$-Fgv6#-Ffw6$&Fiy6#FbblFYFgn>FIFg]l>Fiy-Far6$f*Fdr FCFfrFCF]zFCFCFCF]^l@%F_o>FI-Fcv6$FI-F]_l6'-Fgv6#FiyFfpFenF]pF`_l>FI-Fcv6$FI-F] _l6&F`flFfpFenF]pC$-Fco6#QEThe~row~f~seems~to~be~NOT~unimodularFCO-FK6#7#-FR6$F ]rFUC$-%&ERRORG6$%QNo~component~of~f~is~monic~in~the~last~variable!GFYOF\glOFfv FCFCFCFC M7R0 IFQuillenSuslin/ParkMatrixNormalisationf*6%%"MG'%$varG%%listG'%%varnGF(6-%#MMG% +normalisedG%(degreesG%$ROWG%$COLG%"aG%"lG%"iG%"jG%"sG%#isG6#%enCopyright~(C)~2 006~by~Anna~Fabianska.~All~rights~reserved.G6"C.@$0-%%nopsG6#9%-F>6#9&-%&ERRORG 6#%cpThe~list~of~new~variables~and~the~list~of~the~old~variables~should~have~th e~same~length!G>8%%&falseG>8'-&%.LinearAlgebraG6#%-RowDimensionG6#9$>8(-&FO6#%0 ColumnDimensionGFR>8*""!>8-7#-%"$G6$"""F=>8.Fin?(8,F]oF]oF=%%trueGC$>&Fhn6#Fao/ &F@Ffo&FCFfo>&F_oFfo/FioFho>8&-%$mapG6$f*6#F1F96$%)operatorG%&arrowGF9@$0FSFfn- %'degreeG6$FST$F9F96$F'F@-F`p6$f*FcpF9FdpF9-%#opGFRF9F9F9<#-Fbq6#-%(convertG6$F S%)listlistG@$/F^p<#FfnC$-%&printG6#Q2a~constant~matrixF9O6&FSFhnF_oFen?(F9F]oF ]oF94FIC(>&Fhn6#F]o/&F@Fir&FCFir>&F_oFir/F\sF[s?(Fao""#F]oF=FboC$>Feo/Fho*&FioF ]o)F\s)Fen,&FaoF]o!""F]oF]o>F[p/Fio*&FhoF]o)F[s,$FgsFisF]o>8$-%)simplifyG6#-%%s ubsG6$FhnFS?(8+F]oF]oFLFbo?(FaoF]oF]oFUFboC$>8)&F`t6$FhtFao@%4-%?QuillenSuslin/ IsParkNormalisedG6$F\uFCC$>FhtFL>FaoFU@$3/FhtFL/FaoFU>FIFbo@$Fer>Fen,&FenF]oF]o F]oO6&-F`p6$f*FcpF9FdpF9-%(collectG6$FS&F\qFirF9F96$F*FCF`tFhnF_oFenF9F9F9F9 M7R0 I4QuillenSuslin/RowZZf*6#'%"fG%%listG6#%"iG6#%enCopyright~(C)~2006~by~Anna~Fabi anska.~All~rights~reserved.G6"C'@$0-%6QuillenSuslin/DenomOfG6#9$"""-%&ERRORG6#% <It~is~not~a~row~of~integersG-%=Involutive/InvolutiveOptionsG6$Q)rationalF,%&fa lseG@$0-%;Involutive/InvolutiveBasisG6$F37#%$_T_G7#F4-F66#%TThis~row~is~not~uni modular~in~the~ring~of~integers!G-F:6$F<%%trueG-%4QuillenSuslin/easyfG6%F37"F=F ,F,F,F, M7R0 I:QuillenSuslin/QSAlgorithmf*6&'%"FG<$%'MatrixG%%listG'%$varGF)%"pG%*lastparamG 6"6#%enCopyright~(C)~2006~by~Anna~Fabianska.~All~rights~reserved.GF.@%/-%)whatt ypeG6#9$F)-%'RETURNG6#-%4QuillenSuslin/RowQSG6#9"-F86#-%7QuillenSuslin/MatrixQS GF<F.F.F.F. M7R0 I8QuillenSuslin/HEURISTICf*6&'%"fG%%listG'%$varGF'%¶mG%*lastparamG6,%"gG%"h G%"EG%"FG%"GG%"HG%"MG%"nG%"iG%*infolevelG6#%enCopyright~(C)~2006~by~Anna~Fabian ska.~All~rights~reserved.G6"C(>8+-%%nopsG6#9$@%2""#9#>8$-%;QuillenSuslin/RightI nverseG6%F@9%9&>FF-FH6$F@FJ@$2""$FD>&8-6#%*HEURISTICGFQ>8&-%7QuillenSuslin/test EASYG6&F@FFFJFK@$/FX%&falseGC&@%FB>8%-FH6%FFFJFK>F\o-FH6$FFFJ@$FP>FSFQ>8(-FZ6&F FF\oFJFK@%/FeoFhn>FXFeoC'>8)-&%.LinearAlgebraG6#%*TransposeG6#-&F`p6#%.MatrixIn verseG6#Feo>8'-%)simplifyG6#-%".G6$-%'MatrixGF?F]p>8*-&F`p6#%/DiagonalMatrixG6# 7#-%"$G6$"""F<?(8,FCF^rF<%%trueG>&Fdq6$F^rF`r,$&FjpFdr!"">FX-F\q6#-F_q6$F]pFdqO FXF9F9F9F9 M7R0 I7QuillenSuslin/Horrocksf*6&'%#ffG%%listG'%$MaxGF''%$varGF'%¶mG65%"fG%"LG%" TG%%lastG%%varcG%$MAXG%"rG%#fmG%"NG%"sG%"iG%"mG%"jG%$lcMG%"FG%$dlcG%$LCMG%#SLG% #ftG6#%jnCopyright~(C)~2005-2007~by~Anna~Fabianska.~All~rights~reserved.G6"C6-% )userinfoG6&""$%,QSAlgorithmG%0~Maximal~ideal:G9%@%/-%)whattypeG6#9'%(integerG@ %-%(isprimeGFPC$>8$-%$mapG6$f*6#F8FC6$%)operatorG%&arrowGFC-%$modG6$9$T$FCFC6$F ,FQF^o>8*-%=Involutive/InvolutiveOptionsG6$Q%charFCFQ-%&ERRORG6#QjnExpecting~a~ prime~number~as~a~characteristic~of~a~finite~field!FCC$>FXF^o>Fbo-Fdo6$Q)ration alFCFQ>8&-&%.LinearAlgebraG6#%/DiagonalMatrixG6#7#-%"$G6$"""-%%nopsG6#FX>8'&9&6 #!"">8(&Fdq6#;F]q!"#@$2""%9#-%&printG6&%TConsider~the~polynomials~as~polynomial s~in~variableGFbq%gnand~with~coefficients~with~the~polynomial~ring~in~variables :GFhq@%0Fhq7">8)-%;Involutive/InvolutiveBasisG6$FKFhq>Fjr-F\s6$FK7#%$_T_G@$F^rC %-Fbr6$Q$MAXFCFjr-%(WARNINGG6#%_rIt~will~not~be~tested~here~if~the~ideal~is~max imal~in~the~given~ring~of~coefficients.~Please~check~it~on~your~own...G-Fis6#%L we~set~Max=[0]~for~the~computation~in~QQ[x]G@%FM-Fdo6$FfoFbo-Fdo6$F`pFbo>8-""!> 8%-FZ6$f*6#%"aGFCFhnFC@%2Fft-%'degreeG6$F^oT#Fft-%6QuillenSuslin/ReduceFG6&F^oT %T(T*FCFC6*F1FbqF3FjrF+FdqF,FQFX?(8.F]qF]qF^q%%trueG@$0&Fht6#F\vFft@%/-%6Quille nSuslin/DenomOfGF`qF]q@%/FetFft>FetF\v@$2-Fau6#&FXFav-Fau6#&FX6#Fet>FetF\vC$>Fe tF\v>F\vF^q@$0FetFftC(@%FM>&Fbp6$FetFet-F\o6$*$F`wFfqFQ>F[xF_x>8,Fcp?(F\vF]qF]q F^qF]v>&Fbx6$FetF\v,$F]wFfq>&FbxF\xF]q>Fbp-%".G6$FbpFbxO-%)simplifyG6#Fbp@$F^r- Fbr6#Qgp2.~test~if~one~of~the~leading~coefficients~of~the~elements~is~invertibl e~in~the~localizationFC>81-FZ6$f*FgnFCFhnFC-Feu6&-%1QuillenSuslin/LCGFbuFguFhuF iuFCFCFjuFX?(F\vF]qF]qF^qF]v@$0-F`y6#&FgyFavFft@%Fgw@$2-Fau6$F]wFbq-Fau6$F`wFbq >FetF\v>FetF\v@$FgwC(@$F^rC$-Fbr6#Q'SECONDFC-Fbr6$F`wQZhas~a~leading~coefficien t~invertible~in~the~localization:FC>FbpFcp@%FM>F[x-F\o6$*$-F`y6#-F^zF[[lFfqFQ>F [x-F`y6#F]\l>86-FZ6$f*F\uFCFhnFC-F`y6#F^oFCFCFC&-%(convertG6$-F\y6$-%'MatrixGF` qFbp%)listlistG6#F]q@$F^rC$-Fbr6$QAft~is~monic~in~the~last~variableFC-%(collect G6$-F`y6#&Fe\lFawFbq-Fbr6$Q#LCFC-F`y6#-F^z6$F_^lFbq>FXFe\l@$F^rC%-Fbr6#Q&THIRDF C-Fbr6$%Zthe~row~should~have~an~element~monic~in~the~last~variableGFbq-Fbr6$Q#f fFCF^o@%-%6QuillenSuslin/IsMonicG6$FXFbqC'>FbxFcp>Fbx&-%8QuillenSuslin/ReduceDe gG6%FXFbq.%%flagG6#""#>Fbp-F`y6#F[y>FX-FZ6$f*F\uFCFhnFCFi\lFCFCFC&-F]]l6$-F\y6$ -Fb]lFj\lFbpFc]lFd]l@%F_`l@%F^rC$-Fbr6$Qgnthe~row~was~reduced,~do~the~computati on~for~the~reduced~row:FCFX>Fbp-F\y6$Fbp-F"6'-F`yF`qFKFdqFQ%$strG>Fbp-F\y6$Fbp- F"6&FjalFKFdqFQC)>8/&&-Fe_l6%FXFbqFQF``lF``l@$F^rC$-Fbr6#%6SuslinLemma~neccesar yG-Fbr6$Q4the~monic~componentFC&FX6#Fcbl>Fgy-FZ6$f*FgnFCFhnFC-Feu6&F^oF_oT&FhuF CFC6(F)FKF+FdqF,FQFX>&FgyFaclFft>FetFft?(F\vF]qF]qF^qF]v@$0FdzFftC$>FetF\v>F\vF ^q@%FgwC0?(F\vF]qF]qF^qF]v@$30F\vFcbl0F\vFetC$>80F\v>F\vF^q>FbxFcp@$F^rC$-Fbr6& Q'monic:FCF`clQ0invertible~lc:~FCF`w-Fbr6%Q1Suslin~Lemma~forFCF`clF`w>857#-%:Qu illenSuslin/SuslinLemmaG6&F`clF`wFbq-Fau6$&FgyFawFbq>&Fbx6$FcblF\el&FielFd]l>&F bx6$FetF\el&FielF``l@$F^r-Fbr6$Q'SUSLINFCFiel>FbpFc`l>Fe\l-FZ6$f*F\uFCFhnFCFi\l FCFCFCFi`l>FbxFcp@%FM>&Fbx6$F\elF\el-F\o6$*$-F`y6#-F^z6$&Fe\l6#F\elFbqFfqFQ>Feg l-F`y6#Figl>FbpFc`l>Fe\l-FZ6$f*F\uFCFhnFCFi\lFCFCFCFi`l@%F^r>Fbp-F\y6$Fbp-F"6'- F`y6#Fe\lFKFdqFQF[bl>Fbp-F\y6$Fbp-F"6&F^ilFKFdqFQC$-Fbr6#QEThe~row~f~seems~to~b e~NOT~unimodularFCO-Fdp6#7#-F[q6$FftF^qC$-Fho6$%QNo~component~of~f~is~monic~in~ the~last~variable!GFbqOFjilOF_yFCFCFCFC M7R0 I5QuillenSuslin/iseasyf*6%'%"fG%%listG'%$VARGF'%¶mG61%$parG%"rG%$varG%"nG%# IBG%"SG%#SiG%"gG%"jG%"iG%#SIG%"eG%$IBeG%&alphaG%%answG6#%enCopyright~(C)~2005~b y~Anna~Fabianska.~All~rights~reserved.G6"C/>82%&falseG@%2""#9#>8$9&>FG%%trueG>8 %-%=Involutive/InvolutiveOptionsG6$Q)rationalF=FG@%/9%7">8&7#%$_T_G>FVFS>8(-%?I nvolutive/InvolutiveBasisFastG6$-%2Involutive/AddRhsG6#9$FV@%0-%$lhsG6#&Fen6#"" "FdoC$@$FC-FN6$FPFL-%&ERRORG6#%:the~row~is~not~unimodularGC&>8+-%$rhsGFao>8'-%% nopsG6#F_p?(8-FdoFdoFcpFJ@$/&F_p6#Fhp""!C%-%&printG6#Q<One~component~0,~try~eas ysrF=>F@FJ>FhpFcp@%/FGFJ?(FhpFdoFdoFcpFJ@$/-%'degreeG6$F[qFVF]qC%-F`q6#QEOne~in vertible~component~,~try~easygF=>F@FJ>FhpFcp?(FhpFdoFdoFcpFJ@$/-%$absG6#F[qFdoC %F^r>F@FJ>FhpFcp@$/F@FJC$FgoO6$F@F_p-%(WARNINGG6#%KIt~can~take~long:~compute~Sy zygy~Module~S:G>8)-%8Involutive/SyzygyModuleG6$F\oFV-F`q6#Ffs?(FhpFdoFdoFcpFJC, >8*-%$mapG6$f*6#%"aGF=6$%)operatorG%&arrowGF=&F\o6#T#F=F=6$F5FhpFfs-F`q6%Q&i,~S iF=FhpF_t>8.-%;Involutive/InvolutiveBasisG6$-Fjn6#F_tFV-F`q6$Q#SIF=Fau-F`qFhr>8 /-%8Involutive/PolInvReduceG6%7#F[qFauFV-F`q6$Q"eF=F\v-F`q6$F\vQVsoll~was~inver tierbares~sein!~ueberpruefen~mit~~IB...F=>80-Fcu6$7#F\vFV@$5/Fhv7#Fdo/Fhv7#F]qC '-F`q6#Q(TRUE!!!F=>81-Fap6#F\v-F`q6%Q)alpha,~SF=FgwFfsFgoOFJFgoOF@F=F=F=F= M7R0 I:QuillenSuslin/Laurent2Polf*6%'%#LLG%%listG'%$varGF''%'newvarGF'6:%"LG%"vG%"iG %%varnG%#suG%$isuG%"pG%#apG%#DeG%#vsG%#vdG%"EG%"mG%"dG%"wG%%susuG%&isusuG%$vchG %%ivchG%"FG%$vstG%"PG%"jG%#djG6#%enCopyright~(C)~2006~by~Anna~Fabianska.~All~ri ghts~reserved.G6"C5>8'-%$mapG6$f*6#F/FG6$%)operatorG%&arrowGFG-%$catG6%%"_G9$FV FGFGFG9%>89-&%.LinearAlgebraG6#%/DiagonalMatrixG6#7#-%"$G6$"""-%%nopsG6#FW@%/&F W6#F_o""!C$?(8&""#F_oF`o%%trueG@$0&FW6#FjoFgoC'>&FZ6$F_oF_oFgo>&FZ6$FjoFjoFgo>& FZ6$F_oFjoF_o>&FZ6$FjoF_oF_o>FjoF`o>8$&-%(convertG6$-%)simplifyG6#-%".G6$-%'Mat rixGFboFZ%)listlistGFfo>F`qFW>F`qFaq>6%&8%Ffo8(8)-%CQuillenSuslin/LaurentNormal izationG6%&F`qFfoFXFJ>Fcr-%%subsG6$FdrF`q>8*-%;QuillenSuslin/LowestDegreeG6$Fbr &FJFfo>8+-%&coeffG6%FbrFcsF_s>8,-Ffn6#7%*&Fes!"")Fcs,$F_sF_tF_o*&FesF_o)FcsF_sF _o-F]o6$F_o,&-Fao6#FcrF_o!"#F_o>8--Ffq6#-Fiq6$-F\r6#7#FcrFjs>8.F[u>8/-Ffn6#7#-F ]o6$F_o-Fao6#F`q?(FjoF[pF_oFgtF\pC%>82-Ffq6#&FduFjp>81-Fas6$FavFcs?(FGF_oF_oFG1 FfvFgoC(>80Fgu>&F]wFjp,$*&-Fgs6%FavFcsFfvF_o)FcsFfvF_oF_t>Fdu-Ffq6#-Fiq6$FduF]w >FavFbv>FfvFgv>Ffu-Ffq6#-Fiq6$FfuF]w>Fdu-FL6$f*6#%"aGFGFPFG-%(collectG6$FW&T#Ff oFGFG6$F0FJ-Ffq6#-Fiq6$F[uFfu>6%878384-%8QuillenSuslin/ParkStep3G6%FduFJ9&>85-F \s6$FdyFdr>86-F\s6$FerFey>Fcy&-Fcq6$FcyF]rFfoO6&Fcy-Ffq6#-F\s6$Fer-Ffq6#-Fiq6%F ZFjsFfuF[zF_zFGFGFGFG M7R0 IBQuillenSuslin/RedRightInverseFastf*6%'%"fG%%listG'%$VARGF'%"pG6)%"gG%"rG%$var G%#grG%#IBG%"SG%#ISG6#%enCopyright~(C)~2005~by~Anna~Fabianska.~All~rights~reser ved.G6"C(@$2""#9#>8%-%=Involutive/InvolutiveOptionsG6$Q)rationalF59&@%/9%7">8&7 #%$_T_G>FGFD>8(-%?Involutive/InvolutiveBasisFastG6$-%2Involutive/AddRhsG6#9$FG@ %0-%$lhsG6#&FL6#"""FenC$@$F8-F>6$F@F<-%&ERRORG6#%:the~row~is~not~unimodularGC'> 8$-%$rhsGFX-%(WARNINGG6#%Ncompute~the~SyzygyModule,~it~may~take~long...G>8)-%8I nvolutive/SyzygyModuleG6$FSFG>8*-FN6$FhoFG>8'-%8Involutive/PolInvReduceG6%F`oF] pFG@$F8FhnOFapF5F5F5F5 M7R0 I:QuillenSuslin/FindEasyRowf*6%'%"MG%'MatrixG'%$varG%%listG%¶mG6(%"mG%"nG%" iG%"jG%"PG%"pG6#%enCopyright~(C)~2006~by~Anna~Fabianska.~All~rights~reserved.G6 "C(>8%-&%.LinearAlgebraG6#%-RowDimensionG6#9$>8$-&F;6#%0ColumnDimensionGF>>8)7# -%"$G6$""!F8?(8&"""FOF8%%trueG?(8'FOFOFAFP@(/-%$absG6#&F?6$FNFRFOC%>&FG6#FN""$> FRFA>FNF839&/-%'degreeGFWFL>Ffn-%$maxG6$Ffn""#/FXFL>Ffn-Fbo6$FfnFO>8(-Fbo6#-%#o pG6#FG?(FNFOFOF8FP@$/FfnFjoC$OFN>FNF8F5F5F5F5 M7R0 I>QuillenSuslin/WeakLeftCoprimef*6$'%"PG%'MatrixG'%$varG%%listG6(%"qG%"rG%"DG%" NG%"RG%"LG6#%]oCopyright~(C)~2006~by~Alban~Quadrat~and~A.~F.~All~rights~reserve d.G6"C)>8$-&%.LinearAlgebraG6#%-RowDimensionG6#9$>8%-&F:6#%0ColumnDimensionGF=> 8&-&F:6#%/DiagonalMatrixG6#7#-%"$G6$-%(DenomOfGF=F7>8'-%)simplifyG6#-%".G6$FFF> >8(-F'6#-%$<|gr>G6$FF,$FS!""@%2""#9#>8)-%)LinBose1G6%Fen9%%$optG>Fbo-Fdo6$FenFf o-%'RETURNG6#7$-&F:6#%*SubMatrixG6%-%(convertG6$&Fbo6#F_oF';"""F7Fip,$-F`p6%Fdp Fip;,&F7FjpFjpFjp,&F7FjpF@FjpF\oF4F4F4F4 M7R0 IIQuillenSuslin/Transformation2ReducedFormf*6%%"eG'%"LG%%listG'%"vGF(6%%#IBG%#N FG%&IBInLG6#%enCopyright~(C)~2007~by~Anna~Fabianska.~All~rights~reserved.G6"C&> 8$-%;Involutive/InvolutiveBasisG6$-%2Involutive/AddRhsG6#9%%$varG>8%-%8Involuti ve/PolInvReduceG6&9$F4F<Q"CF1>8&-%'MatrixG6#-%$mapG6$f*6#%"iGF16$%)operatorG%&a rrowGF1-%$rhsG6#&T#6#FBF1F16$F,F47#-%"$G6#;"""-%%nopsG6#F4O6$-%)simplifyG6#-%". G6$-FG6#&F>6#""#FE-FGF:F1F1F1F1 M7R0 IBQuillenSuslin/BasisOfKernelModulef*6%'%"RG%'MatrixG'%$varG%%listG%¶mG6$%# R2G%"BG6#%enCopyright~(C)~2007~by~Anna~Fabianska.~All~rights~reserved.G6"C'@$/9 &%&falseG-%(WARNINGG6#%HNot~implemented~yet,~computation~over~QG@$-%;QuillenSus lin/IsZeroMatrixG6#9$C$-F86#%ioThe~module~is~defined~as~a~kernel~of~a~zero~matr ix,~thus~isomorphic~to~D^|fr1xq|hrGO-&%.LinearAlgebraG6#%/IdentityMatrixG6#-&FG 6#%-RowDimensionGF>>8$-F'6#-%8Involutive/SyzygyModuleG6$F?9%>8%-%AQuillenSuslin /BasisOfImageModuleG6%FPFVF5OFXF1F1F1F1 M7R0 I;QuillenSuslin/IsZeroMatrixf*6#'%"MG%'MatrixG6"6#%enCopyright~(C)~2007~by~Anna ~Fabianska.~All~rights~reserved.GF(@%/-%#opG6#<#-F.6#-%$mapG6$f*6#%"rGF(6$%)ope ratorG%&arrowGF(-F.6#9$F(F(F(-%(convertG6$F>%)listlistG""!O%%trueGO%&falseGF(F( F(F( M7R0 I4QuillenSuslinA/initf*6"F$6#%jnCopyright~(C)~2003-2007~by~Anna~Fabianska.~All~ rights~reserved.GF$-%3QuillenSuslin/initG6#9"F$F$F$F$ M7R0 ICQuillenSuslin/FindIrreducibleNotInf*6&'%"pG%&primeG'%"SG%$setG%"vG%$strG6,%*N FaktorenG%"iG%"jG%"kG%"lG%&irredG%*FaktorenpG%$FakG%"dG%"PG6#%enCopyright~(C)~2 005~by~Anna~Fabianska.~All~rights~reserved.G6"C*>8*f*6#%"xGF:6$%)operatorG%&arr owGF:-%$mapG6$f*6#F/F:FAF:&9$6#"""F:F:F:&-%$modG6$-%(FactorsG6#FJT$6#""#F:F:6$F &FJ>8$-FE6$f*F?F:FAF:-%#opG6#-T#FSF:F:6$F4F=9%@$2""$9#-%&printG6$Q*NFaktorenF:F Y>8&""!>8-9&?(F:FLFLF:3-%#inG6$-FO6$FjoFJFY2FgoFJC$>Fjo,&FjoFL!""FL>Fgo,&FgoFLF LFL@$/FgoFJC'>8)%&falseG?(8%FLFL-%%nopsG6#FY%%trueG?(8'FLFLFbqFeqC$>8+-F=6#-FO6 $,&*&&FY6#FaqFL&FY6#FgqFLFLFgpFLFJ?(8(FLFL-Fcq6#FjqFeq@$4-%&evalbG6#-F_p6$&Fjq6 #FfrFYC'>FjoF`s>FfrFgr>FgqFbq>FaqFbq>F^qFeq@$3F_o4F^q-Fco6#QZtwo:~find~irreduci ble~polynomials~over~FFp~with~degree...F:>8,FL?(F:FLFLF:FjsC%>Fjq-F=6#,&)F[p)FJ F_tFLF[pFgp?(FfrFLFLFgrFeq@$FjrC'>FjoF`s>FfrFgr>FgqFbq>FaqFbq>F^qFeq>F_t,&F_tFL FLFLOFjoF:F:F:F: M7R0 I7QuillenSuslin/IsUnimodf*6%'%"MG<$%'MatrixG%%listG'%$VARGF)%¶mG6&%"fG%"rG% #IBG%$varG6#%enCopyright~(C)~2003~by~Anna~Fabianska.~All~rights~reserved.G6"C)@ %/-%)whattypeG6#9$F(>8$-%8QuillenSuslin/MaxMinorsGF:>F=F;@$/-%%nopsG6#F="""C&@$ 529#""$/9&%%trueG@%/-%'degreeG6#&F=6#FF""!OFOO%&falseG@$/FNFZ@%/-%$absGFTFFOFOO FZ@%3/-F96#FN%(integerG-%(isprimeGFao@%/-%$modG6$FUFNFFOFOOFZ-%&ERRORG6#QjnExpe cting~a~prime~number~as~a~characteristic~of~a~finite~field!F4OQ#??F4@$2""#FK@%F _o@%Fco>8%-%=Involutive/InvolutiveOptionsG6$Q%charF4FNF\p>Fhp-Fjp6$Q)rationalF4 FN@%/9%7">8'7#%$_T_G>FfqFcq>8&-%;Involutive/InvolutiveBasisG6$F=Ffq@$Fcp@%F_o-F jp6$F\qFhp-Fjp6$F`qFhp@%/F[r7#FFOFOOFZF4F4F4F4 M7R0 I8QuillenSuslin/MaxMinorsf*6#'%"MG%'MatrixG6%%"cG%"rG%"sG6#%enCopyright~(C)~200 3~by~Anna~Fabianska.~All~rights~reserved.G6"C%>8$-&%.LinearAlgebraG6#%0ColumnDi mensionG6#9$>8%-&F46#%-RowDimensionGF7@%2F1F:-%$mapG6$f*6#F+F.6$%)operatorG%&ar rowGF.-%5QuillenSuslin/SubDetG6%T$F87#-%"$G6#;"""T%F.F.6&F&F8F)F1-&%)combinatG6 #%'chooseG6$7#-FO6#;FRF:F1-FB6$f*FEF.FFF.-FJ6%FLFMF8F.F.6&F&F8F*F:-FV6$7#-FO6#; FRF1F:F.F.F.F. M7R0 I@QuillenSuslin/PermutationMatrixf*6%%"iG%"kG%"nG6#%"PG6#%enCopyright~(C)~2005~ by~Anna~Fabianska.~All~rights~reserved.G6"C(>8$-&%.LinearAlgebraG6#%/DiagonalMa trixG6#7#-%"$G6$"""9&>&F/6$9$F?""!>&F/6$9%FDF@>&F/6$F?FDF:>&F/6$FDF?F:OF/F,F,F, F, M7R0 I8QuillenSuslin/ReduceModf*6&%"TG'%"MG%%listG'%$varGF(%¶mG6(%"tG%"rG%$VARG% #IBG%"aG%"cG6#%jnCopyright~(C)~2005-2007~by~Anna~Fabianska.~All~rights~reserved .G6"C'@%-%%typeG6$9$F(>8$F;>F=7#F;@%32""$9#/-%)whattypeG6#9'%(integerG@%5-%(isp rimeGFH/FI""!>8%-%=Involutive/InvolutiveOptionsG6$Q%charF5FI-%&ERRORG6#QjnExpec ting~a~prime~number~as~a~characteristic~of~a~finite~field!F5>FR-FT6$Q)rationalF 5FI@%2"""-%%nopsG6#9&C%>8&7$&F_o6#;F[o!"#7#&F_o6#!"">8'-%;Involutive/Involutive BasisG6%9%Fbo7$""%Fcp>8)-%$mapG6$f*6#F1F56$%)operatorG%&arrowGF5-%8Involutive/P olInvReduceG6&F;T#T%FbpF5F56&F0F]pF/Fbo-%)simplifyG6#F=C$>F]p-F_p6$FapF_o>Fep-F gp6$f*FjpF5F[qF5-F_q6%F;FaqT&F5F56&F0F]pF*F_oFdq@%FA-FT6$FVFR-FT6$FhnFR@%F8OFep O&Fep6#F[oF5F5F5F5 M7R0 I:QuillenSuslin/VarChangeZZf*6%%"PG'%$varG%%listG'%%nvarGF(60%)IMOutputG%"cG%"i G%'varneuG%"jG%#pjG%"mG%#suG%$isuG%$VARG%(PermvarG%"kG%"MG%%bestG6#%enCopyright ~(C)~2005~by~Anna~Fabianska.~All~rights~reserved.G6"C(>8+7#-%"$G6$"""-%%nopsG6# 9%>8,F@?(8&FDFDFE%%trueGC$>&F?6#FL/&FHFQ&9&FQ>&FJFQ/FTFS>8$-%6QuillenSuslin/IsM onicG6%9$FH%$strG@%/&FZ6#FDFMC'>FL&&FZ6#""#6#""$>FP/FS&FUF]o>&F?F]o/&FHF]oFT>&F JF]o/FhoFS>FW/FTF\pC&>80%)infinityG@%2Feo9#C$-%(WARNINGG6#%]oAll~permutations~o f~variables~will~be~tested,~which~may~take~long!G>8.-%9QuillenSuslin/PermOfList GFG>F_q7#FH?(8/FDFD-FF6#F_qFMC(>8-&F_q6#Feq?(FLFDFDFEFMC$>FP/&FjqFQFT>FW/FTFar> 8%7#-FB6$""!,&-FF6#FjqFDFDFD>&FerF]oFhn?(FLFDFDF[sFM>&Fer6#,&FLFDFDFD-%1Quillen Suslin/LCG6$&FerFQ&Fjq6#,$FL!""@%0-%$absG6#&Fer6#F[tFD@%3/FeqFfq/FdpFep-%&ERROR G6#%Hno~change~of~variables~over~ZZ~possibleG-F[qFitC%?(FLFcoFD,&-FF6#FerFDF[tF DFMC&>8(,&F_uFDFLF[t>8)-%)simplifyG6#-%%subsG6$F?&Fer6#Fcu>8*Fir?(F<FDFDF<0-F_t 6#-Fhu6#-Fes6$FfuFhoFDC'>F`v,&F`vFDFDFD>FP/Far,&)FhoF`vFDFTFD>FW/FT,&FarFD)&Fjq F]oF`vF[t>FfuFgu>Ffu-%(collectGFhv@$Fgp-%&printG6(Q$VARF<FjqQ"mF<F`vQ#suF<F?@$3 Fgp2F`vFdpC$>FdpF`v>817&FdpFjqF?FJ@$3Fgp2FdpFepC%-F[x6$Q%bestF<Ffx>F?&FfxFdo>FJ &Ffx6#""%O6$F?FJF<F<F<F< M7R0 IIQuillenSuslin/RepresentBasisInGeneratorsf*6$'%"LG%%listG'%"vGF'6$%#IBG%&IBInL G6#%enCopyright~(C)~2007~by~Anna~Fabianska.~All~rights~reserved.G6"C&>8$-%;Invo lutive/InvolutiveBasisG6$-%2Involutive/AddRhsG6#9$%$varG-%&printG6#F2>8%-%'Matr ixG6#-%$mapG6$f*6#%"iGF/6$%)operatorG%&arrowGF/-%$rhsG6#&T#F8F/F/6$F+F27#-%"$G6 #;"""-%%nopsGF=OF?F/F/F/F/ M7R0 I4QuillenSuslin/easygf*6&'%"fG%%listG'%$varGF'%¶mG%$strG6%%$parG%"gG%*infol evelG6#%enCopyright~(C)~2006~by~Anna~Fabianska.~All~rights~reserved.G6"C&@%2""# 9#>8$9&>F9%%trueG>8%-%;QuillenSuslin/RightInverseG6%9$9%F9@$2F7""%>&8&6#%&easyg G""$O-%8QuillenSuslin/testeasygG6&FBF>FCF9F2F2F2F2 M7R0 I4QuillenSuslin/IsInSf*6%%"fG'%"SG%%listG%¶mG6&%"iG%"jG%"qG%"nG6#%enCopyrig ht~(C)~2006~by~Anna~Fabianska.~All~rights~reserved.G6"C*@$0-%&denomG6#9$"""O3-F "6%-%&numerGF79%9&-F"6%F5F@FA@$/F8""!O%&falseG>8'-%%nopsG6#F@@$/F@7#F9@'FA@%/-% 'degreeGF7FFO%%trueGOFH/-%$absGF7F9OFWOFH@$FSC$-%)userinfoG6%""$%&IsInSG%/Test~ constantsG@)FAOFWFYOFW0-F66#-%)simplifyGF7F9OFHC%?(8$F9F9FJFW@$/&F@6#F[pF9C$>F[ pFJOFH?(F[pF9F9FJFW@$/-%$modG6$F8F^pFFC$>F[pFJOFWOFH-F[o6%F]oF^o%/Test~quotient sG?(F[pF9F9FJFWC&>8&-Fgo6#*&F8F9F^p!""-F[o6%F]oF^oFcq@$/FcqF9OFW@$3/-FU6#-F66#F cqFF-F"6%FcqF@FAC$>F[pFJOFWOFHF1F1F1F1 M7R0 I;QuillenSuslin/LowestDegreef*6$%#LLG%"vG6*%"LG%"dG%#deG%#coG%"pG%"cG%#ddG%#dpG 6#%enCopyright~(C)~2006~by~Anna~Fabianska.~All~rights~reserved.G6"C+>8$-%(colle ctG6$9$9%>8%-%'degreeG6$F5F:@$/F<%%FAILGC$-%&printG6#%?It~is~not~a~Laurent~poly nomialGOFB@$/F5""!O,$-F>6#F5!"">8&7">8'FS>8(F5?(F2"""FYF20FWFKC'>8+-F>6$FWF:>8) -%&coeffG6%FWF:Fgn>FU7$-%#opG6#FU-%)simplifyG6#F[o>FR7$-Fbo6#FRFgn>FW-Feo6#,&FW FY*&F[oFY)F:FgnFYFPO&FR6#FPF2F2F2F2 M7R0 IBQuillenSuslin/NormalisationStepQQf*6&'%"FG%%listG'%$varGF''%%NVARGF'%$optG6-% %nvarG%"iG%"jG%"sG%"kG%"nG%"dG%"NG%#SUG%$ISUG%"mG6#%enCopyright~(C)~2005~by~Ann a~Fabianska.~All~rights~reserved.G6"C/@%0&9"6#!""Q%lastF;>8$9&>FE7$&FFFA-%#opG6 #&FF6#;"""!"#@$0-%%nopsG6#9%-FU6#FE-%&ERRORG6#%`pThe~number~of~the~new~variable s~and~the~number~of~the~old~variables~are~not~the~same!G>8)-FU6#9$>8,7#-%"$G6$F PFT>8-F_o?(8%FPFPFT%%trueGC$>&F^o6#Ffo/&FWF[p&FEF[p>&FdoF[p/F^pF]p>8+-&%.Linear AlgebraG6#%/DiagonalMatrixG6#7#-Fao6$FPFin>8'""!>8(F_q>8*%)infinityG?(FfoFPFPFT Fgo?(8&FPFPFinFgo@$/-%'degreeG6#-%)simplifyG6#-%1QuillenSuslin/LCG6$&F\o6#FgqF] pF_q@$2-F[r6#FcrFcqC%>FcqFgr>F^qFgq>FaqFfo@%2F_qF^qC'>&Fcp6$F^qF^q*$-Far6$&F\o6 #F^q&FW6#FaqFB>&F^o6#FP/&FWF\t&FEFis>&F^oFis/Fhs&FEF\t>&FdoF\t/FctFhs>&FdoFis/F _tF^tC&?(FfoFPFPFinFgo@$2-F[r6#&F\oF[pFcqC$>FcqF^u>F^qFfo>8.,&FcqFPFPFP?(Ffo""# FPFTFgoC$>Fjo/F]p,&F^pFP)Fct)Feu,&FTFPFfoFBFP>F`p/F^p,&F]pFP)F^tF^vFB>Fas*$-Far 6$-%%subsG6$F^oFfsFctFBO6%FcpF^oFdoF;F;F;F; M7R0 I8QuillenSuslin/ReduceDegf*6$'%"fG%%listG'%"vG%'symbolG6.%#lcG%#ldG%"kG%"iG%"jG %#drG%#dkG%"TG%"PG%"RG%(reducedG%#fnG6#%enCopyright~(C)~2005~by~Anna~Fabianska. ~All~rights~reserved.G6"C)>8+-&%.LinearAlgebraG6#%/DiagonalMatrixG6#7#-%"$G6$"" "-%%nopsG6#9$>8$-%$mapG6$f*6#%"aGF:6$%)operatorG%&arrowGF:-%)simplifyG6#-%1Quil lenSuslin/LCG6$FLT$F:F:6$F)9%FL>8%-FP6$f*FSF:FUF:-%'degreeGFgnF:F:FinFL>8.%&fal seG>8&""!?(8'FHFHFI%%trueG@$/-%$absG6#-FY6#&FN6#FioFH@&/FfoFgo>FfoFio2-Fao6$&FL FcpFjn-Fao6$&FL6#FfoFjn>FfoFio@%FepC%-%&printG6#%BThis~row~has~no~monic~compone nts!G@$2""#9#-%'assignG6$&9"6#""$FcoO6$FLF=C'>8*F[q?(FioFHFHFIFjoC$>8,Fgo@$0Fio FfoC&>8--FY6#Fjp>8)-Fao6$F^sFjn?(F:FHFHF:2,&FerFH!""FHFbsC&>FcoFjo>Fir-FY6#,&Fi rFH*(-%&coeffG6%F^sFjnFbsFH)Fjn,&FbsFHFerFhsFH&FNF^qFHFH>F^s-FY6#,&FjpFH*&FirFH F]qFHFhs>FbsFcs>&F=6$FfoFio,$-FY6#FirFhs@$/FcoFjoC$>8/&-%(convertG6$-FY6#-%".G6 $-%'MatrixGFKF=%)listlistG6#FH>F=-F^v6$F=&-F"6$FfuFjn6#Fhq@$FgqFjqO6$FguF=F:F:F :F: M7R0 I9QuillenSuslin/testSeasygf*6('%"fG%%listG'%"gGF''%$varGF'%"SG%$parG%$strG6,%"n G%"iG%"jG%"kG%#M1G%#M2G%"PG%"sG%"rG%¶mG6#%enCopyright~(C)~2006~by~Anna~Fabi anska.~All~rights~reserved.G6"C-@%2""%9#>8-9(>FC%%trueG>8$-%%nopsG6#9$@%/FC%&fa lseG-%)userinfoG6%""$%'SeasygG%(over~ZZG-FQ6%FSFT%(over~QQG>8+-%)simplifyG6#-%( convertG6$-%$zipG6%f*6$%"aG%"bGF<6$%)operatorG%&arrowGF<*&FL"""9%FfoF<F<F<FLFgo %"+G>8(-&%.LinearAlgebraG6#%/DiagonalMatrixG6#7#-%"$G6$FfoFH>8)F[p-FQ6%FSFT%1te st~1~componentG?(8%FfoFfoFHFF@$-%4QuillenSuslin/IsInSG6%&Fgo6#F[q9'FCC'-FQ6&FS% +SHeuristicGF`q%+invertibleG?(8'FfoFfoFHFFC$>&Fjo6$FiqF[q*&&Fgo6#FiqFfoFZ!"">&F fp6$F[qFiq,$&FLF`rFar>&Ffp6$F[qF[qFfo@%0F[qFfoC$>8*-%@QuillenSuslin/Permutation MatrixG6%FfoF[qFHO-Ffn6#-%".G6%FjoFfpF^sO-Ffn6#-Ffs6$FjoFfp>F[qFH-FQ6%FSFT%2tes t~2~componentsG?(F[qFfoFfoFHFF?(8&,&F[qFfoFfoFfoFfoFHFFC(>FjoF[p>FfpF[p-FQ6%FSF T%)invertInG>8,-%;QuillenSuslin/InvertibleInG6&7$F`q&Fgo6#FctFbq9&FC@$3/F[q,&FH FfoFarFfo/F\u7"C$-FQ6%FSFT%,NOT~SO~EASYGOFO@$0F\uFiuC->FjoF[p?(FiqFfoFfoFHFF>F\ rF^r>&Fjo6$F[qFct,$*(&&F\u6#""#F\wFfoFZFfo&F\u6#FfoFarFar>&Fjo6$FctFct*(&F[wF_w FfoFZFfoF^wFar>FfpF[p?(FiqFfoFfoFHFF>FcrFer>FhrFfo>&FfpFgv-Ffn6#,$*(,&*&&FLFaqF foFjvFfoFar*&&FLFbuFfoFdwFfoFfoFfoFZFfoF^wFarFar@%F[sC$>F^sF_sOFcsOFis>F[qFH>Fc tFHOFisF<F<F<F< M7R0 I7QuillenSuslin/LinBose2f*6$'%"RG%'MatrixG'%$varG%%listG6)%$extG%$MinG%"UG%"BG% "pG%"qG%#RpG6#%]oCopyright~(C)~2006~by~Alban~Quadrat~and~A.~F.~All~rights~reser ved.G6"@%-&%'linalgG6#%'iszeroG6#-%(convertG6$-%8Involutive/SyzygyModuleG6$9$9% %&arrayGC%>8$-%?Involutive/PolTorsionfreeParamG6$-&%.LinearAlgebraG6#%*Transpos eG6#FCFD>8%-%AInvolutive/PolShortestResolutionG6$&FH6#"""FD@'2FY-%%nopsG6#FSC$- %(WARNINGG6#%NThe~conditions~for~LinBose2~are~not~fulfilledG-%'RETURNG6#7"/-%;I nvolutive/PolRightInverseG6$&FSFXFD%%FAILGC$FjnF^oC(>8)-&FN6#%-RowDimensionG6#F fo>8(-&FN6#%0ColumnDimensionGF`p>8&-%:QuillenSuslin/QSAlgorithmG6%FfoFD%%trueG> 8'-&FN6#%*SubMatrixG6%Fhp;FYFbp;,&F[pFYFYFYFbp>8*-F`q6%-%:Involutive/PolLeftInv erseG6$F^qFD;FY,&-FdpFQFY-F]pFQ!"";FYF`r-F_o6#-F'6#7$7#FC7#FhqC$-F[o6#%@The~mat rix~is~not~full~row~rankGF^oF5F5F5F5 M7R0 I4QuillenSuslin/easy2f*6%'%"fG%%listG'%$varGF'%¶mG6-%"gG%"nG%"kG%"iG%"aG%#M 1G%#M2G%"rG%#grG%#ggG%"GG6#%enCopyright~(C)~2005~by~Anna~Fabianska.~All~rights~ reserved.G6"C4@%2""#9#C&>8--%;QuillenSuslin/RightInverseG6%9$9%9&-%&printG6#FA> 8,-%>QuillenSuslin/RedRightInverseGFD-FI6$Q*red,~gr:=F9FL>FA-FC6$FEFF>8%-%%nops G6#FE-FI6#Q'weiterF9@$F<>8+-%=Involutive/InvolutiveOptionsG6$Q)rationalF9FG>8.7 $FAFL-FI6$Q"GF9F_o>8$FL-FI6#Feo>8&"""?(F9FjoFjoF930-%;Involutive/InvolutiveBasi sG6$7#&Feo6#FioFF7#Fjo2FioFV>Fio,&FioFjoFjoFjo@$/FioFV@$F]pC$@$F<-F[o6$F]oFin-% 'RETURNG6#Q`qit~is~not~so~easy~-~none~of~the~components~of~the~inverse~of~the~| +row~is~invertible~in~the~given~ringF9>8)-%'MatrixG6#-%$<|gr>G6%-&%.LinearAlgeb raG6#%*TransposeG6#-Ffq6#7$-&F]r6#%/DiagonalMatrixG6#7#-%"$G6$Fjo,&FioFjo!""Fjo -&F]r6#%/ConstantMatrixG6%""!F]s,(FVFjoFioF^sFjoFjo-%$<,>G6#-%#opGFgo-F\r6#-Ffq 6#7$-F`s6%Fds,&FVFjoFioF^sFio-Fer6#7#-F[s6$FjoFbt>8(7#-F[s6$FdsFV?(8'FjoFjoFV%% trueG>&Fit6#F^u,$&FEFbuF^s>&FitFcpFds>8*,&-F\r6#-Ffq6#7%-F`s6%FdsFVF]s-Fgs6#-Fj s6#Fit-F`s6%FdsFVFbtFjo-Fer6#7#-F[s6$FjoFVFjo@$F<F]qO-%)simplifyG6#-%".G6$FdqFh uF9F9F9F9 M7R0 I:QuillenSuslin/FindMonicInf*6&'%"fG%%listG'%$varGF''%%nvarGF'%¶mG6;%)IMOut putG%"jG%"iG%"nG%"qG%#SUG%$ISUG%"rG%&IMIBfG%$IBfG%$parG%"pG%$moqG%&BLOCKG%%IBfb G%"BG%$IBBG%#BBG%%degrG%%lastG%&firstG%"dG%#moG%"QG%$FMIG6#%enCopyright~(C)~200 5~by~Anna~Fabianska.~All~rights~reserved.G6"C/>8)7#-%"$G6$"""-%%nopsG6#9%>8*FM? (8&FQFQFR%%trueGC$>&FL6#FY/&FUFhn&9&Fhn>&FWFhn/F[oFjn>8$-%6QuillenSuslin/IsMoni cG6%9$FUQ"pFI@$/&Fao6#FQFZC)>8%&&Fao6#""#F`p>FY&F_p6#""$>8'&Feo6#F]p>8(7#-FO6$" "!-FS6#Feo>&F[qFipFQ@$0FYFQC&>&FLFjo/&FUFjoF[o>Fgn/Fjn&F\oFjo>&FWFjo/&%%varnGFj oFjn>F^o/F]rFjnO6&FgpF[qFLFW@%29#""%>8.FZ>F\s9'>8+-%=Involutive/InvolutiveOptio nsG6$Q)rationalFIF\s>8--%;Involutive/InvolutiveBasisG6$-%2Involutive/AddRhsGFaq FU>8,7#-Fco6%-%$mapG6$f*6#%"aGFI6$%)operatorG%&arrowGFI-%$lhsGFaqFIFIFIFfsFUQ$s trFI@%/&F]tFjoFZC*>F]p&&F]tF`pF`p>FY&FcuFdp>Fgp-F[u6#&FfsFip>F[q-%$rhsGFhu@$/F` qFQ>F[q7#F[q@$FeqC&>FhqFiq>FgnF\r>F_rFdr>F^o/F[oFjq@$2FepFir-Fbs6$FdsF`sOFfrC%> 8;F\q@$/F\sFZ-%(WARNINGG6#%FNo~VarChange~over~QQ~implemented~yet!G@%/FRFQC$>8<- %<QuillenSuslin/FindMonic1VarG6%FeoFjqF\s@%0Fjw7"C&>Fgp&FjwFjo>F[q&FjwF`p>8/Fgp >80F[qC$@$FivFjvOF`xC1>87&FU6#!"">817$7#F_y&FU6#;FQ!"#>85-Fhs6%FjsFdy7$FjrFjr>8 2-Fbt6$f*FetFIFgtFIFjtFIFIFIF\z>83-Fbt6$f*FetFIFgtFI-%1QuillenSuslin/LCG6$FeoT# FIFI6$FAF_yFaz>86-Fbt6$f*FetFIFgtFI-%'degreeGF\[lFIFIF^[lFaz>89-%$maxG6#-%#opG6 #F`[l>8:-Fbt6$f*6#F0FIFgtFI)F][l,&T%FQ&T'FaqFbyFIFI6(FAF_yFCFg[lF@F`[l7#-FO6#;F Q-FSF]\l>Fjw-F"6&FfzFgy&F\oFhyF\s@%F_xC$>FgpFcx>F[qFexC$@$FivFjvOF`x>Fix-%$zipG 6%f*6$%"xG%"yGFIFgtFI*&FeoFQFUFQFIFIFIF_\lF[q>Fgx-%(convertG6$-F\^l6%f*F_^lFIFg tFIFb^lFIFIFIFazFix%"+G>Fgx-%)simplifyG6#Fgx>6$FLFW-%:QuillenSuslin/VarChangeZZ G6%FgxFUF\o>F_w-Fe^l6$-F\^l6%f*F_^lFIFgtFI-Fbt6$f*FetFIFgtFI*&T$FQFeoFQFIFI6$F` ^lFeo-F\vFTFIFIFIFixF\zFj^l@$FivFjv-%&printG6#FjwO6&FgxF_wFLFWFIFIFIFI M7R0 I1QuillenSuslin/LCf*6$%#ffG%"vG6#%"fG6#%enCopyright~(C)~2004~by~Anna~Fabianska. ~All~rights~reserved.G6"C$>8$-%)simplifyG6#9$@%2""!-%'degreeG6$F.9%-%'RETURNG6# -%&coeffG6%F.F9F6-F;6#F.F+F+F+F+ M7R0 I?QuillenSuslin/WLCFactorizationf*6$'%"PG%'MatrixG'%$varG%%listG6(%"qG%"rG%"DG% "NG%"RG%"LG6#%]oCopyright~(C)~2006~by~Alban~Quadrat~and~A.~F.~All~rights~reserv ed.G6"C*>8$-&%.LinearAlgebraG6#%-RowDimensionG6#9$>8%-&F:6#%0ColumnDimensionGF= >8&-&F:6#%/DiagonalMatrixG6#7#-%"$G6$-%6QuillenSuslin/DenomOfGF=F7>8'-%)simplif yG6#-%".G6$FFF>>8(-F'6#-%$<|gr>G6$FF,$FS!""@%2""#9#>8)-%7QuillenSuslin/LinBose1 G6%Fen9%%$optG>Fbo-Fdo6$FenFfo@$/Fbo7"C$-%(WARNINGG6#%Xthe~transfer~matrix~does ~not~admit~a~WLC~factorization.G-%'RETURNG6#F]p-Fdp6#7$-&F:6#%*SubMatrixG6%-%(c onvertG6$&Fbo6#F_oF';"""F7Fcq,$-Fjp6%F^qFcq;,&F7FdqFdqFdq,&F7FdqF@FdqF\oF4F4F4F 4 M7R0 I.QuillenSuslin=6"%&falseGE\[lP%&PatchGf*F$F$6#%enCopyright~(C)~2004~by~Anna~Fa bianska.~All~rights~reserved.GF$C$30%:QuillenSuslin/initializedG.%%trueG0-%3Qui llenSuslin/initGF$""!-%4QuillenSuslin/PatchG6#9"F$F$F$%,OneLocalSolGf*F$F$6#%en Copyright~(C)~2006~by~Anna~Fabianska.~All~rights~reserved.GF$C$F,-%:QuillenSusl in/OneLocalSolGF7F$F$F$%,Laurent2PolGf*F$F$F;F$C$F,-%:QuillenSuslin/Laurent2Pol GF7F$F$F$%2NormalizationStepGf*F$F$6#%enCopyright~(C)~2005~by~Anna~Fabianska.~A ll~rights~reserved.GF$C$F,-%@QuillenSuslin/NormalizationStepGF7F$F$F$%6BasisOfC okernelModuleGf*F$F$F;F$C$F,-%DQuillenSuslin/BasisOfCokernelModuleGF7F$F$F$%1Se tLastVariableAGf*F$F$FGF$C$F,-%?QuillenSuslin/SetLastVariableAGF7F$F$F$%(DenomO fGf*F$F$6#%enCopyright~(C)~2008~by~Anna~Fabianska.~All~rights~reserved.GF$C$F,- %6QuillenSuslin/DenomOfGF7F$F$F$%1IsParkNormalizedGf*F$F$F;F$C$F,-%?QuillenSusl in/IsParkNormalizedGF7F$F$F$%)DenomOfAGf*F$F$FGF$C$F,-%7QuillenSuslin/DenomOfAG F7F$F$F$%9InjectiveParametrizationGf*F$F$F;F$C$F,-%GQuillenSuslin/InjectivePara metrizationGF7F$F$F$%3BasisOfImageModuleGf*F$F$6#%enCopyright~(C)~2007~by~Anna~ Fabianska.~All~rights~reserved.GF$C$F,-%AQuillenSuslin/BasisOfImageModuleGF7F$F $F$%,SuslinLemmaGf*F$F$FGF$C$F,-%:QuillenSuslin/SuslinLemmaGF7F$F$F$%5LaurentNo rmalizationGf*F$F$F;F$C$F,-%CQuillenSuslin/LaurentNormalizationGF7F$F$F$%,QSAlg orithmGf*F$F$F;F$C$F,-%:QuillenSuslin/QSAlgorithmGF7F$F$F$%*MaximalZZGf*F$F$FGF $C$F,-%8QuillenSuslin/MaximalZZGF7F$F$F$%1WLCFactorizationGf*F$F$6#%]oCopyright ~(C)~2006~by~Alban~Quadrat~and~A.~F.~All~rights~reserved.GF$C$F,-%?QuillenSusli n/WLCFactorizationGF7F$F$F$%*CofactorsGf*F$F$FGF$C$F,-%8QuillenSuslin/Cofactors GF7F$F$F$%*MaximalFFGf*F$F$FGF$C$F,-%8QuillenSuslin/MaximalFFGF7F$F$F$%8ParkMat rixNormalizationGf*F$F$F;F$C$F,-%FQuillenSuslin/ParkMatrixNormalizationGF7F$F$F $%)LinBose2Gf*F$F$FcqF$C$F,-%7QuillenSuslin/LinBose2GF7F$F$F$%#LCGf*F$F$F)F$C$F ,-%1QuillenSuslin/LCGF7F$F$F$%+SHeuristicGf*F$F$F;F$C$F,-%9QuillenSuslin/SHeuri sticGF7F$F$F$%(IsMonicGf*F$F$FGF$C$F,-%6QuillenSuslin/IsMonicGF7F$F$F$%2ReduceB asisDegreeGf*F$F$F;F$C$F,-%@QuillenSuslin/ReduceBasisDegreeGF7F$F$F$%#LMGf*F$F$ F)F$C$F,-%1QuillenSuslin/LMGF7F$F$F$%)HorrocksGf*F$F$6#%jnCopyright~(C)~2005-20 07~by~Anna~Fabianska.~All~rights~reserved.GF$C$F,-%7QuillenSuslin/HorrocksGF7F$ F$F$%*OneStepQSGf*F$F$F;F$C$F,-%8QuillenSuslin/OneStepQSGF7F$F$F$%-RightInverse Gf*F$F$F)F$C$F,-%;QuillenSuslin/RightInverseGF7F$F$F$%)LinBose1Gf*F$F$FcqF$C$F, -%7QuillenSuslin/LinBose1GF7F$F$F$%*ReduceDegGf*F$F$FGF$C$F,-%8QuillenSuslin/Re duceDegGF7F$F$F$%4BasisOfKernelModuleGf*F$F$FhoF$C$F,-%BQuillenSuslin/BasisOfKe rnelModuleGF7F$F$F$%/CompleteMatrixGf*F$F$F;F$C$F,-%=QuillenSuslin/CompleteMatr ixGF7F$F$F$%*MaximalQQGf*F$F$FGF$C$F,-%8QuillenSuslin/MaximalQQGF7F$F$F$%*MaxMi norsGf*F$F$6#%enCopyright~(C)~2003~by~Anna~Fabianska.~All~rights~reserved.GF$C$ F,-%8QuillenSuslin/MaxMinorsGF7F$F$F$%-LowestDegreeGf*F$F$F;F$C$F,-%;QuillenSus lin/LowestDegreeGF7F$F$F$%1RightInverseFastGf*F$F$FGF$C$F,-%?QuillenSuslin/Righ tInverseFastGF7F$F$F$%*IsRegularGf*F$F$FGF$C$F,-%8QuillenSuslin/IsRegularGF7F$F $F$%5BasisOfCoimageModuleGf*F$F$FhoF$C$F,-%CQuillenSuslin/BasisOfCoimageModuleG F7F$F$F$%-InvertibleInGf*F$F$F;F$C$F,-%;QuillenSuslin/InvertibleInGF7F$F$F$%&Is InSGf*F$F$F;F$C$F,-%4QuillenSuslin/IsInSGF7F$F$F$%1WRCFactorizationGf*F$F$FcqF$ C$F,-%?QuillenSuslin/WRCFactorizationGF7F$F$F$%*OneStepEYGf*F$F$F;F$C$F,-%8Quil lenSuslin/OneStepEYGF7F$F$F$%0RCFactorizationGf*F$F$FhoF$C$F,-%>QuillenSuslin/R CFactorizationGF7F$F$F$%)IsUnimodGf*F$F$FawF$C$F,-%7QuillenSuslin/IsUnimodGF7F$ F$F$%.ParkAlgorithmGf*F$F$F;F$C$F,-%<QuillenSuslin/ParkAlgorithmGF7F$F$F$%0LCFa ctorizationGf*F$F$FhoF$C$F,-%>QuillenSuslin/LCFactorizationGF7F$F$F$%*Heuristic Gf*F$F$F;F$C$F,-%8QuillenSuslin/HeuristicGF7F$F$F$F$ M7R0 I7QuillenSuslin/MatrixQSf*6%'%"MG%'MatrixG'%$varG%%listG%"pG64%"nG%"mG%"iG%"eG% #URG%"UG%"RG%"AG%#UAG%#MpG%"PG%#MPG%#QAG%"EG%"TG%¶mG%$PERG%#MMG6#%enCopyrig ht~(C)~2005~by~Anna~Fabianska.~All~rights~reserved.G6"C&@%2""#9#>839&>FH%%trueG >8$-&%.LinearAlgebraG6#%-RowDimensionG6#9$>8%-&FP6#%0ColumnDimensionGFS@%/FM""" C$@%2FF""%>80-%4QuillenSuslin/RowQSG6%&-%(convertG6$FT%)listlistG6#Fgn9%FH>F]o- F_o6&FaoFgoFH&9"6#F[o@%0F]o7"C'>8--%)simplifyG6#-%".G6$FTF]o>8.-&FP6#%/Diagonal MatrixG6#7$""!-%"$G6$Fgn,&FVFgn!""Fgn?(8&FgnFgnFVFK@$/&Fcp6$FgnFiqFgnC&>&F[q6$F iqFiqFbq>&F[q6$FiqFgnFgn>&F[qF]rFgn>FiqFV>8)-Fep6#-Fhp6$F]oF[qOFirOF`p@%/FMFfqC %-%)userinfoG6%""$%,QSAlgorithmG%RFind~the~last~row~by~computing~the~maximal~mi norsG>F]o-%9QuillenSuslin/AddLastRowG6#F\p@%F_pC$>Fir-&FP6#%.MatrixInverseG6#F] oOFirOF`pC5@$4-%7QuillenSuslin/IsUnimodG6%FTFgoFHC$-%(WARNINGG6#%jrThe~matrix~i s~not~unimodular...~To~check~if~the~module~defined~as~the~cokernel~is~free~use: ~QuillenSuslin/BasisOfCokernelModuleGOF`p@%2-FFFAF[o>8'-%:QuillenSuslin/FindEas yRowG6%FTFgoFI>FguFgn@%0FguFgnC%>84-%@QuillenSuslin/PermutationMatrixG6%FgnFguF M-Fds6%FfsFgs%EPermutatation~the~rows~of~the~matrixG>85-Fhp6$F`vFT>FhvFT>8*-&FP 6#%*SubMatrixG6%FhvFgn7#-Fdq6#;FgnFV-Fds6&FfsFgs%6Algorithm~for~the~rowGF]w>8(- F_o6%&-Fco6$F]wFeoFfoFgoFH@$/F[xF`pOF`p>Fcp-Fep6#-Fhp6$FhvF[x>F[qF\q?(FiqFgnFgn FVFK@$F[rC&>F`rFbq>FcrFgn>FfrFgn>FiqFV>8/-Fep6#-Fhp6$FcpF[q>8+-F_w6%Fby7#-Fdq6# ;FEFM7#-Fdq6#;FEFV>8,-F"6%FhyFgoFH>F]o-F]q6#7$-F'6#7#7#FgnFdz>Fir-Fep6#-Fhp6%F[ xF[qF]o>81-Fep6#-Fhp6$FhvFir>82-F]q6#7#-Fdq6$FgnFV?(FiqFEFgnFMFK>&F[\lFdr,$&Fe[ lFdrFgq@%F]vO-Fep6#-Fhp6%FirF[\l-F]q6#7$F`v-F]q6#7#-Fdq6$Fgn,&FVFgnFMFgqO-Fep6# -Fhp6$FirF[\lFAFAFAFA M7R0 I8QuillenSuslin/OneStepQSf*6&'%"FG%%listG'%$varGF'%¶mG%"AG6-%"fG%$VARG%%var nG%$MAXG%"HG%#UUG%"rG%"NG%#SUG%$ISUG%"QG6#%enCopyright~(C)~2006~by~Anna~Fabians ka.~All~rights~reserved.G6"C%-%)userinfoG6%""$%*OneStepQSG%fpIf~the~row~is~"eas y"~this~procedure~is~not~needed.~See~Logar,~Sturmfels~Patching~procedure.G@$/9% 7"C$-%&printG6#QIno~step~possible~-~no~variables~to~set~0F:O-&%.LinearAlgebraG6 #%/DiagonalMatrixG6#-%"$G6$"""-%%nopsG6#8$@%-%6QuillenSuslin/IsMonicG6$9$&FD6#! ""C,>FYFhn>8&&FD6#;FU!"#@%/9&%&falseG@%/F_oFE>8'7#""#>F[p7$F]p-%#opG6#F_o@%Fio> F[p7#""!>F[p7#F`p>8(-%7QuillenSuslin/HorrocksG6&FYF[pFDFfo>8)7#Fjp>8*7#-%6Quill enSuslin/DenomOfG6#Fjp-F=6)F?F@%/MAX,~H,~r,~detGF[pFjpFbq-&FN6#%,DeterminantGFf q?(F:FUFUF:4-%7QuillenSuslin/IsUnimodG6%FbqF_oFfoC'@%Feo>F[p-%8QuillenSuslin/Ma ximalZZG6$FbqF_o>F[p-%8QuillenSuslin/MaximalQQGFhr>FjpF[q>F_q7$-Fap6#F_q-%$mapG 6$f*6#%"aGF:6$%)operatorG%&arrowGF:-%)simplifyG6#FhnF:F:F:Fjp>Fbq7$-Fap6#FbqFdq Fgq-F=6&F?F@FbqFbq@%2F?9#O-%5QuillenSuslin/APatchG6'9'FinF`oF_qFfoO-%4QuillenSu slin/PatchG6&FinF`oF_qFfo-%&ERRORG6#.4%&monicGF:F:F:F: M7R0 I4QuillenSuslin/Patchf*6&'%"XG%'symbolG'%%varcG%%listG'%"UGF*%¶mG6,%"iG%"VG %"YG%"ZG%#UIG%'DeltaIG%"rG%"dG%#idG%"nG6#%enCopyright~(C)~2004~by~Anna~Fabiansk a.~All~rights~reserved.G6"C,-%)userinfoG6%""$%&PatchG%fnyou~should~test~before~ if~we~have~enough~local~information!G>8--%%nopsG6#9&>8+7#-%"$G6$""!FD>8)FK?(8$" ""FTFD%%trueGC%>8(-&%.LinearAlgebraG6#%.MatrixInverseG6#&FH6#FS>&FQFjn-%)simpli fyG6#-%".G6$Fin-%%subsG6$/9$,&FgoFT8'FTFX>&FJFjn-%6QuillenSuslin/DenomOfG6#F\o@ %/FDFT>8,7#*$&FJ6#FT!"">Fbp-%;QuillenSuslin/RightInverseG6%FJ9%9'>8&Fgo>8%-F^o6 #-Fdo6$/Fio,$*(FgoFTFepFT&FbpFfpFTFgp&FQFfp?(FS""#FTFDFUC$>F_q,&F_qFT*(&FJ6#,&F SFTFgpFTFT&FbpFbrFTFgoFTFgp>Faq-F^o6#-Fao6$Faq-Fdo6%/FgoF_q/Fio,$*(F[pFT&FbpFjn FTFgoFTFgpF\oOFaqF;F;F;F; M7R0 I;QuillenSuslin/RightInversef*6%'%"fG%%listG%$VARG%¶mG6&%#IBG%"gG%"rG%$varG 6#%enCopyright~(C)~2004~by~Anna~Fabianska.~All~rights~reserved.G6"C)@$/-%%nopsG 6#9$"""C&@$529#""$/9&%%trueG@%/-%'degreeG6#&F86#F9""!O7#*$FH!""C$-%)userinfoG6% F?%,QSAlgorithmG%MThe~row~is~not~unimodular~in~the~given~ring.GO7"@$/FA%&falseG @%/-%$absGFGF9OFLC$FPOFV@%3/-%)whattypeG6#FA%(integerG-%(isprimeGF`o@%/-%$modG6 $FH%"pGF9O7#-Fgo6$FMFAC$FPOFV-%&ERRORG6#QjnExpecting~a~prime~number~as~a~charac teristic~of~a~finite~field!F1OQ#??F1@$2""#F>@%F]o@%Fbo>8&-%=Involutive/Involuti veOptionsG6$Q%charF1FAF`p>F\q-F^q6$Q)rationalF1FA@%/9%FV>8'7#%$_T_G>FiqFgq>8$-% ;Involutive/InvolutiveBasisG6$-%2Involutive/AddRhsGF7Fiq@$Fgp@%F]o-F^q6$F`qF\q- F^q6$FdqF\q@%0-%$lhsG6#&F^rFIF9C$FPOFV>8%-%$rhsGF^sOFcsF1F1F1F1 M7R0 I9QuillenSuslin/AddLastRowf*6%'%"FG%'MatrixG'%$varG%%listG%¶mG6+%"nG%"mG%(m inorenG%$VARG%"iG%"rG%#IBG%"gG%"UG6#%enCopyright~(C)~2005~by~Anna~Fabianska.~Al l~rights~reserved.G6"C'>8%-&%.LinearAlgebraG6#%0ColumnDimensionG6#9$>8$-&F>6#%- RowDimensionGFA@%/9%7">8'7#%$_T_G>FNFK@%/,&F;"""!""FUFDC(>8&-%8QuillenSuslin/Co factorsGFA@$2""#9#>8)-%=Involutive/InvolutiveOptionsG6$Q)rationalF89&>8*-%;Invo lutive/InvolutiveBasisG6$-%2Involutive/AddRhsG6#FYFN@$Fgn-F]o6$F_oF[o@%0-%$lhsG 6#&Fbo6#FUFUC%-%(WARNINGG6#%jsThe~matrix~is~not~unimodular~in~the~given~ring.~T o~check~if~the~module~defined~as~the~cokernel~is~free~use:~QuillenSuslin/BasisO fCokernelModuleG-%&ERRORG6#%PThe~matrix~is~not~unimodular~in~the~given~ring.GOF L>8+-%$rhsGF`p>8,-F'6#-%$<,>G6$FB-F'6#F^q-%&printG6#Q4iterative-~MatrixQSF8OFbq F8F8F8F8 M7R0 IBQuillenSuslin/NormalizationStepFFf*6''%"fG%%listG'%$varGF''%%NVARGF'%"pG%$opt G6.%%nvarG%"FG%"iG%"jG%"sG%"kG%"nG%"dG%"NG%#SUG%$ISUG%"mG6#%enCopyright~(C)~200 7~by~Anna~Fabianska.~All~rights~reserved.G6"C0@%0&9"6#!""Q%lastF=>8$9&>FG7$&FHF C-%#opG6#&FH6#;"""!"#@$0-%%nopsG6#9%-FW6#FG-%&ERRORG6#%`pthe~number~of~the~new~ variables~and~the~number~of~the~old~variables~are~not~the~same!G>8%-%$mapG6$f*6 #%"rGF=6$%)operatorG%&arrowGF=-%$modG6$9$T$F=F=6$F,9'Fho>8*-FW6#F[o>8-7#-%"$G6$ FRFV>8.Fbp?(8&FRFRFV%%trueGC$>&Fap6#Fip/&FYF^q&FGF^q>&FgpF^q/FaqF`q>8,-&%.Linea rAlgebraG6#%/DiagonalMatrixG6#7#-Fdp6$FRF]p>8(""!>8)Fbr>8+%)infinityG?(FipFRFRF VFjp?(8'FRFRF]pFjp@$/-%'degreeG6#-%)simplifyG6#-%1QuillenSuslin/LCG6$&F[o6#FjrF `qFbr@$2-F^s6#FfsFfrC%>FfrFjs>FarFjr>FdrFip@%2FbrFarC'>&Ffq6$FarFar-Ffo6$*$-Fds 6$&F[o6#Far&FY6#FdrFDF[p>&Fap6#FR/&FYFau&FGF^u>&FapF^u/F]u&FGFau>&FgpFau/FhuF]u >&FgpF^u/FduFcuC&?(FipFRFRF]pFjp@$2-F^s6#&F[oF^qFfrC$>FfrFcv>FarFip>8/,&FfrFRFR FR?(Fip""#FRFVFjpC$>F]q/F`q,&FaqFR)Fhu)Fjv,&FVFRFipFDFR>Fcq/Faq,&F`qFR)FcuFcwFD >Fdt-Ffo6$*$-Fds6$-%%subsG6$FapF[uFhuFDF[pO6%FfqFapFgpF=F=F=F= M7R0 I;QuillenSuslin/InvertibleInf*6&'%"LG%%listG'%"SGF''%$varGF'%¶mG6,%"sG%"cG% #IBG%#IRG%"iG%$PIRG%"nG%#coG%"aG%"rG6#%enCopyright~(C)~2006~by~Anna~Fabianska.~ All~rights~reserved.G6"C'>8%"""?&8$9%%%trueG>F=*&F=F>F@F>>8--%=Involutive/Invol utiveOptionsG6$Q)rationalF:9'>8'-%;Involutive/InvolutiveBasisG6$7$-%#opG6#9$,&F >F>*&%$_T_GF>F=F>!""7$-FS6#9&FX@%0FM7#F>C%-%)userinfoG6%""$%-InvertibleInG%K~no ~invertible~elements~in~the~given~idealG-FH6$FJFFO7"C%>8&-FO6$-%2Involutive/Add RhsGFTFgn>8*-%%nopsG6#Fho?(8(F>F>"#5FBC$>8)-%8Involutive/PolInvReduceG6&)F=FcpF hoFgnQ"CF:@&/&Fgp6#F>""!C)>F@F[q>FcpFdp@%/-F`pFTF>>8+Faq>Fiq7#-%"$G6$FaqFgq?(Fc pF>F>F^pFB>Fiq,&FiqF>-%$mapG6$f*6#F6F:6$%)operatorG%&arrowGF:*&FUF>&&T#6#""#6#T %F>F:F:6&F3FgpF2Fcp-%$rhsG6#&Fho6#FcpF>Fbo@%Ffq>Fiq7#-%)simplifyG6#Fiq>FiqF[tO7 $F@Fiq/FcpFdp-%&printG6#QCthe~upper~bound~for~degree~reachedF:F:F:F:F: M7R0 I8QuillenSuslin/MaximalFFf*6&'%"LG%%listG'%$varGF''%"pG%*nonnegintG%¶mG64%# IBG%"FG%$nenG%"aG%$denG%#L1G%$IB1G%#pmG%$fpmG%"MG%"iG%#FiG%)FaktorenG%*NFaktore nG%%varnG%$PZSG%"PG%$_T_G6#%enCopyright~(C)~2005~by~Anna~Fabianska.~All~rights~ reserved.G6"C0-%=Involutive/InvolutiveOptionsG6$Q%charFC9&>8$-%;Involutive/Invo lutiveBasisG6$9$9%@$2""$9#FC@$/FK7#"""C%-%&printG6#QDthe~ideal~is~already~the~w hole~ringFC-FF6$FH""!O7">8%-%=Involutive/FactorModuleBasisG6#FP@$FR-Fen6$Q"FFCF ^o@$/F^oFWC$FhnOFK@%-%%typeG6$F^o%"+GC$>8&<"?&8.F^o%%trueGC$>8'-%'indetsG6#-%&d enomG6#Fdp@$2-%%nopsG6#Fap-Fbq6#Fhp>FapFhp>Fap-Fjp6#-F]q6#F^o@$FR-Fen6$Q$nenFCF ap@%/FapFbpC$@$FR-Fen6#Q<FactorModuleBasis~is~FINITEFC?(Fdp""#FX-FbqF[rFepC'@$F R-Fen6$%.PolMinPoly~ofG&F^oF^q>8+-%6Involutive/PolMinPolyG6'F_sFKFP/Q$varFC%'la mbdaG/Q'degreeFCFir>8,-%$modG6$-%(FactorsG6#FasFI@$FR-Fen6'%+MinPoly~ofGF_s%":G FasF[t@%-F]t6$-%(IrreducGFatFIC%@$FR-Fen6%Q,MinPoly~of~FCF_sQ9~is~irreducible~o ver~FFpFC@%/-%'degreeGFatFirC&@$FRC$-Fen6#QNand~of~degeree~=~dim~of~the~FactorM odule,~so:FC-Fen6#Q7IB~is~an~maximal~idealFC>FdpFirFhnOFK@$FR-Fen6#QZbut~deg(mp )<>~dim(FactorModule)~so:~take~the~next~elementFC@$/FdpFir-Fen6#%dqall~minimal~ polynomials~are~irreducible,~but~all~of~degree~smaller~then~the~dimension~of~th e~FactorModuleGC'@$FR-Fen6#QSMinPoly~REDUCIBLE,~take~one~factor~to~the~ideal... FC>8)7$-%#opG6#FO-%%subsG6$/FgsF_s&&&F[t6#Fhr6#FXF]x>FdpFir@$FR-Fen6$Q#L1FCF`w> 8*-FM6$F`wFPC,@$FR-Fen6#Q;FactormoduleBasis~infiniteFC>827#-Fcw6#-%&minusG6$<#- FcwFaoFap@$FR-Fen6$QBvarn:=[op(|frop(var)|hr~minus~nen)];~FCF]y@$/F]yF\o>F]y7#8 5-FM6$FOF]y>83<#-Fcw6#-%7Involutive/PolZeroSetsGFC@$FR-Fen6$Q$PZSFCFbz>F`wFO?(F dpFXFXFaqFepC&>84-%CQuillenSuslin/FindIrreducibleNotInG6%FIFbz&FapF^q@$FR-Fen6% Q$addFCF`[lQ-to~the~idealFC>F`w7$-Fcw6#F`wF`[l@$FRF`x>FdxFex@$FR-Fen6$Q$IB1FCFd x>8--F"6%FdxFPFIFhnOFe\lFCFCFCFC M7R0 I8QuillenSuslin/OneStepEYf*6$'%"VG%%listG'%$varGF'6D%"vG%&monicG%%varcG%#IMG%"u G%"lG%"YG%"sG%"wG%$RESG%&alphaG%"AG%#vaG%#waG%"iG%"jG%#T1G%#T2G%#T3G%#T4G%#ssG% #IBG%%rhs1G%"cG%#fgG%$IBiG%%rhsiG%$difG%#cdG%)sigmatauG%%tripG%#UUG%"UG%%TESTG6 #%enCopyright~(C)~2006~by~Anna~Fabianska.~All~rights~reserved.G6"CC>88f*6'%"pG% $monG%"bG%"rG%"dGFOFOFOO-%)simplifyG6#*&,&-%%subsG6$/9%,&9&"""*&9'Fao9(FaoFao9$ Fao-F[o6$/F^oF`oFeo!""FaoFcoFioFOFOFO>8%&F^o6#Fao>8&&F^o6#;""#Fio>8$Feo-%&print G6#QenThe~first~component~should~be~monic~in~the~first~variable!FO>8(-%;Quillen Suslin/RightInverseG6%FepF^o%%trueG>8),&-%'degreeG6$&FepF]pF[pFaoFaoFao@$2Fcp9# -Fgp6$%0Number~of~stepsGFaq>8*7#-%"$G6$""!Faq>&F^rF]pFcr?(83FcpFaoFaqF_q>&F^r6# Fgr,&&F^r6#,&FgrFaoFioFaoFaoFaoFao@$Fhq-Fgp6$Q"YFOF^r>8+Fcr?(Fgr""$Fao-%%nopsG6 #FepF_q>Fds-Ffn6#,&FdsFao*&&FepFjrFao&F[qFjrFaoFao@$Fhq-Fgp6$Q"sFOFds>8,F_r@%/F gsFfs?(FgrFaoFaoFaqF_q>&FftFjr-Ffn6#,&&Fep6#FcpFao*&FirFao&Fep6#FfsFaoFao?(FgrF aoFaoFaqF_q>F[u-Ffn6#,&F_uFao*&FirFaoFdsFaoFao@$Fhq-Fgp6$Q"wFOFft>8--%$mapG6$f* 6#%"aGFO6$%)operatorG%&arrowGFO-Ffn6#-%*resultantG6%&T#F]pFeoT%FOFO6&F+FepF,F[p Fft@$Fhq-Fgp6$Q+ResultantsFOF_v>8.-F]q6%F_vF_pF_q@$Fhq-Fgp6$Q4alpha~-~the~inver seFOFgw>8/7#-Far6$Fcr,&FaqFaoFaoFao>&F_xF]pF[p?(FgrFaoFaoFaqF_q>&F_x6#,&FgrFaoF aoFao-Ffn6#,&&F_xFjrFao*(&FgwFjrFao&F_vFjrFaoF[pFaoFio@$Fhq-Fgp6$Q/A~-~the~poin tsFOF_x?(FgrFaoFaoFcxF_qC$>&80Fjr-Ffn6#-F[o6$/F[pF^yFep>&81Fjr-Ffn6#-F[o6$F_zFf t>8CF_r?(82FaoFaoFaqF_qCI>84-&%.LinearAlgebraG6#%/DiagonalMatrixG6#7#-Far6$FaoF gs@%Fht>&F][l6$FfsFcp-Ffn6#&F^r6#Fjz?(FgrFfsFaoFgsF_q>&F][l6$FgrFcp-Ffn6#*&F]\l Fao-F[o6$/F[p&F_xF^\lF`tFao@$Fhq-Fgp6#Q(test~T1FO>8E-Ffn6#-%".G6$-%'MatrixG6#&F jyF^\lF][l@$0-Ffn6#,&&F_]l6$FaoFaoFao&Fh]lF]pFioFcr-%&ERRORG6#%2Problem~1~with~ T1G@$0-Ffn6#,&&F_]l6$FaoFcpFao&&FbzF^\lF^\lFioFcr-Fb^l6#%2Problem~2~with~T1G?(F grFfsFaoFgsF_q@$0-Ffn6#,&&F_]l6$FaoFgrFao&Fh]lFjrFioFcr-Fb^l6#%2Problem~3~with~ T1G>89-%;Involutive/InvolutiveBasisG6$-%2Involutive/AddRhsG6#7$Ffq&FftF^\lF^o>8 :-Fav6$f*FdvFOFfvFO-%$rhsG6#FeoFOFOFOF^`l>8;&-%8Involutive/PolInvReduceG6&&F_vF ^\lF^`lF^oQ"CFOF`u>8<-Ffn6#-%(convertG6$-Ffn6#-Fav6$f*6#F:FOFfvFO-Fav6$f*FdvFOF fvFO*&&F_w6#T&FaoFeoFaoFOFO6&FBF`wF:Feo&F_wF^alFOFO6&FAFh`lFBF`al7#-Far6#;Fao-F hs6#F`al%"+G@$FhqC$-Fgp6$Q#fgFOFhal-Fgp6$Q2test~-should~be~0FO-Ffn6#,(*&&FhalF] pFaoFfqFaoFao*&&FhalF`uFaoFf`lFaoFaoFealFio>85F^[l>8=-F``l6$-Fc`l6#7$F`^lF\_lF^ o>8>-Fav6$f*FdvFOFfvFOF\alFOFOFOFgdl?(FgrFfsFaoFgsF_qC(>&8?Fjr-Ffn6#,&Fi_lFao&& Fjy6#,&FjzFaoFaoFaoFjrFio>8@&-Fcal6&FeelFgdlF^oFfalF`u>&8AFjr-Ffn6#-F\bl6$-Ffn6 #-Fav6$f*FcblFOFfvFO-Fav6$f*FdvFOFfvFOFgblFOFO6&FGF`wF:FeoF\clFOFO6&FEF^elFGF_f l7#-Far6#;Fao-Fhs6#F_flFdcl@$FhqC%-Fgp6$Q%testFO-Ffn6#,(Fi_lFao*&&FdflF]pFaoF`^ lFaoFio*&&FdflF`uFaoF\_lFaoFio-Fgp6#Fjel-Fgp6#QFtwo~previous~lines~should~be~th e~sameFO>&FedlFh_l,$-Ffn6#FchlFio>&Fedl6$FcpFgr,$-Ffn6#FehlFio@$Fhq-Fgp6#Q+test ~T1.T2FO>F_]l-Ffn6#-Fc]l6%Fe]lF][lFedl@$Fj]l-Fb^l6#%0Problem~with~T2G@$Ff^lF`jl ?(FgrFfsFaoFgsF_q@$0-Ffn6#,&Fg_lFaoFjelFioFcrF`jl>8B7%Fi\lFeal,$*&&FgwF^\lFaoF[ pFaoFio>86F^[l>&Fa[mF_^l,(FaoFao*&-FR6%FfqF[p-%#opG6#F[[mFao-F[o6$Fh\lFadlFaoFa o*&-FR6%FcdlF[pFh[mFaoF\_lFaoFao>&Fa[m6$FcpFao,&*&Ff[mFao-F[o6$Fh\lFcdlFaoFao*& F^\mFaoF`^lFaoFio>&Fa[mF[_l,&*&-FR6%Ff`lF[pFh[mFaoF[\mFaoFao*&-FR6%FadlF[pFh[mF aoF\_lFaoFio>&Fa[m6$FcpFcp,(FaoFao*&F\]mFaoFe\mFaoFao*&F_]mFaoF`^lFaoFao@$Fhq-F gp6#Q.test~T1.T2.T3FO>F_]l-Ffn6#-Fc]l6&Fe]lF][lFedlFa[m@$0-Ffn6#,&F^^lFao&F[flF ]pFioFcr-Fb^l6#%0Problem~with~T3G@$0-Ffn6#,&Fj^lFao&&FbzF\flF^\lFioFcrFf^m?(Fgr FfsFaoFgsF_q@$FfjlFf^m>87F^[l@%Fht>&Fc_mFj[l,$F]\lFio?(FgrFfsFaoFgsF_q>&Fc_mFb\ l,$*&F]\lFao-F[o6$/F[p&F_xF\flF`tFaoFio@$Fhq-Fgp6#Q1test~T1.T2.T3.T4FO>F_]l-Ffn 6#-Fc]l6'Fe]lF][lFedlFa[mFc_m?(FgrFaoFaoFgsF_q@$Ffjl-Fb^l6$%0Problem~with~T4GFg r>&FhzF^\l-Ffn6#-Fc]l6&F][lFedlFa[mFc_m@$FhqC&-Fgp6'Q/T1,~T2~,T3,~T4FOF][lFedlF a[mFc_m-Fgp6(Q.the~step~fromFOFjzQ#toFOF]flQ":FOF`am-Fgp6$Q'i->i+1FOFjz-Fgp6$Q5 va[i].UU[i]-~va[i+1]FO-Ffn6#,&&-F\bl6$-Ffn6#-Fc]l6$Fe]lF`am%)listlistGF]pFaoF[f lFio@$Fhq-Fgp6$Q*steps:~UUFOFhz>8D&FhzF]p?(FgrFcpFaoFaqF_q>Fecm-Ffn6#-Fc]l6$Fec m&FhzFjrO-Ffn6#FecmFOFOFOFO M7R0 I8QuillenSuslin/ParkStep3f*6%%"LG'%$varG%%listG'%%varnGF(6*%#LLG%"lG%#suG%"iG%# nvG%$isuG%$invG%#deG6#%enCopyright~(C)~2006~by~Anna~Fabianska.~All~rights~reser ved.G6"C,>8&7#-%"$G6$"""-%%nopsG6#9%>8)F:?(8'F>F>F?%%trueGC$>&F96#FF/&FBFK&9&FK >&FDFK/FNFM>8$-%)simplifyG6#-%%subsG6$F99$@%55-%%typeG6$FT%'matrixG-Fjn6$FTF(-F jn6$FT%'MatrixG>8+-%6QuillenSuslin/DenomOfG6#FT>Fco-%&denomGFfo>8%F>@$/-%'degre eG6$FcoFO""!C)>F[pF>>8(&FO6#F>>8*&FBFgp?(FF""#F>F?FGC$>Fep*&FepF>)FNF[pF>>Fip*& FipF>)FM,$F[p!""F>>&F9Fgp/FjpFep>&FDFgp/FfpFip>FTFU?(F6F>F>F62FapF^pC*>F[p,&F[p F>F>F>>FepFfp>FipFjp?(FFF\qF>F?FGC$>FepF_q>FipFbq>FgqFhq>FjqF[r>FTFU@%Fgn>FcoFd o>FcoFho>FT-%$mapG6$f*6#%"aGF66$%)operatorG%&arrowGF6-%(collectG6$Fen&T$FgpF6F6 6$F*FOFTO6%FTF9FDF6F6F6F6 M7R0 I8QuillenSuslin/testeasygf*6''%"fG%%listG'%"gGF''%$varGF'%$parG%$strG6-%"rG%"nG %$IBgG%"iG%"jG%"kG%#riG%#M1G%#M2G%"PG%¶mG6#%enCopyright~(C)~2006~by~Anna~Fa bianska.~All~rights~reserved.G6"C,@%2""$9#>8.9'>FC%%trueG>8$-%=Involutive/Invol utiveOptionsG6$Q)rationalF<FC>8%-%%nopsG6#9$>8+-&%.LinearAlgebraG6#%/DiagonalMa trixG6#7#-%"$G6$"""FN>8,FU@%32""#FA/FC%&falseGC$-%)userinfoG6%F@%*HeuristicG%.e asyg~over~ZZG?(8'FinFinFNFF@$/-%$absG6#&9%6#FioFinC'?(8)FinFinFNFFC$>&FT6$FdpFi o&F`p6#Fdp>&F[o6$FioFdp,$&FRFjp!"">&F[o6$FioFioFin@$F^o-FJ6$FLFH@%0FioFinC%-Fdo 6%F@Ffo%NThe~right~inverse~has~an~invertible~componentG>8--%@QuillenSuslin/Perm utationMatrixG6%FinFioFNO-%)simplifyG6#-%".G6%FTF[oF^rO-Fdr6#-Fgr6$FTF[o>FioFNC $-Fdo6%F@%&easygG%(over~QQG?(FioFinFinFNFF@$/-%'degreeG6$F_p9&""!C'?(FdpFinFinF NFFC$>FgpFip>F\qF^q>FbqFin@$F^oFeq@%FhqC%Fjq>F^rF_rOFcrOFjr>FioFN-Fdo6%F@Fbs%2t est~2~componentsG?(FioFinFinFNFF?(8(,&FioFinFinFinFinFNFFC)>FTFU>F[oFU-Fdo6%F@F bs%+compute~IBG>8&-%;Involutive/InvolutiveBasisG6$-%2Involutive/AddRhsG6#7$F_p& F`p6#F^uFjs-Fdo6&F@FbsFguFgu@$3/Fio,&FNFinF`qFin0-%$lhsG6#&Fgu6#FinFinC$-Fdo6%F @Fbs%,NOT~SO~EASYGOFao@$/FhvFinC/-Fdo6%F@Ffo%^oTwo~components~of~the~right~inve rse~generate~already~the~whole~ringG>8*-%$rhsGFjv>FTFU?(FdpFinFinFNFF>FgpFip>&F T6$FioF^u,$&Fiw6#F_oF`q>&FT6$F^uF^u&FiwF\w>F[oFU?(FdpFinFinFNFF>F\qF^q>FbqFin>& F[oFax,&*&&FRFapFinFcxFinFin*&&FRF`vFinFhxFinF`q@%FhqC%>F^rF_r@$F^oFeqOFcrC$@$F ^oFeqOFjr>FioFN>F^uFN@$F^oFeqOFjrF<F<F<F< M7R0 I4QuillenSuslinT/initf*6"F$6#%jnCopyright~(C)~2003-2007~by~Anna~Fabianska.~All~ rights~reserved.GF$-%3QuillenSuslin/initG6#9"F$F$F$F$ M7R0 I7QuillenSuslin/iseasyg1f*6%'%"fG%%listG'%$VARGF'%¶mG61%$parG%"rG%$varG%"nG %#IBG%"SG%#SiG%"gG%"jG%"iG%#SIG%"eG%$IBeG%&alphaG%%answG6#%enCopyright~(C)~2005 ~by~Anna~Fabianska.~All~rights~reserved.G6"C.>82%&falseG@%2""#9#>8$9&>FG%%trueG >8%-%=Involutive/InvolutiveOptionsG6$Q)rationalF=FG@%/9%7">8&7#%$_T_G>FVFS>8(-% ?Involutive/InvolutiveBasisFastG6$-%2Involutive/AddRhsG6#9$FV@%0-%$lhsG6#&Fen6# """FdoC$@$FC-FN6$FPFL-%&ERRORG6#%:The~row~is~not~unimodularGC&>8+-%$rhsGFao>8'- %%nopsG6#F_p?(8-FdoFdoFcpFJ@$/&F_p6#Fhp""!C%-%&printG6#Q<One~component~0,~try~e asysrF=>F@FJ>FhpFcp@%/FGFJ?(FhpFdoFdoFcpFJ@$/-%'degreeG6$F[qFVF]qC%-F`q6#QEOne~ invertible~component~,~try~easygF=>F@FJ>FhpFcp?(FhpFdoFdoFcpFJ@$/-%$absG6#F[qFd oC%F^r>F@FJ>FhpFcp@$/F@FJC$FgoO6$F@F_p-%(WARNINGG6#%KIt~can~take~long:~compute~ Syzygy~Module~S:G>8)-%8Involutive/SyzygyModuleG6$F\oFV?(FhpFdoFdoFcpFJC(>8*-%$m apG6$f*6#%"aGF=6$%)operatorG%&arrowGF=&F\o6#T#F=F=6$F5FhpFfs>8.-%;Involutive/In volutiveBasisG6$-Fjn6#F]tFV>8/-%8Involutive/PolInvReduceG6%7#F[qF\uFV-F`q6$Fcu% F~test~if~the~element~is~invertible...G>80-F^u6$7#FcuFV@$5/F\v7#Fdo/F\v7#F]qC'- F`q6#Q(TRUE!!!F=>81-Fap6#Fcu-F`q6%Q)alpha,~SF=F[wFfsFgoOFJFgoOF@F=F=F=F= M7R0 I8QuillenSuslin/JIsUnimodf*6%'%"MG<$%'MatrixG%%listG%%ivarG%%dvarG6#%"fG6#%enCo pyright~(C)~2004~by~Anna~Fabianska.~All~rights~reserved.G6"C$@%/-%)whattypeG6#9 $F(>8$-%8QuillenSuslin/MaxMinorsGF6>F9F7@%/&-&%&JanetG6#%+JanetBasisG6%F99%9&6# """7#--%#opG6#FG6#-FM6#FFO%%trueGO%&falseGF0F0F0F0 M7R0 I6QuillenSuslin/Seasyf1f*6''%"fG%%listG'%$varGF'%"SG%$parG%$strG6.%¶mG%"nG% #IBG%"iG%"jG%"kG%#riG%#M1G%#M2G%"PG%"lG%"sG6#%enCopyright~(C)~2006~by~Anna~Fabi anska.~All~rights~reserved.G6"C)@%2""$9#>8$9'>FC%%trueG>8%-%%nopsG6#9$>8+-&%.Li nearAlgebraG6#%/DiagonalMatrixG6#7#-%"$G6$"""FH>8,FO@%/FC%&falseG-%)usefinfoG6% F@%&SEASYG%0Seasyf1~over~ZZG-Fjn6%F@F\o%0Seasyf1~over~QQG?(8'FYFYFHFF@$-%4Quill enSuslin/IsInSG6%&FL6#Fbo9&FCC(-%&printG6$Q"iF<Fbo>&FN6$FboFbo*$Fgo!""?(8)FYFYF HFF>&Fen6$FboFep,$&FL6#FepFcp>&FenFapFY@%0FboFYC$>8--%@QuillenSuslin/Permutatio nMatrixG6%FYFboFHO-%)simplifyG6#-%".G6%FNFenFbqO-Fhq6#-F[r6$FNFen>FboFHOFhnF<F< F<F< M7R0 I6QuillenSuslin/Seasysrf*6''%"fG%%listG'%$varGF''%"SGF'%¶mG%$strG6/%"nG%"iG %"jG%"FG%#fsG%"EG%"bG%$E23G%#E4G%"UG%#E2G%#E3G%"sG6#%enCopyright~(C)~2006~by~An na~Fabianska.~All~rights~reserved.G6"C%>8$-%%nopsG6#9$?(8%"""FHFA%%trueGC&>8'FE >&FL6#FG""!>80-%;QuillenSuslin/InvertibleInG6&FL9&9%9'@&0-FC6#FRFPC,@%0FGFHC&>8 )-%@QuillenSuslin/PermutationMatrixG6%FGFHFA>8(FE>&Fao6#FH&FEFO>&FaoFO&FEFdo>Fa oFE>8*&FR6#""#>&F[pFO&F[pFdo>FapFP>8+-&%.LinearAlgebraG6#%/DiagonalMatrixG6#7#- %"$G6$FHFA?(8&F^pFHFAFI>&Fdp6$F`qFH*(,&FHFHFco!""FH&F[p6#F`qFH&FRFdoFfq>8,Fep?( F`qF^pFHFAFI>&F[r6$FHF`q,$&FaoFhqFfq@%Fin>8--%)simplifyG6#-%".G6%F\oFdpF[r>Fdr- Ffr6#-Fir6$FdpF[r>FGFA/FGFAC$@$2""%9#-%&printG6#QXThis~case~is~not~so~easy.~All ~generators~are~necessary.F>O%&falseGOFdrF>F>F>F> M7R0 ICQuillenSuslin/LaurentNormalizationf*6%%"LG'%$varG%%listG'%%varnGF(60%#LLG%+no rmalizedG%"lG%"pG%#coG%#deG%"cG%#dpG%"dG%"sG%"iG%"jG%"mG%#isG6#%enCopyright~(C) ~2006~by~Anna~Fabianska.~All~rights~reserved.G6"C,@$5-%%typeG6$9$F(-FA6$FC%'Mat rixG-%&ERRORG6#%TThe~first~component~should~be~a~Laurent~polynomial!G@$0-%%nops G6#9%-FN6#9&-FH6#%cpThe~list~of~new~variables~and~the~list~of~the~old~variables ~should~have~the~same~length!G>8%%&falseG>8&""!>8-7#-%"$G6$"""FM>81Fin?(8/F]oF] oFM%%trueGC$>&Fhn6#Fao/&FPFfo&FSFfo>&F_oFfo/FioFho@$2-%'degreeG6$FCFPF]oC$-%)us erinfoG6%""$%5LaurentNormalizationG%+a~constantGO6%FCFhnF_o?(F<F]oF]oF<4FXC->&F hn6#F]o/&FPF`q&FSF`q>&F_oF`q/FcqFbq?(Fao""#F]oFMFboC$>Feo/Fho*&FioF]o)Fcq)Fen,& FaoF]o!""F]oF]o>F[p/Fio*&FhoF]o)Fbq,$F^rF`rF]o>8$-%)simplifyG6#-%%subsG6$FhnFC> 8,-F`p6$FgrFcq>8)7">8(Fds>8'-Fir6#Fgr?(F<F]oF]oF<0FhsFfnC'>8+-F`p6$FhsFcq>8*-%& coeffG6%FhsFcqF_t>Ffs7$-%#opG6#Ffs-Fir6#Fct>Fcs7$-Fjt6#FcsF_t>Fhs-Fir6#,&FhsF]o *&FctF]o)FcqF_tF]oF`r?(FaoF]oF]o-FNF[uFbo?(8.F]oF]oFQFbo@%/-F`p6$&FfsFfo&FS6#F[ v-%;QuillenSuslin/LowestDegreeGF_v@$3/F[vFQ/FaoFiu>FXFboC$>F[v,&FQF]oF]oF]o>Fao ,&FiuF]oF]oF]o@$F\q>Fen,&FenF]oF]oF]oO6%-%(collectGFasFhnF_oF<F<F<F< M7R0 IAQuillenSuslin/BasisOfImageModulef*6%'%"SG%'MatrixG'%$varG%%listG%¶mG6&%#S 2G%#B2G%"BG%(reducedG6#%enCopyright~(C)~2007~by~Anna~Fabianska.~All~rights~rese rved.G6"C'@$/9&%&falseG-%(WARNINGG6#%HNot~implemented~yet,~computation~over~QG@ $-%;QuillenSuslin/IsZeroMatrixG6#9$C$-F:6#%boThe~module~is~defined~as~a~image~o f~a~zero~matrix,~thus~the~zero~moduleGO7">8$-F'6#-%8Involutive/SyzygyModuleG6$F A9%@%-F?6#FIC$-F:6#%`oThe~module~is~defined~as~an~image~of~a~full~row~rank~matr ix,~thus....G>8%-&%.LinearAlgebraG6#%/IdentityMatrixG6#-&Fen6#%0ColumnDimension GFR>FX-%DQuillenSuslin/BasisOfCokernelModuleG6&FIFOF7%'reduceG@%0FXFGC$>8&-%$ma pG6$f*6#%"rGF36$%)operatorG%&arrowGF3FAF3F3F3-%".G6$FXFAOFfoOFGF3F3F3F3 M7R0 I/QuillenSuslinT=6"%&falseGE\[lL%.FindMonic1VarGf*F$F$6#%enCopyright~(C)~2005~b y~Anna~Fabianska.~All~rights~reserved.GF$C$30%:QuillenSuslin/initializedG.%%tru eG0-%3QuillenSuslin/initGF$""!-%<QuillenSuslin/FindMonic1VarG6#9"F$F$F$%+testSe asygGf*F$F$6#%enCopyright~(C)~2006~by~Anna~Fabianska.~All~rights~reserved.GF$C$ F,-%9QuillenSuslin/testSeasygGF7F$F$F$%4NormalizationStepFFGf*F$F$6#%enCopyrigh t~(C)~2007~by~Anna~Fabianska.~All~rights~reserved.GF$C$F,-%BQuillenSuslin/Norma lizationStepFFGF7F$F$F$%&easyfGf*F$F$F;F$C$F,-%4QuillenSuslin/easyfGF7F$F$F$%2L ocalSolReductionGf*F$F$F;F$C$F,-%@QuillenSuslin/LocalSolReductionGF7F$F$F$%)tes tEASYGf*F$F$F;F$C$F,-%7QuillenSuslin/testEASYGF7F$F$F$%*testeasygGf*F$F$F;F$C$F ,-%8QuillenSuslin/testeasygGF7F$F$F$%&easy2Gf*F$F$F)F$C$F,-%4QuillenSuslin/easy 2GF7F$F$F$%2PermutationMatrixGf*F$F$F)F$C$F,-%@QuillenSuslin/PermutationMatrixG F7F$F$F$%5FindIrreducibleNotInGf*F$F$F)F$C$F,-%CQuillenSuslin/FindIrreducibleNo tInGF7F$F$F$%,OneStepMoreGf*F$F$F;F$C$F,-%:QuillenSuslin/OneStepMoreGF7F$F$F$%, VarChangeZZGf*F$F$F)F$C$F,-%:QuillenSuslin/VarChangeZZGF7F$F$F$%;RepresentBasis InGeneratorsGf*F$F$FBF$C$F,-%IQuillenSuslin/RepresentBasisInGeneratorsGF7F$F$F$ %(ReduceFGf*F$F$F)F$C$F,-%6QuillenSuslin/ReduceFGF7F$F$F$%*ParkStep3Gf*F$F$F;F$ C$F,-%8QuillenSuslin/ParkStep3GF7F$F$F$%(Seasyf1Gf*F$F$F;F$C$F,-%6QuillenSuslin /Seasyf1GF7F$F$F$%*JIsUnimodGf*F$F$6#%enCopyright~(C)~2004~by~Anna~Fabianska.~A ll~rights~reserved.GF$C$F,-%8QuillenSuslin/JIsUnimodGF7F$F$F$%*testSEASYGf*F$F$ F;F$C$F,-%8QuillenSuslin/testSEASYGF7F$F$F$%&RowQSGf*F$F$F)F$C$F,-%4QuillenSusl in/RowQSGF7F$F$F$%&RowQQGf*F$F$F;F$C$F,-%4QuillenSuslin/RowQQGF7F$F$F$%*ReduceM odGf*F$F$6#%jnCopyright~(C)~2005-2007~by~Anna~Fabianska.~All~rights~reserved.GF $C$F,-%8QuillenSuslin/ReduceModGF7F$F$F$%;Transformation2ReducedFormGf*F$F$FBF$ C$F,-%IQuillenSuslin/Transformation2ReducedFormGF7F$F$F$%4NormalizationStepQQGf *F$F$F)F$C$F,-%BQuillenSuslin/NormalizationStepQQGF7F$F$F$%'iseasyGf*F$F$F)F$C$ F,-%5QuillenSuslin/iseasyGF7F$F$F$%0RedRightInverseGf*F$F$F)F$C$F,-%>QuillenSus lin/RedRightInverseGF7F$F$F$%+AddLastRowGf*F$F$F)F$C$F,-%9QuillenSuslin/AddLast RowGF7F$F$F$%)iseasyg1Gf*F$F$F)F$C$F,-%7QuillenSuslin/iseasyg1GF7F$F$F$%+testde glocGf*F$F$F;F$C$F,-%9QuillenSuslin/testdeglocGF7F$F$F$%5QuillenSuslinVersionGf *F$F$FBF$C$F,-%CQuillenSuslin/QuillenSuslinVersionGF7F$F$F$%'SubDetGf*F$F$6#%en Copyright~(C)~2003~by~Anna~Fabianska.~All~rights~reserved.GF$C$F,-%5QuillenSusl in/SubDetGF7F$F$F$%(Seasyf2Gf*F$F$F;F$C$F,-%6QuillenSuslin/Seasyf2GF7F$F$F$%8co pyright_QuillenSuslinGf*F$F$6#%jnCopyright~(C)~2003-2007~by~Anna~Fabianska.~All ~rights~reserved.GF$C$F,-%FQuillenSuslin/copyright_QuillenSuslinGF7F$F$F$%-IsZe roMatrixGf*F$F$FBF$C$F,-%;QuillenSuslin/IsZeroMatrixGF7F$F$F$%,FindEasyRowGf*F$ F$F;F$C$F,-%:QuillenSuslin/FindEasyRowGF7F$F$F$%)MatrixQSGf*F$F$F)F$C$F,-%7Quil lenSuslin/MatrixQSGF7F$F$F$%(SeasysrGf*F$F$F;F$C$F,-%6QuillenSuslin/SeasysrGF7F $F$F$%,FindMonicInGf*F$F$F)F$C$F,-%:QuillenSuslin/FindMonicInGF7F$F$F$%'APatchG f*F$F$F;F$C$F,-%5QuillenSuslin/APatchGF7F$F$F$%4RedRightInverseFastGf*F$F$F)F$C $F,-%BQuillenSuslin/RedRightInverseFastGF7F$F$F$%&RowZZGf*F$F$F;F$C$F,-%4Quille nSuslin/RowZZGF7F$F$F$%+PermOfListGf*F$F$F)F$C$F,-%9QuillenSuslin/PermOfListGF7 F$F$F$%&easygGf*F$F$F;F$C$F,-%4QuillenSuslin/easygGF7F$F$F$%'easysrGf*F$F$F;F$C $F,-%5QuillenSuslin/easysrGF7F$F$F$F$ M7R0 ICQuillenSuslin/LaurentNormalisationf*6%%"LG'%$varG%%listG'%%varnGF(60%#LLG%+no rmalisedG%"lG%"pG%#coG%#deG%"cG%#dpG%"dG%"sG%"iG%"jG%"mG%#isG6#%enCopyright~(C) ~2006~by~Anna~Fabianska.~All~rights~reserved.G6"C,@$5-%%typeG6$9$F(-FA6$FC%'Mat rixG-%&ERRORG6#%TThe~first~component~should~be~a~Laurent~polynomial!G@$0-%%nops G6#9%-FN6#9&-FH6#%cpThe~list~of~new~variables~and~the~list~of~the~old~variables ~should~have~the~same~length!G>8%%&falseG>8&""!>8-7#-%"$G6$"""FM>81Fin?(8/F]oF] oFM%%trueGC$>&Fhn6#Fao/&FPFfo&FSFfo>&F_oFfo/FioFho@$2-%'degreeG6$FCFPF]oC$-%)us erinfoG6%""$%5LaurentNormalisationG%+a~constantGO6%FCFhnF_o?(F<F]oF]oF<4FXC->&F hn6#F]o/&FPF`q&FSF`q>&F_oF`q/FcqFbq?(Fao""#F]oFMFboC$>Feo/Fho*&FioF]o)Fcq)Fen,& FaoF]o!""F]oF]o>F[p/Fio*&FhoF]o)Fbq,$F^rF`rF]o>8$-%)simplifyG6#-%%subsG6$FhnFC> 8,-F`p6$FgrFcq>8)7">8(Fds>8'-Fir6#Fgr?(F<F]oF]oF<0FhsFfnC'>8+-F`p6$FhsFcq>8*-%& coeffG6%FhsFcqF_t>Ffs7$-%#opG6#Ffs-Fir6#Fct>Fcs7$-Fjt6#FcsF_t>Fhs-Fir6#,&FhsF]o *&FctF]o)FcqF_tF]oF`r?(FaoF]oF]o-FNF[uFbo?(8.F]oF]oFQFbo@%/-F`p6$&FfsFfo&FS6#F[ v-%;QuillenSuslin/LowestDegreeGF_v@$3/F[vFQ/FaoFiu>FXFboC$>F[v,&FQF]oF]oF]o>Fao ,&FiuF]oF]oF]o@$F\q>Fen,&FenF]oF]oF]oO6%-%(collectGFasFhnF_oF<F<F<F< M7R0 I:QuillenSuslin/OneStepMoref*6%'%"FG%%listG'%$varGF'%¶mG6.%"fG%$VARG%%varnG %$MAXG%"HG%#UUG%"rG%#irG%"NG%#SUG%$ISUG%"QG6#%enCopyright~(C)~2006~by~Anna~Fabi anska.~All~rights~reserved.G6"C%-%)userinfoG6(""$%,OneStepMoreGF@9$9%9&@$/FB7"C $-%&printG6#QIno~step~possible~-~no~variables~to~set~0F:O-&%.LinearAlgebraG6#%/ DiagonalMatrixG6#-%"$G6$"""-%%nopsG6#8$@%-%6QuillenSuslin/IsMonicG6$FA&FB6#!""C +>FZFA>8&&FB6#;FV!"#@%/FC%&falseG@%/F_oFF>8'7#""#>Fjo7$F\p-%#opG6#F_o@%Fho>Fjo7 #""!>Fjo7#F_p>8(-%7QuillenSuslin/HorrocksG6&FZFjoFBFC>8)7#Fip>8*7#-%6QuillenSus lin/DenomOfG6#Fip-F=6(F?F@%,MAX,~r,~detGFjoFaq-&FO6#%,DeterminantGFeq?(F:FVFVF: 4-%7QuillenSuslin/IsUnimodG6%FaqF_oFCC(@%Feo>Fjo-%8QuillenSuslin/MaximalZZG6$Fa qF_o>Fjo-%8QuillenSuslin/MaximalQQGFgr>FipFjp>F^q7$-F`p6#F^q-%$mapG6$f*6#%"aGF: 6$%)operatorG%&arrowGF:-%)simplifyG6#FAF:F:F:Fip>Faq7$-F`p6#FaqFcq-F=6(F?F@%-MA X,~~r,~detGFjoFaq-Fjs6#Fiq-F=6(F?%,QSAlgorithmGFbtFjoFaqFctO-%4QuillenSuslin/Pa tchG6&Fin&FB6#;FVF[oF^qFC-%&ERRORG6#Q*not~monicF:F:F:F:F: M7R0 IFQuillenSuslin/RepresentIPInGeneratorsf*6%%"eG'%"LG%%listG'%"vGF(6%%#IBG%#NFG% &IBInLG6#%enCopyright~(C)~2007~by~Anna~Fabianska.~All~rights~reserved.G6"C&>8$- %;Involutive/InvolutiveBasisG6$-%2Involutive/AddRhsG6#9%%$varG>8%-%8Involutive/ PolInvReduceG6&9$F4F<Q"CF1>8&-%'MatrixG6#-%$mapG6$f*6#%"iGF16$%)operatorG%&arro wGF1-%$rhsG6#&T#6#FBF1F16$F,F47#-%"$G6#;"""-%%nopsG6#F4O-%)simplifyG6#-%".G6$-F G6#&F>6#""#FEF1F1F1F1 M7R0 I/QuillenSuslinA=6"%&falseGE\[lep%.FindMonic1VarGf*F$F$6#%enCopyright~(C)~2005~ by~Anna~Fabianska.~All~rights~reserved.GF$C$30%:QuillenSuslin/initializedG.%%tr ueG0-%3QuillenSuslin/initGF$""!-%<QuillenSuslin/FindMonic1VarG6#9"F$F$F$%&Patch Gf*F$F$6#%enCopyright~(C)~2004~by~Anna~Fabianska.~All~rights~reserved.GF$C$F,-% 4QuillenSuslin/PatchGF7F$F$F$%,OneLocalSolGf*F$F$6#%enCopyright~(C)~2006~by~Ann a~Fabianska.~All~rights~reserved.GF$C$F,-%:QuillenSuslin/OneLocalSolGF7F$F$F$%, Laurent2PolGf*F$F$FBF$C$F,-%:QuillenSuslin/Laurent2PolGF7F$F$F$%+testSeasygGf*F $F$FBF$C$F,-%9QuillenSuslin/testSeasygGF7F$F$F$%2NormalizationStepGf*F$F$F)F$C$ F,-%@QuillenSuslin/NormalizationStepGF7F$F$F$%6BasisOfCokernelModuleGf*F$F$FBF$ C$F,-%DQuillenSuslin/BasisOfCokernelModuleGF7F$F$F$%4NormalizationStepFFGf*F$F$ 6#%enCopyright~(C)~2007~by~Anna~Fabianska.~All~rights~reserved.GF$C$F,-%BQuille nSuslin/NormalizationStepFFGF7F$F$F$%1SetLastVariableAGf*F$F$F)F$C$F,-%?Quillen Suslin/SetLastVariableAGF7F$F$F$%(DenomOfGf*F$F$6#%enCopyright~(C)~2008~by~Anna ~Fabianska.~All~rights~reserved.GF$C$F,-%6QuillenSuslin/DenomOfGF7F$F$F$%1IsPar kNormalizedGf*F$F$FBF$C$F,-%?QuillenSuslin/IsParkNormalizedGF7F$F$F$%&easyfGf*F $F$FBF$C$F,-%4QuillenSuslin/easyfGF7F$F$F$%2LocalSolReductionGf*F$F$FBF$C$F,-%@ QuillenSuslin/LocalSolReductionGF7F$F$F$%)DenomOfAGf*F$F$F)F$C$F,-%7QuillenSusl in/DenomOfAGF7F$F$F$%)testEASYGf*F$F$FBF$C$F,-%7QuillenSuslin/testEASYGF7F$F$F$ %9InjectiveParametrizationGf*F$F$FBF$C$F,-%GQuillenSuslin/InjectiveParametrizat ionGF7F$F$F$%3BasisOfImageModuleGf*F$F$FgnF$C$F,-%AQuillenSuslin/BasisOfImageMo duleGF7F$F$F$%*testeasygGf*F$F$FBF$C$F,-%8QuillenSuslin/testeasygGF7F$F$F$%,Sus linLemmaGf*F$F$F)F$C$F,-%:QuillenSuslin/SuslinLemmaGF7F$F$F$%5LaurentNormalizat ionGf*F$F$FBF$C$F,-%CQuillenSuslin/LaurentNormalizationGF7F$F$F$%&easy2Gf*F$F$F )F$C$F,-%4QuillenSuslin/easy2GF7F$F$F$%,QSAlgorithmGf*F$F$FBF$C$F,-%:QuillenSus lin/QSAlgorithmGF7F$F$F$%2PermutationMatrixGf*F$F$F)F$C$F,-%@QuillenSuslin/Perm utationMatrixGF7F$F$F$%5FindIrreducibleNotInGf*F$F$F)F$C$F,-%CQuillenSuslin/Fin dIrreducibleNotInGF7F$F$F$%*MaximalZZGf*F$F$F)F$C$F,-%8QuillenSuslin/MaximalZZG F7F$F$F$%,OneStepMoreGf*F$F$FBF$C$F,-%:QuillenSuslin/OneStepMoreGF7F$F$F$%,VarC hangeZZGf*F$F$F)F$C$F,-%:QuillenSuslin/VarChangeZZGF7F$F$F$%;RepresentBasisInGe neratorsGf*F$F$FgnF$C$F,-%IQuillenSuslin/RepresentBasisInGeneratorsGF7F$F$F$%1W LCFactorizationGf*F$F$6#%]oCopyright~(C)~2006~by~Alban~Quadrat~and~A.~F.~All~ri ghts~reserved.GF$C$F,-%?QuillenSuslin/WLCFactorizationGF7F$F$F$%(ReduceFGf*F$F$ F)F$C$F,-%6QuillenSuslin/ReduceFGF7F$F$F$%*ParkStep3Gf*F$F$FBF$C$F,-%8QuillenSu slin/ParkStep3GF7F$F$F$%(Seasyf1Gf*F$F$FBF$C$F,-%6QuillenSuslin/Seasyf1GF7F$F$F $%*JIsUnimodGf*F$F$F;F$C$F,-%8QuillenSuslin/JIsUnimodGF7F$F$F$%*CofactorsGf*F$F $F)F$C$F,-%8QuillenSuslin/CofactorsGF7F$F$F$%*MaximalFFGf*F$F$F)F$C$F,-%8Quille nSuslin/MaximalFFGF7F$F$F$%8ParkMatrixNormalizationGf*F$F$FBF$C$F,-%FQuillenSus lin/ParkMatrixNormalizationGF7F$F$F$%)LinBose2Gf*F$F$FduF$C$F,-%7QuillenSuslin/ LinBose2GF7F$F$F$%#LCGf*F$F$F;F$C$F,-%1QuillenSuslin/LCGF7F$F$F$%*testSEASYGf*F $F$FBF$C$F,-%8QuillenSuslin/testSEASYGF7F$F$F$%&RowQSGf*F$F$F)F$C$F,-%4QuillenS uslin/RowQSGF7F$F$F$%&RowQQGf*F$F$FBF$C$F,-%4QuillenSuslin/RowQQGF7F$F$F$%+SHeu risticGf*F$F$FBF$C$F,-%9QuillenSuslin/SHeuristicGF7F$F$F$%(IsMonicGf*F$F$F)F$C$ F,-%6QuillenSuslin/IsMonicGF7F$F$F$%2ReduceBasisDegreeGf*F$F$FBF$C$F,-%@Quillen Suslin/ReduceBasisDegreeGF7F$F$F$%*ReduceModGf*F$F$6#%jnCopyright~(C)~2005-2007 ~by~Anna~Fabianska.~All~rights~reserved.GF$C$F,-%8QuillenSuslin/ReduceModGF7F$F $F$%#LMGf*F$F$F;F$C$F,-%1QuillenSuslin/LMGF7F$F$F$%)HorrocksGf*F$F$FfzF$C$F,-%7 QuillenSuslin/HorrocksGF7F$F$F$%;Transformation2ReducedFormGf*F$F$FgnF$C$F,-%IQ uillenSuslin/Transformation2ReducedFormGF7F$F$F$%4NormalizationStepQQGf*F$F$F)F $C$F,-%BQuillenSuslin/NormalizationStepQQGF7F$F$F$%*OneStepQSGf*F$F$FBF$C$F,-%8 QuillenSuslin/OneStepQSGF7F$F$F$%'iseasyGf*F$F$F)F$C$F,-%5QuillenSuslin/iseasyG F7F$F$F$%-RightInverseGf*F$F$F;F$C$F,-%;QuillenSuslin/RightInverseGF7F$F$F$%0Re dRightInverseGf*F$F$F)F$C$F,-%>QuillenSuslin/RedRightInverseGF7F$F$F$%)LinBose1 Gf*F$F$FduF$C$F,-%7QuillenSuslin/LinBose1GF7F$F$F$%+AddLastRowGf*F$F$F)F$C$F,-% 9QuillenSuslin/AddLastRowGF7F$F$F$%)iseasyg1Gf*F$F$F)F$C$F,-%7QuillenSuslin/ise asyg1GF7F$F$F$%+testdeglocGf*F$F$FBF$C$F,-%9QuillenSuslin/testdeglocGF7F$F$F$%5 QuillenSuslinVersionGf*F$F$FgnF$C$F,-%CQuillenSuslin/QuillenSuslinVersionGF7F$F $F$%*ReduceDegGf*F$F$F)F$C$F,-%8QuillenSuslin/ReduceDegGF7F$F$F$%4BasisOfKernel ModuleGf*F$F$FgnF$C$F,-%BQuillenSuslin/BasisOfKernelModuleGF7F$F$F$%'SubDetGf*F $F$6#%enCopyright~(C)~2003~by~Anna~Fabianska.~All~rights~reserved.GF$C$F,-%5Qui llenSuslin/SubDetGF7F$F$F$%(Seasyf2Gf*F$F$FBF$C$F,-%6QuillenSuslin/Seasyf2GF7F$ F$F$%8copyright_QuillenSuslinGf*F$F$6#%jnCopyright~(C)~2003-2007~by~Anna~Fabian ska.~All~rights~reserved.GF$C$F,-%FQuillenSuslin/copyright_QuillenSuslinGF7F$F$ F$%-IsZeroMatrixGf*F$F$FgnF$C$F,-%;QuillenSuslin/IsZeroMatrixGF7F$F$F$%/Complet eMatrixGf*F$F$FBF$C$F,-%=QuillenSuslin/CompleteMatrixGF7F$F$F$%*MaximalQQGf*F$F $F)F$C$F,-%8QuillenSuslin/MaximalQQGF7F$F$F$%,FindEasyRowGf*F$F$FBF$C$F,-%:Quil lenSuslin/FindEasyRowGF7F$F$F$%)MatrixQSGf*F$F$F)F$C$F,-%7QuillenSuslin/MatrixQ SGF7F$F$F$%*MaxMinorsGf*F$F$Fh_lF$C$F,-%8QuillenSuslin/MaxMinorsGF7F$F$F$%(Seas ysrGf*F$F$FBF$C$F,-%6QuillenSuslin/SeasysrGF7F$F$F$%-LowestDegreeGf*F$F$FBF$C$F ,-%;QuillenSuslin/LowestDegreeGF7F$F$F$%1RightInverseFastGf*F$F$F)F$C$F,-%?Quil lenSuslin/RightInverseFastGF7F$F$F$%*IsRegularGf*F$F$F)F$C$F,-%8QuillenSuslin/I sRegularGF7F$F$F$%5BasisOfCoimageModuleGf*F$F$FgnF$C$F,-%CQuillenSuslin/BasisOf CoimageModuleGF7F$F$F$%,FindMonicInGf*F$F$F)F$C$F,-%:QuillenSuslin/FindMonicInG F7F$F$F$%'APatchGf*F$F$FBF$C$F,-%5QuillenSuslin/APatchGF7F$F$F$%-InvertibleInGf *F$F$FBF$C$F,-%;QuillenSuslin/InvertibleInGF7F$F$F$%&IsInSGf*F$F$FBF$C$F,-%4Qui llenSuslin/IsInSGF7F$F$F$%1WRCFactorizationGf*F$F$FduF$C$F,-%?QuillenSuslin/WRC FactorizationGF7F$F$F$%*OneStepEYGf*F$F$FBF$C$F,-%8QuillenSuslin/OneStepEYGF7F$ F$F$%4RedRightInverseFastGf*F$F$F)F$C$F,-%BQuillenSuslin/RedRightInverseFastGF7 F$F$F$%&RowZZGf*F$F$FBF$C$F,-%4QuillenSuslin/RowZZGF7F$F$F$%+PermOfListGf*F$F$F )F$C$F,-%9QuillenSuslin/PermOfListGF7F$F$F$%0RCFactorizationGf*F$F$FgnF$C$F,-%> QuillenSuslin/RCFactorizationGF7F$F$F$%&easygGf*F$F$FBF$C$F,-%4QuillenSuslin/ea sygGF7F$F$F$%'easysrGf*F$F$FBF$C$F,-%5QuillenSuslin/easysrGF7F$F$F$%)IsUnimodGf *F$F$Fh_lF$C$F,-%7QuillenSuslin/IsUnimodGF7F$F$F$%.ParkAlgorithmGf*F$F$FBF$C$F, -%<QuillenSuslin/ParkAlgorithmGF7F$F$F$%0LCFactorizationGf*F$F$FgnF$C$F,-%>Quil lenSuslin/LCFactorizationGF7F$F$F$%*HeuristicGf*F$F$FBF$C$F,-%8QuillenSuslin/He uristicGF7F$F$F$F$ M7R0 I8QuillenSuslin/APatchingf*6(%"AG%"mG'%"rG%%listG'%#irGF)'%"XG%'symbolG'%"UGF)6 &%"iG%"VG%"YG%"ZG6#%enCopyright~(C)~2005~by~Anna~Fabianska.~All~rights~reserved .G6"C(@$0-%%nopsG6#9&-F=6#9'O.-%&ERRORG6#%*dimensionG>8&9(>8',&FK"""*()&F?6#FO9 %FO&FBFSFO,&FKFO9$!""FOFX>8%-%)simplifyG6#-%".G6$&9)FS-%%subsG6$/FKFM-&%.Linear AlgebraG6#%.MatrixInverseG6#F[o?(8$""#FOF<%%trueGC%>FJ,&FJFO*()&F?6#,&FhoFOFXFO FTFO&FBFapFOFVFOFX>FM,&FMFO*()&F?6#FhoFTFO&FBFipFOFVFOFX>FZ-Ffn6#-Fin6%FZ-F^o6$ /FKFJ&F\oFip-F^o6$F`o-Fbo6#FcqOFZF8F8F8F8 M7R0 I=QuillenSuslin/CompleteMatrixf*6&'%"RG<$%'MatrixG%%listG'%$varGF)%$parG%*lastp aramG6(%"FG%"UG%"pG%"qG%"rG%"TG6#%enCopyright~(C)~2006~by~Anna~Fabianska.~All~r ights~reserved.G6"C$>8%-%:QuillenSuslin/QSAlgorithmG6#9"@%0F:7"C*@%/-%)whattype G6#9$F)>8$-F(FG>FJFH>8&-&%.LinearAlgebraG6#%0ColumnDimensionG6#FJ>8'-&FQ6#%-Row DimensionGFT>8(-%=Involutive/InvolutiveOptionsG6$Q)rationalF79&>8)-%:Involutive /PolLeftInverseG6$-&FQ6#%*SubMatrixG6%F:;"""FN;,&FVFgoFgoFgoFN9%-Fhn6$FjnFfn>F] o-%)simplifyG6#-%".G6$F]o,&-&FQ6#%/IdentityMatrixG6#FNFgo-Fbp6$-Fbo6%F:Ffo;FgoF VFJ!""O-F(6#-%$<,>G6$FJF]oOFAF7F7F7F7 M7R0 I6QuillenSuslin/DenomOff*6$%"MG%$strG6&%"iG%"jG%&DENOMG%#MMG6#%enCopyright~(C)~ 2008~by~Anna~Fabianska.~All~rights~reserved.G6"C'>8&7"@%/-%)whattypeG6#9$%%list G>8'F8>F;-%$mapG6$f*6#%"rGF.6$%)operatorG%&arrowGF.-%#opGF7F.F.F.-%(convertG6$F 8%)listlistG>F1-F>6$f*FAF.FCF.-%&denomGF7F.F.F.F;-%&printG6$Q&DENOMF.F1@%2"""9# O7#-FG6#F1O-%$lcmG6#FfnF.F.F.F. M7R0 I5QuillenSuslin/easysrf*6&'%"fG%%listG'%$varGF'%¶mG%$strG60%"rG%"nG%"iG%"jG %"FG%#IFG%#fsG%"EG%"bG%$E23G%#E4G%"UG%#E2G%#E3G6#%enCopyright~(C)~2006~by~Anna~ Fabianska.~All~rights~reserved.G6"C'@$2""#9#>8$-%=Involutive/InvolutiveOptionsG 6$Q)rationalF=9&>8%-%%nopsG6#9$?(8&"""FRFK%%trueGC&>8(FO>&FV6#FQ""!>8)-%;Involu tive/InvolutiveBasisG6$-%2Involutive/AddRhsG6#FV9%@&/-%$lhsG6#&Ffn6#FRFRC,@%0FQ FRC&>8+-%@QuillenSuslin/PermutationMatrixG6%FQFRFK>8*FO>&F_pFdo&FOFY>&F_pFY&FOF do>F_pFO>8,-%$rhsGFbo>&FhpFY&FhpFdo>F]qFZ>8--&%.LinearAlgebraG6#%/DiagonalMatri xG6#7#-%"$G6$FRFK?(8'FAFRFKFS>&F`q6$F\rFR*&,&FRFRFap!""FR&Fhp6#F\rFR>8.Faq?(F\r FAFRFKFS>&Ffr6$FRF\r,$&F_pFdrFbr@%Fgo>8/-%)simplifyG6#-%".G6%FjoF`qFfr>F_s-Fas6 #-Fds6$F`qFfr>FQFK/FQFKC%@$2""$FB-%&printG6#QXThis~case~is~not~so~easy.~All~gen erators~are~necessary.F=@$F@-FF6$FHFDO%&falseG@$F@FftOF_sF=F=F=F= M7R0 I?QuillenSuslin/SetLastVariableAf*6&'%"MG<$%'MatrixG%%listG'%$varGF)%"AG%¶m G6)%"nG%"mG%"gG%"FG%"UG%"CG%"rG6#%enCopyright~(C)~2005~by~Anna~Fabianska.~All~r ights~reserved.G6"C)@$/9%7"-%&ERRORG6#%/No~variables!?G>8(%&falseG@%/-%)whattyp eG6#9$F)C&>8'FJ>8$""">8&-%;QuillenSuslin/RightInverseG6%FMF<9'>FC-%7QuillenSusl in/testEASYG6&FMFRF<FVC%>FO-&%.LinearAlgebraG6#%-RowDimensionGFI>8%-&Fin6#%0Col umnDimensionGFI@$/FOFPC%>FM&-%(convertG6$FJ%)listlistG6#FP>FRFS>FCFX@$0-FH6#FCF (@%3Fco-%6QuillenSuslin/IsMonicG6$FM&F<6#!""C%-%)userinfoG6%""$%1SetLastVariabl eAG%Fnot~"easy"~row-~do~one~inductive~stepG>8)-%8QuillenSuslin/OneStepQSG6&FM%$ VARGFV9&OFbqC$-F\q6%F^qF_q%Othe~most~general~case~-~compute~MatrixQS~firstG@%FF >FC-%4QuillenSuslin/RowQSG6%FJF<FV>FC-%7QuillenSuslin/MatrixQSGFar>8*-%6Quillen Suslin/DenomOfGFap>Fbq-%5QuillenSuslin/APatchG6&FgqFgp&F<6#;FP!"#7#FCOFbqF8F8F8 F8 M7R0 I>QuillenSuslin/LCFactorizationf*6$'%"PG%'MatrixG'%$varG%%listG6.%"qG%"rG%#DtG% #NtG%#RtG%$RtTG%#LtG%$LtTG%"UG%$R2pG%#NpG%#DpG6#%enCopyright~(C)~2007~by~Anna~F abianska.~All~rights~reserved.G6"C0>8$-&%.LinearAlgebraG6#%-RowDimensionG6#9$>8 %-&F@6#%0ColumnDimensionGFC>8&-&F@6#%/DiagonalMatrixG6#7#-%"$G6$-%6QuillenSusli n/DenomOfGFCFF>8'-%)simplifyG6#-%".G6$FDFL>8(-F'6#-%$<,>G6$FYFL>8)-&F@6#%*Trans poseG6#F[o@%2""#9#>8+&-%7QuillenSuslin/LinBose1G6%Fbo9%%$optG6#Fjo>F]p&-F`p6$Fb oFbpFdp>8*-Fdo6#F]p@$4-%7QuillenSuslin/IsUnimodG6%F]pFbp%%trueGC$-%(WARNINGG6#% [othe~transfer~matrix~does~not~admit~a~left~coprime~factorization.G-%'RETURNG6# 7">8,-%:QuillenSuslin/QSAlgorithmGFaq>8--Fdo6#-&F@6#%*SubMatrixG6%F]r;""",&F=Fj rFFFjr;,&FFFjrFjrFjrF[s>8/-Fer6%Far;FjrF=Fbs>8.,$-Fer6%FarFbs;,&F=FjrFjrFjrF[s! ""-Fiq6#7$F_sFdsF:F:F:F: M7R0 I?QuillenSuslin/IsParkNormalisedf*6$%"aG'%$varG%%listG6,%+normalisedG%"lG%"pG%# coG%#deG%"cG%#dpG%"dG%"iG%"jG6#%enCopyright~(C)~2006~by~Anna~Fabianska.~All~rig hts~reserved.G6"C$@%/-%)simplifyG6#9$""!>8$%%trueGC)>F@%&falseG>8+-%'degreeG6$F =&9%6#""">8(7">8'FP>8&F:?(F6FMFMF60FTF>C'>8*-FH6$FTFJ>8)-%&coeffG6%FTFJFY>FR7$- %#opG6#FR-F;6#Fgn>FO7$-F^o6#FOFY>FT-F;6#,&FTFM*&FgnFM)FJFYFM!""?(8,FMFM-%%nopsG F_oFA?(8-FMFM-F`p6#FKFA@%0-FH6$&FR6#F^p&FK6#Fbp-%;QuillenSuslin/LowestDegreeGFh pC%-%)userinfoG6'""$%1IsParkNormalisedG%0the~coefficientGFip%:is~not~a~Laurent~ monomialG>F^pF_p>FbpFcp@$3/FbpFcp/F^pF_p>F@FAOF@F6F6F6F6 M7R0 I?QuillenSuslin/QuillenSuslinAlgf*6&'%"FG<$%'MatrixG%%listG'%$varGF)%"pG%*lastp aramG6"6#%enCopyright~(C)~2006~by~Anna~Fabianska.~All~rights~reserved.GF.@%/-%) whattypeG6#9$F)-%'RETURNG6#-%4QuillenSuslin/RowQSG6#9"-F86#-%7QuillenSuslin/Mat rixQSGF<F.F.F.F. M7R0 IBQuillenSuslin/NormalizationStepQQf*6&'%"FG%%listG'%$varGF''%%NVARGF'%$optG6-% %nvarG%"iG%"jG%"sG%"kG%"nG%"dG%"NG%#SUG%$ISUG%"mG6#%enCopyright~(C)~2005~by~Ann a~Fabianska.~All~rights~reserved.G6"C/@%0&9"6#!""Q%lastF;>8$9&>FE7$&FFFA-%#opG6 #&FF6#;"""!"#@$0-%%nopsG6#9%-FU6#FE-%&ERRORG6#%bpthe~number~of~the~new~variable s~and~the~number~of~the~old~variables~are~|+|+not~the~same!G>8)-FU6#9$>8,7#-%"$ G6$FPFT>8-F_o?(8%FPFPFT%%trueGC$>&F^o6#Ffo/&FWF[p&FEF[p>&FdoF[p/F^pF]p>8+-&%.Li nearAlgebraG6#%/DiagonalMatrixG6#7#-Fao6$FPFin>8'""!>8(F_q>8*%)infinityG?(FfoFP FPFTFgo?(8&FPFPFinFgo@$/-%'degreeG6#-%)simplifyG6#-%1QuillenSuslin/LCG6$&F\o6#F gqF]pF_q@$2-F[r6#FcrFcqC%>FcqFgr>F^qFgq>FaqFfo@%2F_qF^qC'>&Fcp6$F^qF^q*$-Far6$& F\o6#F^q&FW6#FaqFB>&F^o6#FP/&FWF\t&FEFis>&F^oFis/Fhs&FEF\t>&FdoF\t/FctFhs>&FdoF is/F_tF^tC&?(FfoFPFPFinFgo@$2-F[r6#&F\oF[pFcqC$>FcqF^u>F^qFfo>8.,&FcqFPFPFP?(Ff o""#FPFTFgoC$>Fjo/F]p,&F^pFP)Fct)Feu,&FTFPFfoFBFP>F`p/F^p,&F]pFP)F^tF^vFB>Fas*$ -Far6$-%%subsG6$F^oFfsFctFBO6%FcpF^oFdoF;F;F;F; M7R0 I?QuillenSuslin/WRCFactorizationf*6$'%"PG%'MatrixG'%$varG%%listG6,%"qG%"rG%#DtG %#NtG%#RtG%$RtTG%#LtG%$LtTG%#NpG%#DpG6#%]oCopyright~(C)~2006~by~Alban~Quadrat~a nd~A.~F.~All~rights~reserved.G6"C.>8$-&%.LinearAlgebraG6#%-RowDimensionG6#9$>8% -&F>6#%0ColumnDimensionGFA>8&-&F>6#%/DiagonalMatrixG6#7#-%"$G6$-%6QuillenSuslin /DenomOfGFAFD>8'-%)simplifyG6#-%".G6$FBFJ>8(-F'6#-%$<,>G6$FWFJ>8)-&F>6#%*Transp oseG6#Fin@%2""#9#>8+&-%7QuillenSuslin/LinBose1G6%F`o9%%$optG6#Fho>F[p&-F^p6$F`o F`pFbp@$/F[p7"C$-%(WARNINGG6#%Xthe~transfer~matrix~does~not~admit~a~WRC~factori zation.G-%'RETURNG6#Fip>8*-Fbo6#F[p>8,-&F>6#%*SubMatrixG6%Fcq;"""F;;F^rFD>8--Fi q6%Fcq;,&F;F^rF^rF^r,&F;F^rFDF^rF_r-F`q6#7$FgqFarF8F8F8F8 M7R0 IFQuillenSuslin/RepresentNFInGeneratorsf*6%%"eG'%"LG%%listG'%"vGF(6%%#IBG%#NFG% &IBInLG6#%enCopyright~(C)~2007~by~Anna~Fabianska.~All~rights~reserved.G6"C&>8$- %;Involutive/InvolutiveBasisG6$-%2Involutive/AddRhsG6#9%%$varG>8%-%8Involutive/ PolInvReduceG6&9$F4F<Q"CF1>8&-%'MatrixG6#-%$mapG6$f*6#%"iGF16$%)operatorG%&arro wGF1-%$rhsG6#&T#6#FBF1F16$F,F47#-%"$G6#;"""-%%nopsG6#F4O-%)simplifyG6#-%".G6$-F G6#&F>6#""#FEF1F1F1F1 M7R0 ICQuillenSuslin/BasisOfCoimageModulef*6%'%"RG%'MatrixG'%$varG%%listG%¶mG6$% #R2G%"BG6#%enCopyright~(C)~2007~by~Anna~Fabianska.~All~rights~reserved.G6"C'@$/ 9&%&falseG-%(WARNINGG6#%HNot~implemented~yet,~computation~over~QG@$-%;QuillenSu slin/IsZeroMatrixG6#9$C$-F86#%doThe~module~is~defined~as~a~coimage~of~a~zero~ma trix,~thus~the~zero~moduleGO7">8$-F'6#-%8Involutive/SyzygyModuleG6$F?9%>8%-%DQu illenSuslin/BasisOfCokernelModuleG6%FGFMF5OFOF1F1F1F1 M7R0 I8QuillenSuslin/IsRegularf*6&'%"fG%%listG%$varG%¶mG%$strG6)%"jG%"LG%"mG%$PS FG%"NG%#anG%"rG6#%enCopyright~(C)~2005~by~Anna~Fabianska.~All~rights~reserved.G 6"C'@$2""#9#>8*-%=Involutive/InvolutiveOptionsG6$Q)rationalF59&>8)%%trueG@%/&9$ 6#"""""!>FC%&falseGC$>8%7"?(8$FJFJ,&-%%nopsG6#FHFJ!""FJFDC)>FP7$-%#opG6#FP&FH6# FS>8&&FH6#,&FSFJFJFJ>8'-%8Involutive/PolSubFactorG6%7#F\oFP9%>8(-%8Involutive/P olInvReduceG6%&Fao6#F9-%;Involutive/InvolutiveBasisG6$FPFfoFfo@$2""$F:-%&printG F^o@$0<#-Fgn6#Fho<#FKC&-Fep6'F\oQ=is~a~zero~divisor~in~R[var]/F5FPQ%withF5Fho>F CFM@$F8-F>6$F@F<OFC@$Fbp-Fep6%Q$a,NF5F]oFho@$F8FcqOFCF5F5F5F5 M7R0 I8QuillenSuslin/MaximalQQf*6%'%"LG%%listG'%$varGF'%$strG63%#IBG%"FG%$nenG%"aG%$ denG%#L1G%$IB1G%#pmG%$fpmG%"MG%"iG%#FiG%)FaktorenG%*NFaktorenG%%varnG%$PZSG%"PG 6#%enCopyright~(C)~2005~by~Anna~Fabianska.~All~rights~reserved.G6"C,>8$-%;Invol utive/InvolutiveBasisG6$9$9%@$2""#9#F?@$/FB7#"""C$-%&printG6#QDThe~ideal~is~alr eady~the~whole~ringF?O7">8%-%=Involutive/FactorModuleBasisG6#FG@$FIF?@$/FXFNOFB @%-%%typeG6$FX%"+GC$>8&<"?&8.FX%%trueGC$>8'-%'indetsG6#-%&denomG6#Fdo@$2-%%nops G6#Fao-Fbp6#Fho>FaoFho>Fao-Fjo6#-F]p6#FX@%/FaoFboC$@$FIF??(FdoFJFO-FbpF[qFeoC%> 8+-%6Involutive/PolMinPolyG6'&FXF^pFBFG/Q$varF?%'lambdaG/Q'degreeF?Faq>8,-%(fac torsG6#Fdq@%-%(irreducGFbrC%@$FIF?@%/-%'degreeGFbrFaqC%@$FIF?>FdoFaqOFB@$FIF?@$ /FdoFaq-FR6#%`qall~MinimalPolynoms~are~irreducible,~but~all~of~degree~smaller~t hen~the~dimension~of~the~FactorModuleGC'@$FIF?>8)7$-%#opG6#FF-%%subsG6$/F[rFhq& &&F_r6#FJ6#FOFft>FdoFaq@$FIF?>8*-FD6$FisFGC,@$FIF?>827#-F\t6#-%&minusG6$<#-F\tF enFao-FD6$FFF`u>83<#-F\t6#-%7Involutive/PolZeroSetsGF?@$FIF?>FisFF@$FIF??(FdoFO FOFapFeoC)>80f*6#%"xGF?6$%)operatorG%&arrowGF?-%$mapG6$f*6#F6F?F\wF?&FFFftF?F?F ?&-FarF]tFetF?F?F?>81-F`w6$f*6#F/F?F\wF?-F\t6#-T#F]tF?F?6$F8FhvF\v@$FIF?>84&Fao F^p?(F?FOFOF?-%#inG6$FdxFhw>Fdx,&FdxFO!""FO@$FIF?>Fis7$-F\t6#FisFdx@$FIF?>FjtF[ u@%FI>8--F"6%FjtFG&9"6#""$>Ffy-F"6$FjtFGOFfyF?F?F?F? M7R0 I7QuillenSuslin/Patchingf*6'%"mG'%"rG%%listG'%#irGF('%"XG%'symbolG'%"UGF(6'%"iG %"VG%"YG%"ZG%#UIG6#%enCopyright~(C)~2004~by~Anna~Fabianska.~All~rights~reserved .G6"C*@$0-%%nopsG6#9%-F=6#9&O.-%&ERRORG6#%*dimensionG>8&9'>8',&FK"""*()&F?6#FO9 $FO&FBFSFOFKFO!"">8(-&%.LinearAlgebraG6#%.MatrixInverseG6#&9(FS>8%-%)simplifyG6 #-%".G6$Fin-%%subsG6$/FKFMFX-%&printG6$Q)denom~ofF8-%(DenomOfG6#-F^o6#F\o?(8$"" #FOF<%%trueGC'>FJ,&FJFO*()&F?6#,&FapFOFVFOFTFO&FBFjpFOFKFOFV>FM,&FMFO*()&F?6#Fa pFTFO&FBFbqFOFKFOFV>FX-FZ6#&FjnFbq>F\o-F^o6#-Fao6%F\o-Fdo6$/FKFJFgqFco-Fho6$Fjo -F\pF_pOF\oF8F8F8F8 M7R0 I5QuillenSuslin/SubDetf*6%'%"MG%'MatrixG%'RrangeG%'CrangeG6"6#%enCopyright~(C)~ 2003~by~Anna~Fabianska.~All~rights~reserved.GF*-&%.LinearAlgebraG6#%,Determinan tG6#-&F/6#%*SubMatrixG6%9$9%9&F*F*F*F* M7R0 I7QuillenSuslin/compiled"-Z:423?6" M7R0 IFQuillenSuslin/copyright_QuillenSuslinf*6"F$6#%jnCopyright~(C)~2003-2007~by~An na~Fabianska.~All~rights~reserved.GF$C)-%&printG6#%>QuillenSuslin~(2003-2007)~( C)G-F)6#%MCopyright~(C)~(2003-2007)~by~Anna~Fabianska.G-F)6#%5All~rights~reserv ed.G-F)6#%YThis~software~should~be~referenced~if~it~is~used~in~workG-F)6#%>even tuating~in~a~publication.G-F)6#%GUsers~are~free~to~modify~this~program,G-F)6#%T but~it~is~not~to~be~redistributed~in~modified~form.GF$F$F$F$ M7R0 I4QuillenSuslin/easyff*6&'%#ffG%%listG'%%varsGF'%$parG%$strG6/%¶mG%"fG%"rG% "nG%#IBG%"iG%"jG%"kG%#riG%#M1G%#M2G%"PG%$varG6#%enCopyright~(C)~2006~by~Anna~Fa bianska.~All~rights~reserved.G6"C0@%2""#9#>8$9&>FC%%trueG@%/-%)whattypeG6#FC%(i ntegerG@%-%(isprimeGFK>8%9$-%&ERRORG6#QjnExpecting~a~prime~number~as~a~characte ristic~of~a~finite~field!F<>FQFR>809%@$/FY7"@%/FCFFO-%4QuillenSuslin/RowQQG6#FQ >FY7#%$_T_G>8'-%%nopsGF]o>8--&%.LinearAlgebraG6#%/DiagonalMatrixG6#7#-%"$G6$""" Fbo>8.Fgo@$/FC%&falseGC$-%)usefinfoG6%""$%*HeuristicG%.easyf~over~ZZG?(8)FapFap FboFF@$/-%$absG6#&FQ6#F_qFapC'>&Ffo6$F_qF_qFeq?(8+FapFapFboFF>&Fcp6$F_qF\r,$&FQ 6#F\r!"">&FcpFjqFap@%0F_qFapC$>8/-%@QuillenSuslin/PermutationMatrixG6%FapF_qFbo O-%)simplifyG6#-%".G6%FfoFcpFjrO-F`s6#-Fcs6$FfoFcp>F_qFbo@$FinC$-%)userinfoG6%F [qF\q%.easyf~over~QQG?(F_qFapFapFboFF@$/-%'degreeG6$FeqFY""!C'>Fiq*$FeqFcr?(F\r FapFapFboFF>F^rF`r>FerFap@%FgrC$>FjrF[sOF_sOFfs>F_qFbo@$3FHFNC$-F^t6&F[qF\q%.ea syf~over~FFGFC?(F_qFapFapFboFF@$FctC'>Fiq-%$modG6$FjtFC?(F\rFapFapFboFF>F^rF`r> FerFap@%FgrC$>FjrF[sOF_sOFfs>F_qFbo-F^t6%""%F\q%9test~two~components~of~fG@$F?@ %FH@%FN>8&-%=Involutive/InvolutiveOptionsG6$Q%charF<FCFS>Fbw-Fdw6$Q)rationalF<F C?(F_qFapFap,&FboFapFcrFapFF?(8*,&F_qFapFapFapFapFboFFC%>8(-%;Involutive/Involu tiveBasisG6$-%2Involutive/AddRhsG6#7$Feq&FQ6#F^xFY@$2F[qFA-%&printG6#7$F_qF^x@& /-%$lhsG6#&Fbx6#FapFapC0>8,-%$rhsGFfy@$F?@%FH-Fdw6$FfwFbw-Fdw6$FjwFbw>FfoFgo>Fi q&F[zFhy>&Ffo6$F^xF_q&F[z6#F@>&Ffo6$F_qF^x,$FjxFcr>&Ffo6$F^xF^xFeq>FcpFgo?(F\rF apFapFboFF>F^rF`r>FerFap>&FcpF^[lFgt@%FgrC$>FjrF[sOF_sOFfs>F_qFbo>F^xFbo/F_qF\x C%@$F?@%FHF`zFbz-F^t6%F\wF\q%LThe~row~is~not~so~easy~over~the~given~ring.GOFfpO FfsF<F<F<F< M7R0 I@QuillenSuslin/LocalSolReductionf*6%'%#ffG%%listG'%$varGF''%"PGF'60%"nG%%lastG %"MG%"iG%"jG%#lcG%#MfG%"dG%"mG%#cpG%#cqG%"hG%"kG%"fG6#%enCopyright~(C)~2006~by~ Anna~Fabianska.~All~rights~reserved.G6"C,>8$-%%nopsG6#9$>8%&9%6#!"">81-%(collec tG6$FDFF>8)-%$mapG6$f*6#%"aGF=6$%)operatorG%&arrowGF=-%1QuillenSuslin/LCG6$FDT# F=F=6$F.FFFL@$/-%;Involutive/InvolutiveBasisG6$9&FH7#"""-%&ERRORG6#%UThe~ideal~ of~non~invertible~elements~is~a~whole~ringG>8&-&%.LinearAlgebraG6#%/DiagonalMat rixG6#7#-%"$G6$FaoF@?(8'FaoFaoF@%%trueGC$>8+-%&numerG6#&FQ6#Fcp@$30F[qFao0-F]o6 $7$-%#opG6#F_o,&FaoFao*&FgpFao%$_T_GFaoFJ7$-Feq6#FHFiqF`oC(-%)userinfoG6&""%%2L ocalSolReductionG%#IBGFaq-F_r6&""$Fbr%1invertible~coeffGF[q>&Fgo6$FcpFcp*$F[qFJ >FL&-%(convertG6$-%)simplifyG6#-%".G6$-%'MatrixGFCFgo%)listlistG6#Fao-F_r6&FfrF br%4after~trasformationG-FN6$FLFFO6$FgoFgp-F_r6%FfrFbr%,SuslinLemmaG>8,&&-%6Qui llenSuslin/IsMonicG6%FDFF%$strG6#""#F]u?(FcpFaoFaoF@Fdp@&F_q?(8(FaoFao-%'degree G6$&FDF\qFFFdpC$>Fgp-Fip6#-%&coeffG6%FfuFF,&FcuFaoFbuFJ@$F`qC->6%8-8.8/-%:Quill enSuslin/SuslinLemmaG6&&FD6#FftFfuFFF^v>80&-%&minusG6$<#-F`p6#;FaoF@<$FcpFftFjs >&Fgo6$FftF\wFcv>&Fgo6$FcpF\wFdv>FLF]s-F_r6&FfrFbr%6ff~after~Suslin~LemmaG-FS6$ f*FVF=FXF=-FNFgnF=F=FinFL-F_r6&FfrFbr%;LC[k]~should~be~invertibleG-Ffn6$&FL6#F\ wFF>Fgp-Fip6#Fgx>8*Fho>&F_y6$F\wF\w*$FgxFJO6$-Fbs6#-Fes6$FgoF_yFgp/FcpF@-%(WARN INGG6#%XFail~to~find~an~invertible~coefficient~in~the~given~rowGF=F=F=F= M7R0 I8QuillenSuslin/MaximalZZf*6$'%"LG%%listG'%$varGF'6,%#IBG%"rG%"PG%"MG%#lcG%"iG% "jG%)FaktorenG%#PFG%$_T_G6#%enCopyright~(C)~2005~by~Anna~Fabianska.~All~rights~ reserved.G6"C$>8%-%=Involutive/InvolutiveOptionsG6$Q)rationalF7%&falseG@%/9%7"C '>8$-%;Involutive/InvolutiveBasisG6$9$7#8-@$/FF7#"""C%-%&printG6#QDThe~ideal~is ~already~the~whole~ringF7-F<6$F>F:OFC@%-%(isprimeG6#&FF6#FP>8&Fgn>Fjn&&&-%)ifac torsGFfn6#""#FhnFhnFVO7#FjnC)>FF-FH6$FJFB@$FNC%-FS6#QDthe~ideal~is~already~the~ whole~ringF7FVOFC@%/-%'degreeG6$FgnFB""!@%FZ>FjnFgn>FjnF\oC(>8(FJ?(8*FPFP-%%nop sG6#FJ%%trueG?(8)FPFP-F^q6#FBF`q>&Fjp6#F\q-%1QuillenSuslin/LCG6$Ffq&FB6#Fbq>8+f *6#%"xGF76$%)operatorG%&arrowGF7-%$mapG6$f*6#F0F7FbrF7&FJFhnF7F7F7&-F`oF_qFaoF7 F7F7>8,<#-%#opG6#-Ffr6$f*FirF7FbrF7-Fas6#-T#F_qF7F76$F2F^rFjp>FjnFbo?(F7FPFPF7- %#inG6$FjnF^s>Fjn-%*nextprimeG6#Fjn@$2Fbo9#-FS6$QVComputation~over~the~finite~f ield~of~charactetistic~:F7Fjn>8'-%8QuillenSuslin/MaximalFFG6%FJFBFjnFVO7$-Fas6# F[uFjnF7F7F7F7 M7R0 I:QuillenSuslin/OneLocalSolf*6&'%#ffG%%listG'%$varGF''%"PGF'%¶mG64%"fG%"nG% "iG%"jG%"UG%%lastG%"MG%#IBG%"HG%"mG%#lcG%"dG%#LSG%#PPG%#IMG%(reducedG%"rG%"SG6# %enCopyright~(C)~2006~by~Anna~Fabianska.~All~rights~reserved.G6"C8-%)userinfoG6 '"""%,OneLocalSolG%6START~OneLocalSol~forG9$9&>8%-%%nopsG6#FJ@$2FM""$-%&ERRORG6 #%\oThe~row~has~less~then~3~components,~please~use~heuristic~methods.G>857">8)& 9%6#!"">8(-&%.LinearAlgebraG6#%/DiagonalMatrixG6#7#-%"$G6$FGFM>84-%=Involutive/ InvolutiveOptionsG6$Q)rationalFB9'@$/-%;Involutive/InvolutiveBasisG6$FKFhn7#FG- FU6#%UThe~set~of~non~invertible~elements~is~the~whole~ringG>827#-%6QuillenSusli n/IsMonicG6%FJFfn%$strG@%0-FO6#FhpFG>8-&&Fhp6#""#Ffq-FU6#%IThe~row~does~not~hav e~a~monic~component!G-FE6&""%FH%4ff~before~reductionGFJ-FE6&F]rFH%9degrees~befo re~reductionG-%$mapG6$f*6#%"aGFB6$%)operatorG%&arrowGFB-%'degreeG6$FJT#FBFB6$F3 FfnFJ>6$8*8/-%9QuillenSuslin/testdeglocG6&FJFhnFKF]p@$0Fcs""!>FY7$-%#opG6#FYFcs @$0FbsFZC$-Fjo6$F\pFhoO6$FbsFY-FE6'FSFH%2reduce~degree~forGFJFfn-FE6%FSFH-%8Qui llenSuslin/ReduceDegG6%FJFfn.83>6$8$8,F[u-FE6&FSFH%2f~after~reductionGFbu@%F_uC %>80-F"6&FbuFhnFKF]p>F\o-%)simplifyG6#-%".G6$Fcu&Fju6#FG>FY7$F\t-F]t6#&FjuFfqC, >Fas-%@QuillenSuslin/LocalSolReductionG6%FbuFhnFK-FE6&F]rFH%:not~invertible~ele ments~PGFK>FYF[t-FE6%F]r%5LocalStepAvoidingMaxG%K"B",~compute~solutions~for~the ~reduced~rowG>Fbu&-%(convertG6$-Fbv6$-%'MatrixG6#FbuFbs%)listlistGFev>Fbu-%(col lectG6$-F_vFaxFfn-FE6&F]rFHFgwFbu>FjuF[v>F\o-F_v6#-Fbv6$FbsFdv>FYFgvFbtO6$F\oFY FBFBFBFB M7R0 I<QuillenSuslin/ParkAlgorithmf*6$'%"RG%'MatrixG'%$varG%%listG61%"rG%"cG%"UG%"SG %#UiG%%nvarG%#ffG%"MG%#suG%$isuG%"iG%"pG%#TfG%"LG%"jG6#%enCopyright~(C)~2006~by ~Anna~Fabianska.~All~rights~reserved.G6"C*>8$-&%.LinearAlgebraG6#%-RowDimension G6#9$>8%-&FC6#%0ColumnDimensionGFF>8&-&FC6#%/DiagonalMatrixG6#7#-%"$G6$"""FI>8' FG>8)-%$mapG6$f*6#%"aGF=6$%)operatorG%&arrowGF=-%$catG6$FG%"_GF=F=F=9%?(8.FYFYF @%%trueGC+>8*&-%(convertG6$-&FC6#%*SubMatrixG6%FenFgo;FgoFI%)listlistG6#FY-%)us erinfoG6%""$%.ParkAlgorithmG%Icomputation~over~Laurent~polynomial~ringG>6&8/8+8 ,8--%:QuillenSuslin/Laurent2PolG6%F[pFeoFgn>80-%4QuillenSuslin/RowQSG6%F`qFgnFh o@$/Fhq7"-%'RETURNG6#F^r>8(-%)simplifyG6#-%".G6$Faq-%%subsG6$FcqFhq@%/FgoFY>FO- Fhr6$FOFcr>FO-Fhr6$FO-FQ6#7$-%#opG6#7#-FW6$FY,&FgoFY!""FYFcr>Fen-Fer6#-Fhr6$FGF O-Fip6&F[qF\q%%StepGFgo?(82FYFY,&F@FYF_tFYFhoC%>81FP?(Fgo,(F@FYFitF_tFYFYFYF@Fh o>&F]u6$Fgo,&F@FYFitF_t,$&FenFbuF_t>FO-Fer6#-Fhr6$FOF]uO-Fer6#FOF=F=F=F= M7R0 I9QuillenSuslin/PermOfListf*6#'%"LG%%listG6&%"nG%$PerG%"iG%#LiG6#%enCopyright~( C)~2005~by~Anna~Fabianska.~All~rights~reserved.G6"C&>8$-%%nopsG6#9$>8%7#F6@'/F2 """OF8/F2""#>F87$-%#opG6#F87$&F66#!""&F66#F<?(8&F<F<F2%%trueGC$>8'7#-FC6#-%&min usG6$<#-FCF5<#&F66#FL>F87#-FC6#-%&unionG6$<#FB<#-FC6#-%$mapG6$f*6#%"lGF/6$%)ope ratorG%&arrowGF/7$FX&T$6#T%F/F/6&F&F6F+FL-F"6#FPOF8F/F/F/F/ M7R0 I7QuillenSuslin/testEASYf*6&'%"fG%%listG'%"gGF''%$varGF'%¶mG6#%"EG6#%enCopy right~(C)~2006~by~Anna~Fabianska.~All~rights~reserved.G6"C&-%)userinfoG6%""$%*H euristicG%+test~easyfG>8$-%4QuillenSuslin/easyfG6%9$9&9'@%/-%)whattypeG6#F:%'Ma trixGC$-F46%F6F7%9easyf~-~no~induction~!!!GOF:C%-F46%F6F7%,test~easysrG>F:-%5Qu illenSuslin/easysrGF=@%FBC$-F46%F6F7%:easysr~-~no~induction~!!!GOF:C%-F46&F6F7% ,~test~easygG9%>F:-%8QuillenSuslin/testeasygG6&F>FgnF?F@@$FBC$-F46%F6F7%9easyg~ -~no~induction~!!!GOF:OF:F1F1F1F1 M7R0 IGQuillenSuslin/InjectiveParametrisationf*6%'%"RG%'MatrixG'%$varG%%listG%¶m G6%%"nG%"mG%"UG6#%enCopyright~(C)~2006~by~Anna~Fabianska.~All~rights~reserved.G 6"C&>8$-&%.LinearAlgebraG6#%-RowDimensionG6#9$>8%-&F86#%0ColumnDimensionGF;>8&- %1QuillenSuslinAlgG6%F<9%9&@%/-%)whattypeG6#FDF'O-&F86#%*SubMatrixG6%FD;"""F>;, &F5FVFVFVF>-%&ERRORG6#%8Not~a~unimodular~matrixGF2F2F2F2 M7R0 IGQuillenSuslin/InjectiveParametrizationf*6%'%"RG%'MatrixG'%$varG%%listG%¶m G6%%"nG%"mG%"UG6#%enCopyright~(C)~2006~by~Anna~Fabianska.~All~rights~reserved.G 6"C&>8$-&%.LinearAlgebraG6#%-RowDimensionG6#9$>8%-&F86#%0ColumnDimensionGF;>8&- %:QuillenSuslin/QSAlgorithmG6%F<9%9&@%/-%)whattypeG6#FDF'O-&F86#%*SubMatrixG6%F D;"""F>;,&F5FVFVFVF>-%&ERRORG6#%8Not~a~unimodular~matrixGF2F2F2F2 M7R0 I7QuillenSuslin/LinBose1f*6$'%"RG%'MatrixG'%$varG%%listG6-%$extG%"LG%"aG%$MinG% "UG%"PG%"pG%"qG%#RpG%$RppG%"VG6#%]oCopyright~(C)~2006~by~Alban~Quadrat~and~A.~F .~All~rights~reserved.G6"C%>8$-%?Involutive/PolTorsionfreeParamG6$-&%.LinearAlg ebraG6#%*TransposeG6#9$9%>8%-%8Involutive/SyzygyModuleG6$&F<6#"""FG@%-&%'linalg G6#%'iszeroG6#-%(convertG6$FI%&arrayG-%'RETURNG6#7$-FX6$-%8Involutive/PolFactor izeG6%FFFMFGF'FM@%2""#9#@%0-%:Involutive/PolLeftInverseG6$&F<6#F`oFG%%FAILGC)>8 (-%7QuillenSuslin/MatrixQSG6%-FA6#FgoFG%%trueG>8+-&FB6#%-RowDimensionGFap>8*-&F B6#%0ColumnDimensionGFap>8.-&FB6#%*SubMatrixG6%F\p;FOFdp;,&FjpFOFOFOFdp>8,-FA6# F`q>8--F\o6%FFFjqFG-Ffn6#7$-FX6$-%%copyG6#F^rF'-FX6$-Fgr6#FjqF'C$-%&printG6#%OT his~heuristic~does~not~work~for~this~example.G-Ffn6#7"C'>8&-%%nopsG6#&FIFN>8'-% AInvolutive/PolShortestResolutionG6$-F'6#FIFG>Fdp-Ffp6#&F]tFN>Fjp-F\qFet@%2FO-F is6#F]tC$-%(WARNINGG6#%`oThe~conditions~for~LinBose1~are~not~fulfilled:~the~mod ule~is~not~freeGFbs@%-%7QuillenSuslin/IsUnimodG6%FftFGFbpC'>F\p-F^pFeu>8)-Fbq6% F\p;FOFjp;,&FdpFOFOFOFjp>Fjq-%".G6$-Fbq6%-Feo6$FjuFG;FO,&FjpFOFdp!"";FOFgsFM>F^ r-%$mapG6$%)simplifyGF_rFarC$-F_u6#%NThe~conditions~for~LinBose1~are~not~fulfil ledGFbsF9F9F9F9 M7R0 I8QuillenSuslin/Heuristicf*6&'%"fG%%listG'%$varGF'%¶mG%*lastparamG6,%"gG%"h G%"EG%"FG%"GG%"HG%"MG%"nG%"iG%*infolevelG6#%enCopyright~(C)~2006~by~Anna~Fabian ska.~All~rights~reserved.G6"C(>8+-%%nopsG6#9$@%2""#9#>8$-%;QuillenSuslin/RightI nverseG6%F@9%9&>FF-FH6$F@FJ@$2""$FD>&8-6#%*HeuristicGFQ>8&-%7QuillenSuslin/test EASYG6&F@FFFJFK@$/FX%&falseGC&@%FB>8%-FH6%FFFJFK>F\o-FH6$FFFJ@$FP>FSFQ>8(-FZ6&F FF\oFJFK@%/FeoFhn>FXFeoC'>8)-&%.LinearAlgebraG6#%*TransposeG6#-&F`p6#%.MatrixIn verseG6#Feo>8'-%)simplifyG6#-%".G6$-%'MatrixGF?F]p>8*-&F`p6#%/DiagonalMatrixG6# 7#-%"$G6$"""F<?(8,FCF^rF<%%trueG>&Fdq6$F^rF`r,$&FjpFdr!"">FX-F\q6#-F_q6$F]pFdqO FXF9F9F9F9 M7R0 I;QuillenSuslin/ReduceModoldf*6&%"TG'%"MG%%listG'%$varGF(%¶mG6(%"tG%"rG%$VA RG%#IBG%"aG%"cG6#%enCopyright~(C)~2005~by~Anna~Fabianska.~All~rights~reserved.G 6"C'@%-%%typeG6$9$F(>8$F;>F=7#F;@$2""$9#>8%-%=Involutive/InvolutiveOptionsG6$Q) rationalF59'@%2"""-%%nopsG6#9&C%>8&7$&FQ6#;FM!"#7#&FQ6#!"">8'-%;Involutive/Invo lutiveBasisG6%9%FT7$""%F_o>8)-%$mapG6$f*6#F1F56$%)operatorG%&arrowGF5-%8Involut ive/PolInvReduceG6&F;T#T%F^oF5F56&F0FinF/FT-%)simplifyG6#F=C$>Fin-F[o6$F]oFQ>Fa o-Fco6$f*FfoF5FgoF5-F[p6%F;F]pT&F5F56&F0FinF*FQF`p@$FA-FG6$FIFE@%F8OFaoO&Fao6#F MF5F5F5F5 M7R0 ICQuillenSuslin/QuillenSuslinVersionf*6"F$6#%enCopyright~(C)~2007~by~Anna~Fabia nska.~All~rights~reserved.GF$-%&printG6#Q:Last~update:~09~July~2008F$F$F$F$F$ M7R0 IKQuillenSuslin/RepresentElementInGeneratorsf*6%%"eG'%"LG%%listG'%"vGF(6$%#IBG% #NFG6#%enCopyright~(C)~2007~by~Anna~Fabianska.~All~rights~reserved.G6"C%>8$-%;I nvolutive/InvolutiveBasisG6$-%2Involutive/AddRhsG6#9%%$varG>8%-%8Involutive/Pol InvReduceG6&9$F3F;Q"CF0O-%'MatrixG6#&F=6#""#F0F0F0F0 M7R0 I7QuillenSuslin/DenomOfAf*6$'%#_MG<$%'MatrixG%%listG%$strG6%%"iG%"jG%&DENOMG6#% enCopyright~(C)~2005~by~Anna~Fabianska.~All~rights~reserved.G6"C%>8&7"@%-%%type G6$9$F)?(8$"""F=-%%nopsG6#F:%%trueG@$0-%&denomG6#&F:6#F<F=>F4-%&unionG6$<#-%#op G6#F4<#FD?(F<F=F=-&%.LinearAlgebraG6#%-RowDimensionGF@FA?(8%F=F=-&FU6#%0ColumnD imensionGF@FA@$0-FE6#&F:6$F<FYF=>F4-FK6$FM<#Fjn@%2F=9#O7#FNO-%$lcmG6#FNF1F1F1F1 M7R0 I8QuillenSuslin/Cofactorsf*6#'%"FG%'MatrixG6&%"mG%"nG%*cofactorsG%"iG6#%enCopyr ight~(C)~2005~by~Anna~Fabianska.~All~rights~reserved.G6"C%>8%-&%.LinearAlgebraG 6#%-RowDimensionG6#9$>8$-&F56#%0ColumnDimensionGF8@%/F;,&F2"""FCFCC'>8&7#-%"$G6 $""!F;>&FF6#FC*&)!"",&F;FCFCFCFC-%5QuillenSuslin/SubDetG6%F97#;FCF27#;""#F;FC?( 8'FZFC,&F;FCFQFC%%trueG>&FF6#Ffn*&)FQ,&F;FCFfnFCFC-FT6%F9FV7$;FC,&FfnFCFQFC;,&F fnFCFCFCF;FC>&FF6#F;-FT6%F9FV7#;FCFgnOFF-%&ERRORG6#%MThe~matrix~is~not~of~the~d imension~n~x~(n+1)GF/F/F/F/ M7R0 I3QuillenSuslin/initf*6"6#%*ini_printG6#%jnCopyright~(C)~2003-2007~by~Anna~Fabi anska.~All~rights~reserved.GF$@$50%:QuillenSuslin/initializedG.%%trueG32""!9#-% %typeG6$&9"6#""".%%listGC'>8$f*F$F$F$F$@$0%9_Env_QuillenSuslin_printG%&falseG-% &printG6#F7F$F$F$@$4-%)assignedG6#%3Involutive/versionGC$-%'printfG6#QGPlease~i nstall~the~Involutive~package.F$-%&ERRORG6#%!G>F,F--%%withG6#%+InvolutiveG-FX6# %/QuillenSuslinTGF$6#F,F$F$ M7R0 I@QuillenSuslin/NormalisationStepf*6''%"FG%%listG'%$varGF''%%NVARGF'%$parG%$opt G69%%nvarG%)IMOutputG%"iG%"jG%"nG%#npG%&alphaG%#SUG%$ISUG%#suG%$isuG%"fG%#nsG%# FsG%"mG%"uG%"qG%"aG%#qsG%¶mG%$dnsG%%dFslG%"MG6#%enCopyright~(C)~2005~by~Ann a~Fabianska.~All~rights~reserved.G6"C&@%0&9"6#!""Q%lastFH>8$9&>FR7$&FSFN-%#opG6 #&FS6#;"""!"#@$0-%%nopsG6#9%-F\o6#FR-%&ERRORG6#%`pThe~number~of~the~new~variabl es~and~the~number~of~the~old~variables~are~not~the~same!G@%29#""%>87%%trueG>Fjo 9'@%/FjoF[pC$-%&printG6#%6normalisation~over~QQG-%BQuillenSuslin/NormalisationS tepQQG6%9$F^oFRC.-Fbp6#%6normalisation~over~ZZG>8(-F\o6#Fhp>8+7#-%"$G6$FgnF[o>8 ,Fcq?(8&FgnFgnF[oF[pC$>&Fbq6#Fjq/&F^oF^r&FRF^r>&FhqF^r/FarF`r>8%7#-%6QuillenSus lin/IsMonicG6%FhpF^oQ$strFH@%/&Ffr6#FgnF[pC(>8'&&Ffr6#""#Fes>Fjq&Fds6#""$>8)&Fh p6#Fbs>8*-%@QuillenSuslin/PermutationMatrixG6%FbsF^qF^q@$0FjqFgnC&>&FbqF_s/&F^o F_sFar>F]r/F`r&FRF_s>&FhqF_s/FarFjt>Fcr/F]uF`rO6%F`tFbqFhqC-?(FjqFgnFgnF^qF[p@& /&FhpF^r""!C'>8/Fhp>&F]vF^r&Fhp6#F^q>F]v&F]vFen>FjqF^q>8:-Fbt6%FjqF^qF^q/FjqF^q C$>F]v&FhpFen>Ffv-&%.LinearAlgebraG6#%/DiagonalMatrixG6#7#-Feq6$FgnF^q>6&F\t848 -8.-%:QuillenSuslin/FindMonicInG6&F]vF^oFRFjo>81-%%subsG6$FjwFhp>F`x-%$mapG6$f* 6#F2FH6$%)operatorG%&arrowGFH-%)simplifyGF`qFHFHFHF`x>86-Fbx6$FjwFiw>80-Fbx6$Fj wF\t>88-%'degreeG6$FdyF]u>89-Fjy6$&F`xFNF]u@%2F]zFhy>82Fju>Fdz,(F]zFgnFhyFOFgnF gn>FbqFjw>FhqF[x>83-Ffx6$f*6#%"bGFHFjxFH*&FhpFgn)&T#F_sT%FgnFHFH6&F/FRF=FdzF`y> F`t-F_w6#7#-Feq6$FgnF_q@%/F_qFfs>&F`t6$FgnFfsFjz?(FjqFgnFgn,&F_qFgnFOFgnF[p>&F` t6$FjqF_q&FjzF^r>F`t-F^y6#-%".G6$Ffv-Fbx6$FhqF`tOFduFHFHFHFH