Home Online Manual
Top
Back: grrndmap2
Forward: grlifting2
FastBack:
FastForward:
Up: gradedModules_lib
Top: Singular Manual
Contents: Table of Contents
Index: Index
About: About this document

D.15.5.27 grlifting

Procedure from library gradedModules.lib (see gradedModules_lib).

Usage:
grlifting(M,N), graded objects M and N

Return:
map of chain complexes (as a list)

Purpose:
construct a map of chain complexes between free resolutions of Img(M) and Img(N).

Example:
 
LIB "gradedModules.lib";
/*
ring r=32003,(x,y,z),dp;
module P=grobj(module([xy,0,xz]),intvec(0,1,0));
grview(P);
module D=grobj(module([y,0,z],[x2+y2,z,0]),intvec(0,1,0));
grview(D);
def G=grlifting(D,P);
grview(G);
kill r;
ring r=32003,(x,y,z),dp;
module D=grobj(module([y,0,z],[x2+y2,z,0], [z3, xy, xy2]),intvec(0,1,0));
D = grgroebner(D);
grview( grres(D, 0));
def G=grlifting(D, D);
grview(G);
*/
ring S = 0, (x(0..3)), dp;
list kos = grres(grobj(maxideal(1), intvec(0)), 0);
print( betti(kos), "betti");
==>            0     1     2     3     4
==> ------------------------------------
==>     0:     1     4     6     4     1
==> ------------------------------------
==> total:     1     4     6     4     1
==> 
grview(kos);
==> Graded resolution: 
==> S <-- d_1 --
==> S(-1)^4 <-- d_2 --
==> S(-2)^6 <-- d_3 --
==> S(-3)^4 <-- d_4 --
==> S(-4) <-- d_5 --
==> 0, given by maps: 
==> d_1 :
==> Graded homomorphism: S <- S(-1)^4, given by a matrix, with degrees: 
==>     .1 .2 .3 .4 ...
==>     -- -- -- -- +..
==>  0 : 1  1  1  1 |.1
==>     == == == ==    
==>      1  1  1  1    
==> d_2 :
==> Graded homomorphism: S(-1)^4 <- S(-2)^6, given by a matrix, with degrees: 
==>      ..1 ..2 ..3 ..4 ..5 ..6 ....
==>      --- --- --- --- --- --- +...
==>   1 :  1   1   -   1   -   - |..1
==>   1 :  1   -   1   -   1   - |..2
==>   1 :  -   1   1   -   -   1 |..3
==>   1 :  -   -   -   1   1   1 |..4
==>      === === === === === ===     
==>        2   2   2   2   2   2     
==> d_3 :
==> Graded homomorphism: S(-2)^6 <- S(-3)^4, given by a matrix, with degrees: 
==>      ..1 ..2 ..3 ..4 ....
==>      --- --- --- --- +...
==>   2 :  1   1   -   - |..1
==>   2 :  1   -   1   - |..2
==>   2 :  1   -   -   1 |..3
==>   2 :  -   1   1   - |..4
==>   2 :  -   1   -   1 |..5
==>   2 :  -   -   1   1 |..6
==>      === === === ===     
==>        3   3   3   3     
==> d_4 :
==> Graded homomorphism: S(-3)^4 <- S(-4), given by a matrix, with degrees: 
==>     .1 ...
==>     -- +..
==>  3 : 1 |.1
==>  3 : 1 |.2
==>  3 : 1 |.3
==>  3 : 1 |.4
==>     ==    
==>      4    
==> d_5 :
==> Graded homomorphism: S(-4) <- 0, given by zero (1 x 0) matrix.
//  module M = grshift(kos[4], 2); // phi, Syz_3(K(2))
def M = KeneshlouMatrixPresentation(intvec(0,0,1,0));
grview( grres(M, 0) );
==> Graded resolution: 
==> S(-1)^4 <-- d_1 --
==> S(-2) <-- d_2 --
==> 0, given by maps: 
==> d_1 :
==> Graded homomorphism: S(-1)^4 <- S(-2), given by a matrix, with degrees: 
==>     .1 ...
==>     -- +..
==>  1 : 1 |.1
==>  1 : 1 |.2
==>  1 : 1 |.3
==>  1 : 1 |.4
==>     ==    
==>      2    
==> d_2 :
==> Graded homomorphism: S(-2) <- 0, given by zero (1 x 0) matrix.
//   module N = grshift(kos[3], 1); // psi, Syz_2(K(1))
def N = KeneshlouMatrixPresentation(intvec(0,1,0,0));
grview( grres(N, 0) );
==> Graded resolution: 
==> S(-1)^6 <-- d_1 --
==> S(-2)^4 <-- d_2 --
==> S(-3) <-- d_3 --
==> 0, given by maps: 
==> d_1 :
==> Graded homomorphism: S(-1)^6 <- S(-2)^4, given by a matrix, with degrees: 
==>      ..1 ..2 ..3 ..4 ....
==>      --- --- --- --- +...
==>   1 :  1   1   -   - |..1
==>   1 :  1   -   1   - |..2
==>   1 :  1   -   -   1 |..3
==>   1 :  -   1   1   - |..4
==>   1 :  -   1   -   1 |..5
==>   1 :  -   -   1   1 |..6
==>      === === === ===     
==>        2   2   2   2     
==> d_2 :
==> Graded homomorphism: S(-2)^4 <- S(-3), given by a matrix, with degrees: 
==>     .1 ...
==>     -- +..
==>  2 : 1 |.1
==>  2 : 1 |.2
==>  2 : 1 |.3
==>  2 : 1 |.4
==>     ==    
==>      3    
==> d_3 :
==> Graded homomorphism: S(-3) <- 0, given by zero (1 x 0) matrix.
grlifting(M, N); // grview(G);
==> t:  2
==> _[1]=26642*gen(4)+24263*gen(3)+5664*gen(2)+24170*gen(1)
//  def G=grlifting( grgens(M), grgens(N) );  grview(G);