Changeset 5efe1c2 in git
- Timestamp:
- Dec 7, 2018, 5:34:11 PM (5 years ago)
- Branches:
- (u'fieker-DuVal', '117eb8c30fc9e991c4decca4832b1d19036c4c65')(u'spielwiese', 'd08f5f0bb3329b8ca19f23b74cb1473686415c3a')
- Children:
- ac8f852ee98f3d2c31345586af75ef366f73758d
- Parents:
- 5161f3c439dd28c1bc0dd5d9a4aa7ae701a0a64d98f7fbb26f42b8f7d64633fd9e10348c9df52a6d
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
Singular/LIB/fpalgebras.lib
r5161f3c r5efe1c2 4 4 info=" 5 5 LIBRARY: fpalgebras.lib Definitions of some finitely presented algebras and groups (Letterplace) 6 AUTHORS: Karim Abou Zeid, karim.abou.zeid at rwth-aachen.de 7 Viktor Levandovskyy, viktor.levandovskyy at math.rwth-aachen.de 6 AUTHORS: Karim Abou Zeid, karim.abou.zeid at rwth-aachen.de@* 7 Viktor Levandovskyy, viktor.levandovskyy at math.rwth-aachen.de@* 8 8 Grischa Studzinski, grischa.studzinski at rwth-aachen.de 9 9 -
Singular/LIB/freegb.lib
r98f7fb r5efe1c2 22 22 23 23 PROCEDURES: 24 makeLetterplaceRing(d); creates a ring with d blocks of shifted original variables 24 freeAlgebra(r, d); creates a ring with d blocks of shifted original variables 25 makeLetterplaceRing(d); (deprecated) creates a ring with d blocks of shifted original variables 25 26 setLetterplaceAttributes(R,d,b); supplies ring R with the letterplace structure 26 27 lieBracket(a,b[, N]); Lie bracket ab-ba of two letterplace polynomials … … 983 984 } 984 985 986 proc freeAlgebra(def r, int d) 987 "USAGE: freeAlgebra(r, d); r a ring, d an integer 988 RETURN: ring 989 PURPOSE: creates a letterplace ring with the ordering of r 990 EXAMPLE: example freeAlgebra; shows examples 991 " 992 { 993 return (system("freeAlgebra", r, d)); 994 } 995 example 996 { 997 "EXAMPLE:"; echo = 2; 998 ring r = 0,(x,y,z),dp; 999 def R = freeAlgebra(r, 7); 1000 R; 1001 ring r2 = 0,(x,y,z),lp; 1002 def R2 = freeAlgebra(r2, 7); 1003 R2; 1004 } 1005 985 1006 // united all previous makes, including mLR1 (homog) and mLR2 (nonhomog) 986 1007 proc makeLetterplaceRing(int d, list #) 987 "USAGE: makeLetterplaceRing(d [,h]); d an integer, h an optional integer 1008 "USAGE: makeLetterplaceRing(d [,h]); d an integer, h an optional integer (deprecated, use freeAlgebra instead) 988 1009 RETURN: ring 989 1010 PURPOSE: creates a ring with the ordering, used in letterplace computations 990 NOTE: h = 0 (default) : Dp ordering will be used 1011 NOTE: h = -1 (default) : the ordering of the current ring will be used 1012 h = 0 : Dp ordering will be used 991 1013 h = 2 : weights 1 used for all the variables, a tie breaker is a list of block of original ring 992 1014 h = 1 : the pure homogeneous letterplace block ordering (applicable in the situation of homogeneous input ideals) will be used. … … 994 1016 " 995 1017 { 996 int alternativeVersion = 0;1018 int alternativeVersion = -1; 997 1019 if ( size(#)>0 ) 998 1020 { … … 1012 1034 } 1013 1035 else { 1014 def @A = makeLetterplaceRing4(d); 1036 if (alternativeVersion == 0) 1037 { 1038 def @A = makeLetterplaceRing4(d); 1039 } 1040 else { 1041 def @A = freeAlgebra(basering, d); 1042 } 1015 1043 } 1016 1044 } -
Singular/extra.cc
r98f7fb r5efe1c2 1243 1243 else 1244 1244 #endif 1245 /*==================== freeAlgebra for freeGB ==================*/ 1246 #ifdef HAVE_SHIFTBBA 1247 if (strcmp(sys_cmd, "freeAlgebra") == 0) 1248 { 1249 const short t[]={2,RING_CMD,INT_CMD}; 1250 if (iiCheckTypes(h,t,1)) 1251 { 1252 ring r=(ring)h->CopyD(); 1253 int d=(int)((long)h->next->Data()); 1254 res->rtyp = RING_CMD; 1255 res->data = freeAlgebra(r, d); 1256 return FALSE; 1257 } 1258 else return TRUE; 1259 } 1260 else 1261 #endif 1245 1262 /*==================== pcv ==================================*/ 1246 1263 #ifdef HAVE_PCV -
libpolys/polys/shiftop.cc
r5161f3c r5efe1c2 823 823 return NULL; 824 824 } 825 int ** wvhdl=(int**)omAlloc0((r->N+ 2)*sizeof(int*));826 rRingOrder_t* ord=(rRingOrder_t*)omAlloc0((r->N+ 2)*sizeof(rRingOrder_t));827 int* blk0=(int*)omAlloc0((r->N+ 2)*sizeof(int));828 int* blk1=(int*)omAlloc0((r->N+ 2)*sizeof(int));825 int ** wvhdl=(int**)omAlloc0((r->N+3)*sizeof(int*)); 826 rRingOrder_t* ord=(rRingOrder_t*)omAlloc0((r->N+3)*sizeof(rRingOrder_t)); 827 int* blk0=(int*)omAlloc0((r->N+3)*sizeof(int)); 828 int* blk1=(int*)omAlloc0((r->N+3)*sizeof(int)); 829 829 omFree(R->wvhdl); R->wvhdl=wvhdl; 830 830 omFree(R->order); R->order=ord; … … 834 834 { 835 835 ord[i+p]=ringorder_a; 836 //Print("entry:%d->a\n",i+p); 836 837 blk0[i+p]=1; 837 838 blk1[i+p]=R->N; … … 847 848 } 848 849 ord[r->N+p]=r->order[p]; /* lp or rp */ 850 //Print("entry:%d->lp\n",r->N+p); 849 851 blk0[r->N+p]=1; 850 852 blk1[r->N+p]=R->N; … … 857 859 return NULL; 858 860 } 861 //if (p==1) PrintS("entry:0 ->c/C\n"); 862 //else if (p==0) Print("entry:%d ->c/C\n",r->N+1); 859 863 break; 860 864 }
Note: See TracChangeset
for help on using the changeset viewer.