Changeset c78bded in git


Ignore:
Timestamp:
Jul 2, 2012, 2:40:42 PM (12 years ago)
Author:
Christian Eder
Branches:
(u'spielwiese', 'fe61d9c35bf7c61f2b6cbf1b56e25e2f08d536cc')
Children:
19609cce8ae122e920a77ead0ddc3ea3984ecc0d
Parents:
0758b5a070556dd402b297144aae88721940fd10
git-author:
Christian Eder <ederc@mathematik.uni-kl.de>2012-07-02 14:40:42+02:00
git-committer:
Christian Eder <ederc@mathematik.uni-kl.de>2012-07-05 16:12:50+02:00
Message:
adds sba() call
=> signature-based algorithms available in spielwiese
Location:
Singular
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • Singular/grammar.cc

    r0758b5 rc78bded  
    396396     PARAMETER = 381,
    397397     SYSVAR = 382,
    398      UMINUS = 383
     398     UMINUS = 383,
     399     SBA_CMD = 384
    399400   };
    400401#endif
  • Singular/grammar.h

    r0758b5 rc78bded  
    164164     PARAMETER = 381,
    165165     SYSVAR = 382,
    166      UMINUS = 383
     166     UMINUS = 383,
     167     SBA_CMD = 384
    167168   };
    168169#endif
  • Singular/grammar.y

    r0758b5 rc78bded  
    262262%token <i> REGULARITY_CMD
    263263%token <i> RES_CMD
     264%token <i> SBA_CMD
    264265%token <i> SIMPLIFY_CMD
    265266%token <i> SORTVEC_CMD
  • Singular/iparith.cc

    r0758b5 rc78bded  
    47834783  //res->data=(char *)t_rep_gb(currRing, u_id);
    47844784
     4785  if(!TEST_OPT_DEGBOUND) setFlag(res,FLAG_STD);
     4786  if (w!=NULL) atSet(res,omStrDup("isHomog"),w,INTVEC_CMD);
     4787  return FALSE;
     4788}
     4789static BOOLEAN jjSBA(leftv res, leftv v)
     4790{
     4791  ideal result;
     4792  ideal v_id=(ideal)v->Data();
     4793  intvec *w=(intvec *)atGet(v,"isHomog",INTVEC_CMD);
     4794  tHomog hom=testHomog;
     4795  if (w!=NULL)
     4796  {
     4797    if (!idTestHomModule(v_id,currQuotient,w))
     4798    {
     4799      WarnS("wrong weights");
     4800      w=NULL;
     4801    }
     4802    else
     4803    {
     4804      hom=isHomog;
     4805      w=ivCopy(w);
     4806    }
     4807  }
     4808  result=kSba(v_id,currQuotient,hom,&w,1,0);
     4809  idSkipZeroes(result);
     4810  res->data = (char *)result;
     4811  if(!TEST_OPT_DEGBOUND) setFlag(res,FLAG_STD);
     4812  if (w!=NULL) atSet(res,omStrDup("isHomog"),w,INTVEC_CMD);
     4813  return FALSE;
     4814}
     4815static BOOLEAN jjSBA_1(leftv res, leftv v, leftv u)
     4816{
     4817  ideal result;
     4818  ideal v_id=(ideal)v->Data();
     4819  intvec *w=(intvec *)atGet(v,"isHomog",INTVEC_CMD);
     4820  tHomog hom=testHomog;
     4821  if (w!=NULL)
     4822  {
     4823    if (!idTestHomModule(v_id,currQuotient,w))
     4824    {
     4825      WarnS("wrong weights");
     4826      w=NULL;
     4827    }
     4828    else
     4829    {
     4830      hom=isHomog;
     4831      w=ivCopy(w);
     4832    }
     4833  }
     4834  result=kSba(v_id,currQuotient,hom,&w,(int)(long)u->Data(),0);
     4835  idSkipZeroes(result);
     4836  res->data = (char *)result;
     4837  if(!TEST_OPT_DEGBOUND) setFlag(res,FLAG_STD);
     4838  if (w!=NULL) atSet(res,omStrDup("isHomog"),w,INTVEC_CMD);
     4839  return FALSE;
     4840}
     4841static BOOLEAN jjSBA_2(leftv res, leftv v, leftv u, leftv t)
     4842{
     4843  ideal result;
     4844  ideal v_id=(ideal)v->Data();
     4845  intvec *w=(intvec *)atGet(v,"isHomog",INTVEC_CMD);
     4846  tHomog hom=testHomog;
     4847  if (w!=NULL)
     4848  {
     4849    if (!idTestHomModule(v_id,currQuotient,w))
     4850    {
     4851      WarnS("wrong weights");
     4852      w=NULL;
     4853    }
     4854    else
     4855    {
     4856      hom=isHomog;
     4857      w=ivCopy(w);
     4858    }
     4859  }
     4860  result=kSba(v_id,currQuotient,hom,&w,(int)(long)u->Data(),(int)(long)t->Data());
     4861  idSkipZeroes(result);
     4862  res->data = (char *)result;
    47854863  if(!TEST_OPT_DEGBOUND) setFlag(res,FLAG_STD);
    47864864  if (w!=NULL) atSet(res,omStrDup("isHomog"),w,INTVEC_CMD);
  • Singular/table.h

    r0758b5 rc78bded  
    238238,{D(jjROWS_BIM),   ROWS_CMD,        INT_CMD,        BIGINTMAT_CMD , ALLOW_PLURAL |ALLOW_RING}
    239239,{D(jjCOUNT_IV),   ROWS_CMD,        INT_CMD,        INTVEC_CMD    , ALLOW_PLURAL |ALLOW_RING}
     240,{D(jjSBA),        SBA_CMD,         IDEAL_CMD,      IDEAL_CMD     , ALLOW_PLURAL |ALLOW_RING}
     241,{D(jjSBA),        SBA_CMD,         MODUL_CMD,      MODUL_CMD     , ALLOW_PLURAL |ALLOW_RING}
    240242,{D(jjSLIM_GB),    SLIM_GB_CMD,     IDEAL_CMD,      IDEAL_CMD     , ALLOW_PLURAL }
    241243,{D(jjSLIM_GB),    SLIM_GB_CMD,     MODUL_CMD,      MODUL_CMD     , ALLOW_PLURAL }
     
    662664,{D(jjRES),       SRES_CMD,       RESOLUTION_CMD, IDEAL_CMD,  INT_CMD, NO_PLURAL |ALLOW_RING}
    663665,{D(jjRES),       SRES_CMD,       RESOLUTION_CMD, MODUL_CMD,  INT_CMD, NO_PLURAL |ALLOW_RING}
     666,{D(jjSBA_1),     SBA_CMD,        IDEAL_CMD,      IDEAL_CMD,  INT_CMD, ALLOW_PLURAL |ALLOW_RING}
     667,{D(jjSBA_1),     SBA_CMD,        MODUL_CMD,      MODUL_CMD,  INT_CMD, ALLOW_PLURAL |ALLOW_RING}
    664668,{D(jjSTD_1),     STD_CMD,        IDEAL_CMD,      IDEAL_CMD,  POLY_CMD, ALLOW_PLURAL |ALLOW_RING}
    665669,{D(jjSTD_1),     STD_CMD,        MODUL_CMD,      MODUL_CMD,  VECTOR_CMD, ALLOW_PLURAL |ALLOW_RING}
     
    760764,{D(jjRES3),           SRES_CMD,   NONE,       MODUL_CMD,  INT_CMD,    ANY_TYPE, NO_PLURAL |ALLOW_RING}
    761765#endif
     766,{D(jjSBA_2),          SBA_CMD,    IDEAL_CMD,  IDEAL_CMD,  INT_CMD, INT_CMD, ALLOW_PLURAL |ALLOW_RING}
     767,{D(jjSBA_2),          SBA_CMD,    MODUL_CMD,  MODUL_CMD,  INT_CMD, INT_CMD, ALLOW_PLURAL |ALLOW_RING}
    762768,{D(jjSTATUS3),        STATUS_CMD, INT_CMD,    LINK_CMD,   STRING_CMD, STRING_CMD, ALLOW_PLURAL |ALLOW_RING}
    763769,{D(jjSTD_HILB_W),     STD_CMD,    IDEAL_CMD,  IDEAL_CMD,  INTVEC_CMD, INTVEC_CMD, NO_PLURAL |NO_RING}
     
    828834,{D(loSimplex),   SIMPLEX_CMD,     LIST_CMD,            6      , NO_PLURAL |NO_RING}
    829835,{D(nuUResSolve), URSOLVE_CMD,     LIST_CMD,            4      , NO_PLURAL |NO_RING}
     836,{D(jjCALL1ARG),  SBA_CMD,         IDEAL_CMD,           1      , ALLOW_PLURAL |ALLOW_RING}
     837,{D(jjCALL2ARG),  SBA_CMD,         IDEAL_CMD,           2      , ALLOW_PLURAL |ALLOW_RING}
     838,{D(jjCALL3ARG),  SBA_CMD,         IDEAL_CMD,           3      , NO_PLURAL |ALLOW_RING}
    830839,{D(jjCALL1ARG),  STD_CMD,         IDEAL_CMD,           1      , ALLOW_PLURAL |ALLOW_RING}
    831840,{D(jjCALL2ARG),  STD_CMD,         IDEAL_CMD,           2      , ALLOW_PLURAL |ALLOW_RING}
     
    10271036  { "ringlist",    0, RINGLIST_CMD ,      CMD_1},
    10281037  { "rvar",        0, IS_RINGVAR ,        CMD_1},
     1038  { "sba",         0, SBA_CMD ,           CMD_M},
    10291039  { "setring",     0, SETRING_CMD ,       SETRING_CMD},
    10301040  { "simplex",     0, SIMPLEX_CMD,        CMD_M},
Note: See TracChangeset for help on using the changeset viewer.