i1 : R = QQ[x] o1 = R o1 : PolynomialRing |
i2 : X = R^1 / x^9 o2 = cokernel | x9 | 1 o2 : R-module, quotient of R |
i3 : A = apply(5,k->image map(X,,{{x^(8-2*k)}})) o3 = {subquotient (| x8 |, | x9 |), subquotient (| x6 |, | x9 |), subquotient ------------------------------------------------------------------------ (| x4 |, | x9 |), subquotient (| x2 |, | x9 |), subquotient (| 1 |, | x9 ------------------------------------------------------------------------ |)} o3 : List |
i4 : W = coker map(R^1,,{{x^3}}) o4 = cokernel | x3 | 1 o4 : R-module, quotient of R |
We build the exact couple coming from applying Hom(W,-) to a filtered module
i5 : couple = prune covariantExtCouple(W,A) warning: clearing value of symbol f to allow access to subscripted variables based on it : debug with expression debug 3406 or with command line option --debug 3406 o5 = cokernel {-1, 1, 8} | x e_1^2 f_1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | {-1, 3, 6} | 0 0 -x2 e_1^2 0 0 0 0 x2e_1 e_1f_1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | {1, 1, 5} | 0 0 0 0 x 0 0 0 0 0 e_1^2 f_1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 | {1, 3, 3} | 0 0 0 0 0 -x 0 0 0 0 0 -x2 e_1^2 f_1 0 0 0 0 0 0 0 0 0 0 0 x2e_1 0 0 0 0 | {1, 5, 1} | 0 0 0 0 0 0 -x 0 0 0 0 0 0 -x2 e_1^2 f_1 0 0 0 0 0 0 0 0 0 0 x2e_1 0 0 0 | {1, 7, -1} | 0 0 0 0 0 0 0 -x 0 0 0 0 0 0 0 -x2 e_1^2 f_1 0 0 0 0 0 0 0 0 0 x2e_1 0 0 | {1, 9, -3} | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -x2 e_1^2 0 0 0 0 0 0 0 0 0 x2e_1 e_1f_1 | {0, 4, 4} | 0 0 0 0 0 e_1 0 0 0 0 0 0 0 0 0 0 0 0 0 x2 f_1 0 0 0 0 0 0 0 0 0 | {0, 6, 2} | 0 0 0 0 0 0 e_1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 x2 f_1 0 0 0 0 0 0 0 | {0, 8, 0} | 0 0 0 0 0 0 0 e_1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 x2 f_1 0 0 0 0 0 | 10 o5 : R[e , f ]-module, quotient of (R[e , f ]) 1 1 1 1 |
i6 : expectExactCouple couple |
We check that {0,4} is an even degree, and then use excerptCouple
i7 : Q = ring couple warning: clearing value of symbol e to allow access to subscripted variables based on it : debug with expression debug 3903 or with command line option --debug 3903 warning: clearing value of symbol f to allow access to subscripted variables based on it : debug with expression debug 3406 or with command line option --debug 3406 o7 = Q o7 : PolynomialRing |
i8 : Q.isEvenDegree({0,4}) o8 = true |
i9 : excerptCouple({0,4},2,couple) o9 = .- -> 0 0 ( \ 0 \ .- -> cokernel {1} | x3 | - - - - - -> cokernel {1} | x2 | - - -> 0 - -' {1} | x2 |( {1} | 1 | \ {3} | x | \ .- -> cokernel {6} | x3 | - - -> cokernel {4} | x2 | - - - - - -> cokernel {3} | x3 | - -' {6} | 1 |( 0 \ \ cokernel {6} | x3 | - -' |
The middle column of the displayed long exact sequence is in even degrees; in other words, its entries appear on the E_1 page of the couple. Specifically, $E_1^{pq} = Ext^p(W,A_q/A_{q-1})$ can be found in degree $(2p,2q)$. The bottom element of the middle column is degree $(0,4)$, which is then $Ext^0(W,A_2/A_1)$. The top element of the middle column is $Ext^1(W,A_2/A_1)$.
i10 : prune Ext^0(W,A_2/A_1) o10 = cokernel {4} | x2 | 1 o10 : R-module, quotient of R |
i11 : prune Ext^1(W,A_2/A_1) o11 = cokernel {1} | x2 | 1 o11 : R-module, quotient of R |
The object excerptCouple is a method function.