|  |  D.4.16.9 splitting Procedure from librarymprimdec.lib(see  mprimdec_lib).
 
Example:Usage:
splitting(N[,check[, ann]]); modul N, module check, ideal ann
Return:
(l, check) list l, module check
the elements of l consists of quadruples, where
 [1] is of type module, [2], [3] and [4] are of type ideal,
s.th. the intersection of the modules is equal to the
zero-dimensional module N, furthermore l[j][3]=annil(l[j][1])
and l[j][4] contains internal ideal data;
 if l[j][2]!=0 then the module l[j][1] is primary
 with associated prime l[j][2], and check=intersect(check, l[j][1]) is computed
 
Note:
if the parameter check is given, only components not containing
check are computed; if ann is given, ann is used instead of annil(N)
 |  | LIB "mprimdec.lib";
ring r=0,z,lp;
module N=z*gen(1), (z+1)*gen(2);
N=std(N);
list l; module check;
(l, check)=splitting(N);
l;
==> [1]:
==>    [1]:
==>       _[1]=gen(2)
==>       _[2]=z*gen(1)
==>    [2]:
==>       _[1]=z
==>    [3]:
==>       _[1]=z
==>    [4]:
==>       _[1]=z
==> [2]:
==>    [1]:
==>       _[1]=gen(1)
==>       _[2]=z*gen(2)+gen(2)
==>    [2]:
==>       _[1]=z+1
==>    [3]:
==>       _[1]=z+1
==>    [4]:
==>       _[1]=z+1
check;
==> check[1]=z*gen(2)+gen(2)
==> check[2]=z*gen(1)
 | 
 
 |