The long exact sequence is returned as a Net with the following general format:
| .- -> ... (k-3) more rows appearing | ( | \ | | \ | .- -> Ext^1(X,Y) - - -> Ext^1(A,Y) - - -> Ext^2(X/A,Y) - -' | ( | \ | | \ | .- -> Hom(X,Y) - - -> Hom(A,Y) - - -> Ext^1(X/A,Y) - -' | ( | \ | | \ | .- -> 0 - - -> 0 - - -> Hom(X/A,Y) - -' | ( | \ | | \ | 0 - -' |
The next example gives a typical use.
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 = image map(X,,{{x^7}})
o3 = subquotient (| x7 |, | x9 |)
1
o3 : R-module, subquotient of R
|
i4 : Y = coker map(R^1,,{{x^3}})
o4 = cokernel | x3 |
1
o4 : R-module, quotient of R
|
i5 : contravariantExtLES(3,X,A,Y)
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 = .- -> 0
0 (
\
0 \
.- -> cokernel {-9} | x3 | - - - - - - -> cokernel {-9} | x2 | - - -> 0 - -'
{-9} | x2 |( {-9} | 1 |
\
{-7} | x | \
.- -> cokernel | x3 | - - -> cokernel {-6} | x2 | - - - - - - -> cokernel {-7} | x3 | - -'
| 1 | ( 0
\
0 \
.- -> 0 - - -> 0 - - -> cokernel | x3 | - -'
0 ( 0
\
\
0 - -'
|
i6 : apply(2, p -> prune Ext^p(X,Y))
o6 = {cokernel | x3 |, cokernel {-9} | x3 |}
o6 : List
|
i7 : apply(2, p -> prune Ext^p(A,Y))
o7 = {cokernel {-6} | x2 |, cokernel {-9} | x2 |}
o7 : List
|
i8 : apply(2, p -> prune Ext^p(X/A,Y))
o8 = {cokernel | x3 |, cokernel {-7} | x3 |}
o8 : List
|
For computational access to the maps in the sequence, use contravariantExtCouple instead.
The object contravariantExtLES is a method function.