Changeset 04b3ef in git


Ignore:
Timestamp:
Apr 22, 2015, 7:36:03 PM (9 years ago)
Author:
Oleksandr Motsak <motsak@…>
Branches:
(u'spielwiese', '17f1d200f27c5bd38f5dfc6e8a0879242279d1d8')
Children:
5ae475019ef08f2c881ab47459777123fc5ee74a
Parents:
7b4fc83ac3b56ec34dfb40d2265468850bfcd0c7
git-author:
Oleksandr Motsak <motsak@mathematik.uni-kl.de>2015-04-22 19:36:03+02:00
git-committer:
Oleksandr Motsak <motsak@mathematik.uni-kl.de>2015-04-29 18:04:56+02:00
Message:
Corrections  (and documentation improvements) for the edited gradedModules.lib from Hanie
File:
1 edited

Legend:

Unmodified
Added
Removed
  • Singular/LIB/gradedModules.lib

    r7b4fc8 r04b3ef  
    5353    mappingcone2(M,N)  mapping cone2?
    5454    grlifting3(A,B)    RND! chain lifting? probably wrong one
    55     mappingcone3(A,B)  mapping cone3? (using grlifting4 at the moment)
     55    mappingcone3(A,B)  mapping cone3?
    5656    grrange(M)         get the row-weightings
    5757    grneg(A)           graded object given by -A
    58     matrixpres(intvec a)   matrix presentation of direct sum of Omega^a[i](i)
     58    matrixpres(a)      matrix presentation of direct sum of Omega^{a[i]}(i)
    5959";
    6060
     
    14601460proc KeneshlouMatrixPresentation(intvec a)
    14611461"USAGE:  intvec a.
    1462 RETURN: matrix
    1463 PURPOSE:matrix presentation for direct sum of omega^a[i](i)
     1462RETURN: graded object
     1463PURPOSE: matrix presentation for direct sum of omega^a[i](i) in form of a graded object
    14641464EXAMPLE: example KeneshlouMatrixPresentation; shows an example
    14651465{
     
    16881688"USAGE:  graded objects M and N
    16891689RETURN: map of chain complexes (as a list)
    1690 PURPOSE: construct a map of chain complexes between free resolution of
    1691 M=Img(M) and N=Img(N).
    1692 EXAMPLE: example grlift; shows an example
     1690PURPOSE: construct a map of chain complexes between free resolutions of Img(M) and Img(N).
     1691EXAMPLE: example grlifting; shows an example
    16931692"
    16941693{  ASSUME(1, grtest(M));
     
    17791778"USAGE:M,N graded objects
    17801779RETURN: chain complex (as a list)
    1781 PURPOSE: construct a free resolution of the cokernel of a random map between
    1782 M=Img(M), and N=Img(N).
     1780PURPOSE: construct a free resolution of the cokernel of a random map between Img(M), and Img(N).
    17831781EXAMPLE: example mappingcone; shows an example
    1784 
     1782"
    17851783{
    17861784  ASSUME(1, grtest(M));
     
    18151813example
    18161814{ "EXAMPLE:"; echo = 2;
    1817 //Veronese surface
    18181815
    18191816ring r=32003, (x(0..4)),dp;
     
    19041901}
    19051902
     1903
     1904//                A     f2     f3
     1905// 0<---M<----F0<----F1<----F2<----F3<----
     1906//              |p1   |p2
     1907//
     1908// 0<---N<----G0<----G1<----G2<----G3<----
     1909//                B(g1)      g2     g3
     1910//
    19061911proc grlifting2(A,B)
    19071912"USAGE: (A,B), graded objects A and B (matrices defining maps)
     
    19091914PURPOSE: construct a map of chain complexes between free resolution of
    19101915M=coker(A) and N=coker(B).
    1911 NOTE:
    1912                A     f2     f3
    1913 0<---M<----F0<----F1<----F2<----F3<----
    1914              |p1   |p2
    1915 
    1916 0<---N<----G0<----G1<----G2<----G3<----
    1917                B(g1)      g2     g3
    1918 
    19191916EXAMPLE: example grlifting2; shows an example
    19201917"
     
    19831980
    19841981/*
     1982//              -f1 0       -f2 0
     1983//   (p1 g1)     p2 g2       p3 g3
     1984// G0<-----F0+G1<------F1+G2<-------F2+G3<-----
    19851985proc mappingcone2(A,B)
    19861986"USAGE: (A,B), graded objects A and B (matrices defining maps)
    19871987RETURN: chain complex (as a list)
    1988 PURPOSE: construct the free resolution of a cokernel of a random map between
    1989 M=coker(A), and N=coker(B)
    1990 NOTE:
    1991              -f1 0       -f2 0
    1992   (p1 g1)     p2 g2       p3 g3
    1993 G0<-----F0+G1<------F1+G2<-------F2+G3<-----
    1994 
     1988PURPOSE: construct the free resolution of a cokernel of a random map between M=coker(A), and N=coker(B)
    19951989EXAMPLE: example mappingcone2;
    19961990"
     
    20192013    module A=grconcat(P[i],rN[i]);
    20202014    module B=grobj(zero,v,w);
    2021     ASSUME( 0, grtest( grneg( rM[i-1]) ) );
    2022     module C=grconcat( grneg( rM[i-1] ) ,B); // FIXME: '-' is wrong! need a graded-enabled minus (e.g. grneg?)
     2015
     2016    module C=grconcat( grneg( rM[i-1] ) ,B);
    20232017    module D=grconcat(grtranspose(C), grtranspose(A));
    20242018
     
    20562050def G=mappingcone2(SS,BB);G;
    20572051}
    2058 
    2059 
    2060 
    2061 
    2062 
    2063 
    2064 proc grlifting3(A,B)
     2052*/     
     2053
     2054
     2055
     2056
     2057
     2058
     2059proc grlifting3(A,B)
     2060"TODO: grlifting4 was newer and had more documentation than this proc, but was removed... Please verify and update!
     2061"
    20652062{
    20662063  ASSUME(1, grtest(A));
     
    21362133def H=grlifting3(R, S);
    21372134// grview(H);
    2138 def H=grlifting3(S, R);
    2139 
    2140 /*
    2141 // ???
    2142 def I=KeneshlouMatrixPresentation(intvec(2,3,0,6,2));
    2143 def J=KeneshlouMatrixPresentation(intvec(4,0,1,2,1));
    2144 def N=grlifting3(I,J); grview(N); // ???
    2145 */
    2146 }
    2147 
     2135
     2136// 2nd module does not lie in the first:
     2137// def H=grlifting3(S, R);
     2138
     2139
     2140//def I=KeneshlouMatrixPresentation(intvec(2,3,0,6,2));
     2141//def J=KeneshlouMatrixPresentation(intvec(4,0,1,2,1));
     2142//def N=grlifting3(I,J); grview(N);
     2143}
    21482144
    21492145proc grneg(A)
    2150 "USAGE: A graded object
    2151 RETURN: -A as graded object
    2152 PURPOSE: graded map defined by -A.
     2146"USAGE: grneg(A), graded object A
     2147RETURN: graded object
     2148PURPOSE: graded map defined by -A
    21532149EXAMPLE: example grneg; shows an example
    21542150"
    21552151{
    2156   ASSUME(0, grtest(A));
    2157 return(grobj(-A,grrange(A), grdeg(A) ));
    2158 }
    2159 
    2160 example
    2161 { "EXAMPLE:"; echo = 2;
    2162 ring r=0,(x,y,z),dp;
    2163 def A=grobj([x2,yz,xyz],intvec(1,1,0));
    2164 grview(A);
    2165 def F=grneg(A);
    2166 grview(A);
    2167 }
    2168 
    2169 
    2170 
    2171 
    2172 /*
    2173              -f1 0        -f2 0
    2174   (p1 g1)     p2 g2        p3 g3
    2175 G0<-----F0+G1<------F1+G2<-------F2+G3<-----
    2176 
    2177 */
    2178 
    2179 
     2152  ASSUME(1, grtest(A));
     2153  return( grobj(-A, grrange(A), grdeg(A)) );
     2154}
     2155
     2156example
     2157{ "EXAMPLE:"; echo = 2;
     2158
     2159   ring r=0,(x,y,z),dp;
     2160   def A=grobj([x2,yz,xyz],intvec(1,1,0));
     2161   grview(A);
     2162
     2163   def F=grneg(A);
     2164   grview(F);
     2165}
     2166
     2167//             -f1 0        -f2 0
     2168//  (p1 g1)     p2 g2        p3 g3
     2169//G0<-----F0+G1<------F1+G2<-------F2+G3<-----
    21802170proc mappingcone3(A,B)
    21812171"USAGE: (A,B), graded objects A and B (matrices defining maps)
    21822172RETURN: chain complex (as a list)
    2183 PURPOSE: construct a free resolution of the cokernel of a random map between
    2184 M=coker(A), and N=coker(B)
     2173PURPOSE: construct a free resolution of the cokernel of a random map between M=coker(A), and N=coker(B)
    21852174EXAMPLE: example mappingcone3; shows an example
    2186 
     2175"
    21872176{
    21882177  ASSUME(1, grtest(A));
    21892178  ASSUME(1, grtest(B));
    21902179
    2191   list P=grlifting4(A,B);
     2180  list P=grlifting3(A,B);
    21922181  list rM=grres(A,0,1);
    21932182  list rN=grres(B,0,1);
     
    22122201    module B=grobj(zero,v,w);
    22132202
    2214 //    ASSUME( 0, grtest(B) );
    2215 //    ASSUME( 0, grtest(-rM[i-1]) );   
    2216     ASSUME( 0, grtest( grneg( rM[i-1]) ) );
    2217     module C=grconcat( grneg( rM[i-1] ) ,B); // FIXME: '-' is wrong! need a graded-enabled minus (e.g. grneg?)
     2203    module C=grconcat( grneg( rM[i-1] ) ,B);
    22182204    module D=grconcat(grtranspose(C), grtranspose(A));
    22192205
     
    22402226def F=grlifting3(A,T); grview(F);
    22412227
    2242 /* BUG in the proc */
     2228// BUG in the proc
    22432229def G=mappingcone3(A,T); grview(G);
    22442230
     
    22612247def H=grlifting3(R,S); grview(H);
    22622248
    2263 /* BUG in the proc */
     2249// BUG in the proc
    22642250def G=mappingcone3(R,S);
    22652251
     
    22682254def J=KeneshlouMatrixPresentation(intvec(4,0,1,2,1));
    22692255// def N=grlifting3(I,J);
    2270 /* 2nd module does not lie in the first: */ // def NN=mappingcone3(I,J); // ????????
    2271 
    2272 }
    2273 
    2274 
    2275 
    2276 
    2277 
    2278 
     2256// 2nd module does not lie in the first:
     2257// def NN=mappingcone3(I,J); // ????????
     2258
     2259}
     2260
     2261
     2262
     2263
     2264
     2265
     2266// TODO: Please decide between KeneshlouMatrixPresentation and matrixpres, and replace one with the other!
    22792267proc matrixpres(intvec a)
    2280 "USAGE:  intvec a.
    2281 RETURN: matrix.
    2282 PURPOSE:matrix presentation for direct sum of omega^a[i](i)
     2268"USAGE:  intvec a
     2269RETURN:  graded object
     2270PURPOSE: matrix presentation for direct sum of omega^a[i](i) in form of a graded object
    22832271EXAMPLE: example matrixpres; shows an example
    2284 
     2272"
     2273{
    22852274  int n = size(a)-1;
    22862275  //  ring r = 32003,(x(0..n)),dp;
     
    23562345example
    23572346{"EXAMPLE:"; echo = 2;
     2347ring r = 32003,(x(0..4)),dp;
    23582348
    23592349def R=matrixpres(intvec(1,4,0,0,0));
     2350grview(R);
    23602351def S=matrixpres(intvec(0,0,3,0,0));
    2361 }
     2352grview(S);
     2353
     2354def N1 = matrixpres(intvec(2,0,0,0,0));
     2355grview(N1);
     2356
     2357def N2 = matrixpres(intvec(0,0,0,0,3));
     2358grview(N2);
     2359
     2360def N = matrixpres(intvec(2,0,0,0,3));
     2361grview(N);
     2362
     2363
     2364def M1 = matrixpres(intvec(0,1,0,0,0));
     2365grview(M1);
     2366
     2367def M2 = matrixpres(intvec(0,1,1,0,0));
     2368grview(M2);
     2369
     2370def M3 = matrixpres(intvec(0,0,0,1,0));
     2371grview(M3);
     2372
     2373def M = matrixpres(intvec(1,1,1,0,0));
     2374grview(M);
     2375}
     2376
Note: See TracChangeset for help on using the changeset viewer.