|  |  D.4.11.4 depth Procedure from libraryhomolog.lib(see  homolog_lib).
 
Example:Usage:
depth(M,[I]); M module, I ideal
Return:
int,
- if called with 1 argument: the depth of M'=coker(M) w.r.t. the
ideal generated by the variables in the basering
 (the maximal ideal, if the ring is local)
 - if called with 2 arguments: the depth of M'=coker(M) w.r.t. the
ideal I.
 
Note:
Not checked: if I*M'==M', depth is infinity.
Note:
procedure makes use of KoszulHomology.
 |  | LIB "homolog.lib";
ring R=0,(x,y,z),dp;
ideal I=x2,xy,yz;
module M=0;
depth(M,I);  // depth(<x2,xy,yz>,Q[x,y,z])
==> 2
M=[1];
depth(M);  // depth(0)
==> 3
ring r=0,(x,y,z),ds;  // local ring
matrix M[2][2]=x,xy,1+yz,0;
print(M);
==> x,   xy,
==> 1+yz,0  
depth(M);     // depth(maxideal,coker(M))
==> 2
ideal I=x;
depth(M,I);   // depth(<x>,coker(M))
==> 0
I=x+z;
depth(M,I);   // depth(<x+z>,coker(M))
==> 1
 | 
 
 |