Changeset 5efe1c2 in git


Ignore:
Timestamp:
Dec 7, 2018, 5:34:11 PM (5 years ago)
Author:
Karim Abou Zeid <karim23697@…>
Branches:
(u'fieker-DuVal', '117eb8c30fc9e991c4decca4832b1d19036c4c65')(u'spielwiese', 'd08f5f0bb3329b8ca19f23b74cb1473686415c3a')
Children:
ac8f852ee98f3d2c31345586af75ef366f73758d
Parents:
5161f3c439dd28c1bc0dd5d9a4aa7ae701a0a64d98f7fbb26f42b8f7d64633fd9e10348c9df52a6d
Message:
Merge branch 'spielwiese' into christmas-release
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • Singular/LIB/fpalgebras.lib

    r5161f3c r5efe1c2  
    44info="
    55LIBRARY: 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
     6AUTHORS: Karim Abou Zeid,       karim.abou.zeid at rwth-aachen.de@*
     7         Viktor Levandovskyy,   viktor.levandovskyy at math.rwth-aachen.de@*
    88         Grischa Studzinski,    grischa.studzinski at rwth-aachen.de
    99
  • Singular/LIB/freegb.lib

    r98f7fb r5efe1c2  
    2222
    2323PROCEDURES:
    24 makeLetterplaceRing(d);          creates a ring with d blocks of shifted original variables
     24freeAlgebra(r, d);               creates a ring with d blocks of shifted original variables
     25makeLetterplaceRing(d);          (deprecated) creates a ring with d blocks of shifted original variables
    2526setLetterplaceAttributes(R,d,b); supplies ring R with the letterplace structure
    2627lieBracket(a,b[, N]);            Lie bracket ab-ba of two letterplace polynomials
     
    983984}
    984985
     986proc freeAlgebra(def r, int d)
     987"USAGE:  freeAlgebra(r, d); r a ring, d an integer
     988RETURN:  ring
     989PURPOSE: creates a letterplace ring with the ordering of r
     990EXAMPLE: example freeAlgebra; shows examples
     991"
     992{
     993  return (system("freeAlgebra", r, d));
     994}
     995example
     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
    9851006// united all previous makes, including mLR1 (homog) and mLR2 (nonhomog)
    9861007proc 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)
    9881009RETURN:  ring
    9891010PURPOSE: creates a ring with the ordering, used in letterplace computations
    990 NOTE: h = 0 (default) : Dp ordering will be used
     1011NOTE: h = -1 (default) : the ordering of the current ring will be used
     1012h = 0 : Dp ordering will be used
    9911013h = 2 : weights 1 used for all the variables, a tie breaker is a list of block of original ring
    9921014h = 1 : the pure homogeneous letterplace block ordering (applicable in the situation of homogeneous input ideals) will be used.
     
    9941016"
    9951017{
    996   int alternativeVersion = 0;
     1018  int alternativeVersion = -1;
    9971019  if ( size(#)>0 )
    9981020  {
     
    10121034    }
    10131035    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      }
    10151043    }
    10161044  }
  • Singular/extra.cc

    r98f7fb r5efe1c2  
    12431243    else
    12441244  #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
    12451262  /*==================== pcv ==================================*/
    12461263  #ifdef HAVE_PCV
  • libpolys/polys/shiftop.cc

    r5161f3c r5efe1c2  
    823823        return NULL;
    824824      }
    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));
    829829      omFree(R->wvhdl);  R->wvhdl=wvhdl;
    830830      omFree(R->order);  R->order=ord;
     
    834834      {
    835835        ord[i+p]=ringorder_a;
     836        //Print("entry:%d->a\n",i+p);
    836837        blk0[i+p]=1;
    837838        blk1[i+p]=R->N;
     
    847848      }
    848849      ord[r->N+p]=r->order[p]; /* lp or rp */
     850      //Print("entry:%d->lp\n",r->N+p);
    849851      blk0[r->N+p]=1;
    850852      blk1[r->N+p]=R->N;
     
    857859        return NULL;
    858860      }
     861      //if (p==1) PrintS("entry:0 ->c/C\n");
     862      //else if (p==0) Print("entry:%d ->c/C\n",r->N+1);
    859863      break;
    860864    }
Note: See TracChangeset for help on using the changeset viewer.