up previous next
depth    --    Depth of a module


Syntax
depth(I: IDEAL, M: TAGGED("Quotient")): INT
depth(RmodI: Quotient RING): INT

Description
This function calculates the depth of M in the ideal I, i.e. the length of a maximal I-regular sequence in M. In the second form, where the ideal I is not specified, it assumes that I is the maximal ideal generated by the indeterminates, i.e.ideal(Indets()).

NOTE: if M is homogeneous and I is the maximal ideal, then it uses the Auslander-Buchsbaum formula depth_I(M) = N - pd(M) where N is the number of indeterminates and pd is the projective dimension, otherwise (***** NOT YET IMPLEMENTED *****) it returns min{N | Ext^N(R/I, M)<>0} using the function Ext .

Example
/**/  use P ::= QQ[x,y,z];
/**/  depth(P); -- the (x,y,z)-depth of the entire ring is 3
3

/**/  I := ideal(x^5,y^3,z^2);
/**/  depth(P/I);
0

//----- ***** NOT YET IMPLEMENTED ***** ----->>
  N := Module([x^2,y], [x+z,0]);
  depth(I, P^2/N);  --- a max reg sequence would be (z^2,y^3)
2
-------------------------------
  use P ::= QQ[x,y,z,t,u,v];
  -- Cauchy-Riemann system in three complex vars!
  N := Module([x,y], [-y,x], [z,t], [-t,z], [u,v], [-v,u]);
  --- is it CM?
  depth(P^2/N);
3
-------------------------------
  dim(P^2/N);
3
-------------------------------
  --- yes!

  M := Module([x,y,z],[t,v,u]);
  res(P^3/M);
0 --> P^2(-1) --> P^3
-------------------------------
  depth(P^3/M); -- using Auslander Buchsbaum 6-1=5
5
-------------------------------
  dim(P^3/M);  -- not CM
6
-------------------------------
  depth(ideal(x,y,z,t), P^2/N);
2
-------------------------------

See Also