|
7.5.17.0. gradeNumber
Procedure from library purityfiltration.lib (see purityfiltration_lib).
- Usage:
- gradeNumber(R), R matrix, representing M=D^p/D^q(R^t) over a ring D
- Return:
- int, grade number of M
- Purpose:
- computes the grade number of M, i.e. the first i, with ext^i(M,D) !=0
returns -1 if M=0
Example:
| LIB "purityfiltration.lib";
// trivial example
ring D=0,(x,y,z),dp;
matrix R[2][1]=1,x;
gradeNumber(R);
==> 0
// R has left inverse, so M=D/D^2R=0
gradeNumber(transpose(R));
==> -1
print(ncExt_R(0,R));
==> 0
// so, ext^0(coker(R),D) =! 0)
//
// a little bit more complex
matrix R1[3][1]=x,-y,z;
gradeNumber(transpose(R1));
==> 3
print(ncExt_R(0,transpose(R1)));
==> 1
print(ncExt_R(1,transpose(R1)));
==> 1
print(ncExt_R(2,transpose(R1)));
==> 1,0,0,
==> 0,1,0,
==> 0,0,1
// ext^i are zero for i=0,1,2
matrix ext3=ncExt_R(3,transpose(R1));
print(ext3);
==> z,y,x
// not zero
is_zero(ext3);
==> 0
|
|