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 2323a4-9942a3b+6449a2b2+5447a3c-1610a2bc-7433a2c2-c4
{7} | a2 0 -2119a4-7240a3b-11707a2b2+15549a3c-1096a2bc-4537a2c2
{8} | 0 a2 -10408a3-2514a2b-2575a2c
------------------------------------------------------------------------
0 |
0 |
2323a2b3-9942ab4+6449b5+5447ab3c-1610b4c-7433b3c2 |
-2119a2b3-7240ab4-11707b5+15549ab3c-1096b4c-4537b3c2+d5 |
-10408ab3-2514b4-2575b3c-c4 |
5 4
o6 : Matrix S <--- S
|
i7 : isSyzygy(coker EG,2) o7 = true |