|  |  7.3.18 nres (plural) 
See
 ideal (plural);
 minres (plural);
 module (plural);
 mres (plural).Syntax:nres (ideal_expression,int_expression)
 nres (module_expression,int_expression)Type:resolution
Purpose:computes a free resolution of an ideal or module which is minimized
from the second module on (by the Groebner basis method).
Note: Assigning a resolution to a list is the best choice of usage. The resolution may be minimized by using thecommand minres. Use the commandbettito compute Betti numbers.Example:|  | LIB "ncalg.lib";
def A = makeUsl2();
setring A; // this algebra is U(sl_2)
option(redSB);
option(redTail);
ideal i = e,f,h;
i = std(i);
resolution F=nres(i,0); F;
==>  1      3      3      1      
==> A <--  A <--  A <--  A
==> 
==> 0      1      2      3      
==> resolution not minimized yet
==> 
list l = F; l;
==> [1]:
==>    _[1]=h
==>    _[2]=f
==>    _[3]=e
==> [2]:
==>    _[1]=f*gen(1)-h*gen(2)-2*gen(2)
==>    _[2]=e*gen(1)-h*gen(3)+2*gen(3)
==>    _[3]=e*gen(2)-f*gen(3)-gen(1)
==> [3]:
==>    _[1]=e*gen(1)-f*gen(2)+h*gen(3)
==> [4]:
==>    _[1]=0
// see the exactness at this point:
size(ideal(transpose(matrix(l[2]))*transpose(matrix(l[1]))));
==> 0
// see the exactness at this point:
size(ideal(transpose(matrix(l[3]))*transpose(matrix(l[2]))));
==> 0
print(betti(l), "betti");
==>            0     1     2     3
==> ------------------------------
==>     0:     1     -     3     1
==> ------------------------------
==> total:     1     0     3     1
==> 
print(betti(minres(l)), "betti");
==>            0     1     2     3
==> ------------------------------
==>     0:     1     -     -     -
==>     1:     -     -     2     1
==> ------------------------------
==> total:     1     0     2     1
==> 
 | 
 
 |