The routine reduces the target of M by elementary moves (see elementary) involving just d+1 variables. The outcome is probabalistic, but if the routine fails, it gives an error message.
i1 : kk=ZZ/32003 o1 = kk o1 : QuotientRing |
i2 : S=kk[a..e] o2 = S o2 : PolynomialRing |
i3 : i=ideal(a^2,b^3,c^4, d^5) 2 3 4 5 o3 = ideal (a , b , c , d ) o3 : Ideal of S |
i4 : F=res i 1 4 6 4 1 o4 = S <-- S <-- S <-- S <-- S <-- 0 0 1 2 3 4 5 o4 : ChainComplex |
i5 : f=F.dd_3 o5 = {5} | c4 d5 0 0 | {6} | -b3 0 d5 0 | {7} | a2 0 0 d5 | {7} | 0 -b3 -c4 0 | {8} | 0 a2 0 -c4 | {9} | 0 0 a2 b3 | 6 4 o5 : Matrix S <--- S |
i6 : EG = evansGriffith(f,2) -- notice that we have a matrix with one less row, as described in elementary, and the target module rank is one less. o6 = {5} | c4 d5 0 {6} | -b3 0 d5 {7} | 0 -b3 -2794a4-12732a3b-2823a2b2-7763a3c+10052a2bc+8289a2c2-c4 {7} | a2 0 2383a4+1297a3b+14551a2b2-10788a3c+4420a2bc+10983a2c2 {8} | 0 a2 1725a3-13479a2b+12634a2c ------------------------------------------------------------------------ 0 | 0 | -2794a2b3-12732ab4-2823b5-7763ab3c+10052b4c+8289b3c2 | 2383a2b3+1297ab4+14551b5-10788ab3c+4420b4c+10983b3c2+d5 | 1725ab3-13479b4+12634b3c-c4 | 5 4 o6 : Matrix S <--- S |
i7 : isSyzygy(coker EG,2) o7 = true |