Changeset 4969680 in git for Singular


Ignore:
Timestamp:
Feb 16, 2024, 11:48:39 AM (3 months ago)
Author:
Hans Schoenemann <hannes@…>
Branches:
(u'spielwiese', 'b4f17ed1d25f93d46dbe29e4b499baecc2fd51bb')
Children:
ed6cce7a3936eb40676c2649aaa5fc9749dc2fea
Parents:
42ac6b15560fb5e2de442989e1b5875144ffc0d3
Message:
cohomo.cc p3
File:
1 edited

Legend:

Unmodified
Added
Removed
  • Singular/dyn_modules/cohomo/cohomo.cc

    r42ac6b r4969680  
    942942static ideal finda(ideal h,poly S,int ddeg)
    943943{
    944   ideal h2=id_complement(h), aset=idInit(1,1);
    945   int i,deg1=pTotaldegree(S);
     944  ideal aset=idInit(1,1);
     945  int deg1=pTotaldegree(S);
    946946  int tdeg=deg1+ddeg;
    947947  if(tdeg!=0)
     
    950950    std::vector<std::vector<int> > hvs=supports(h);
    951951    ideal ia=id_MaxIdeal(tdeg, currRing);
    952     for(i=0;i<IDELEMS(ia);i++)
     952    for(int i=0;i<IDELEMS(ia);i++)
    953953    {
    954954      v=support1(ia->m[i]);
     
    957957      {
    958958        idInsertPoly(aset, ia->m[i]);
     959        ia->m[i]=NULL;
    959960      }
    960961    }
    961962    idSkipZeroes(aset);
     963    idDelete(&ia);
    962964  }
    963965  else
     
    997999    }
    9981000  }
     1001  idDelete(&h2);
    9991002  return vecs;
    10001003}
     
    10961099static std::vector<int> freevars(int n,  std::vector<int> bset, std::vector<std::vector<int> > gset)
    10971100{
    1098   int ql=gset.size(), bl=bset.size(), i;
     1101  int ql=gset.size(), bl=bset.size();
    10991102  std::vector<int> mvar, fvar;
    1100   for(i=0;i<bl;i++)
     1103  for(int i=0;i<bl;i++)
    11011104  {
    11021105    mvar.push_back(bset[i]);
    11031106  }
    1104   for(i=0;i<ql;i++)
     1107  for(int i=0;i<ql;i++)
    11051108  {
    11061109    mvar.push_back(gset[i][0]);
    11071110  }
    1108   for(i=1;i<=n;i++)
     1111  for(int i=1;i<=n;i++)
    11091112  {
    11101113    if(!IsinL(i,mvar))
     
    11191122static std::vector<int> fvarsvalue(int vnum, std::vector<int> fvars)
    11201123{
    1121   int i;
    11221124  std::vector<int> fset=fvars;
    1123   for(i=0;i<fset.size();i++)
     1125  for(int i=0;i<fset.size();i++)
    11241126  {
    11251127    if(fset[i]==vnum)
     
    11371139{
    11381140  std::vector<int> badset=bset;
    1139   int i,j,m, bl=bset.size(), gl=gset.size();
    1140   for(i=0;i<bl;i++)
     1141  int m, bl=bset.size(), gl=gset.size();
     1142  for(int i=0;i<bl;i++)
    11411143  {
    11421144    m=badset[i];
    1143     for(j=0;j<gl;j++)
     1145    for(int j=0;j<gl;j++)
    11441146    {
    11451147      if(gset[j][0]==m && !IsinL(gset[j][1],badset))
     
    11801182static std::vector<int> vecbase1(int num, std::vector<int> oset)
    11811183{
    1182   int i;
    11831184  std::vector<int> base;
    1184   for(i=0;i<num;i++)
     1185  for(int i=0;i<num;i++)
    11851186  {
    11861187    if(IsinL(i+1,oset))
     
    11961197static std::vector<int> make0(int n)
    11971198{
    1198   int i;
    11991199  std::vector<int> vec;
    1200   for(i=0;i<n;i++)
     1200  for(int i=0;i<n;i++)
    12011201  {
    12021202    vec.push_back(0);
     
    12091209static std::vector<int> make1(int n)
    12101210{
    1211   int i;
    12121211  std::vector<int> vec;
    1213   for(i=0;i<n;i++)
     1212  for(int i=0;i<n;i++)
    12141213  {
    12151214    vec.push_back(1);
     
    12381237static std::vector<std::vector<int> > ofindbases(int num,  std::vector<int> bset,std::vector<std::vector<int> > gset)
    12391238{
    1240   int i,m;
    12411239  std::vector<std::vector<int> > bases;
    12421240  std::vector<int> fvars=freevars(num,   bset,  gset), base1;
     
    12481246  else
    12491247  {
    1250     for(i=0;i<fvars.size();i++)
    1251     {
    1252       m=fvars[i];
     1248    for(unsigned i=0;i<fvars.size();i++)
     1249    {
     1250      int m=fvars[i];
    12531251      base1=ofindbases1(num, m, bset, gset);
    12541252      bases.push_back(base1);
     
    13041302static std::vector<std::vector<int> > links(poly a, ideal h)
    13051303{
    1306   int i;
    13071304  std::vector<std::vector<int> > lk,X=supports(h);
    13081305  std::vector<int> U,In,av=support1(a);
    1309   for(i=0;i<X.size();i++)
     1306  for(int i=0;i<X.size();i++)
    13101307  {
    13111308    U=vecUnion(av,X[i]);
Note: See TracChangeset for help on using the changeset viewer.