Changeset 246a66 in git
- Timestamp:
- Feb 15, 2024, 2:47:17 PM (3 months ago)
- Branches:
- (u'spielwiese', 'b4f17ed1d25f93d46dbe29e4b499baecc2fd51bb')
- Children:
- 083f003065d6d79ac5e85e9da00f276e58a5aacb
- Parents:
- c7c2d4b890e7240d503735adc7d3f2ab61cd4adf
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
Singular/dyn_modules/cohomo/cohomo.cc
rc7c2d4b89 r246a66 49 49 static void listprint(std::vector<int> vec) 50 50 { 51 unsigned i; 52 for(i=0;i<vec.size();i++) 51 for(unsigned i=0;i<vec.size();i++) 53 52 { 54 53 Print(" _[%d]=%d\n",i+1,vec[i]); … … 65 64 static void listsprint(std::vector<std::vector<int> > posMat) 66 65 { 67 unsigned i; 68 for(i=0;i<posMat.size();i++) 66 for(unsigned i=0;i<posMat.size();i++) 69 67 { 70 68 Print("[%d]:\n",i+1); 71 69 listprint(posMat[i]); 72 Print ("\n");70 PrintLn(); 73 71 PrintLn(); 74 72 } … … 84 82 static void id_print(ideal h) 85 83 { 86 int i; 87 for(i=0;i<IDELEMS(h);i++) 84 for(int i=0;i<IDELEMS(h);i++) 88 85 { 89 86 Print(" [%d]\n",i+1); … … 116 113 Print("[%d]:\n",i+1); 117 114 lpprint(pvs[i]); 118 Print ("\n");115 PrintLn(); 119 116 PrintLn(); 120 117 } … … 132 129 static bool IsinL(int a, std::vector<int> vec) 133 130 { 134 unsigned i; 135 for(i=0;i<vec.size();i++) 131 for(unsigned i=0;i<vec.size();i++) 136 132 { 137 133 if(a==vec[i]) … … 147 143 static std::vector<int> vecIntersection(std::vector<int> p, std::vector<int> q) 148 144 { 149 unsigned i;150 145 std::vector<int> inte; 151 for( i=0;i<p.size();i++)146 for(unsigned i=0;i<p.size();i++) 152 147 { 153 148 if(IsinL(p[i],q)) … … 160 155 static bool vsubset(std::vector<int> vec1, std::vector<int> vec2) 161 156 { 162 int i;163 157 if(vec1.size()>vec2.size()) 164 158 return false; 165 for(i =0;i<vec1.size();i++)159 for(int i=0;i<vec1.size();i++) 166 160 { 167 161 if(!IsinL(vec1[i],vec2)) … … 186 180 static bool vInvsl(std::vector<int> vec, std::vector<std::vector<int> > vecs) 187 181 { 188 int i; 189 for(i=0;i<vecs.size();i++) 182 for(int i=0;i<vecs.size();i++) 190 183 { 191 184 if(vEvl(vec,vecs[i])) … … 201 194 { 202 195 std::vector<int> vec=vec1; 203 unsigned i; 204 for(i=0;i<vec2.size();i++) 196 for(unsigned i=0;i<vec2.size();i++) 205 197 { 206 198 if(!IsinL(vec2[i],vec)) … … 225 217 static std::vector<std::vector<int> > vsMinusv(std::vector<std::vector<int> > vecs, std::vector<int> vec) 226 218 { 227 int i;228 219 std::vector<std::vector<int> > rem; 229 for(i =0;i<vecs.size();i++)220 for(int i=0;i<vecs.size();i++) 230 221 { 231 222 if(!vEvl(vecs[i],vec)) … … 239 230 static std::vector<std::vector<int> > vsUnion(std::vector<std::vector<int> > vs1, std::vector<std::vector<int> > vs2) 240 231 { 241 int i;242 232 std::vector<std::vector<int> > vs=vs1; 243 for(i =0;i<vs2.size();i++)233 for(int i=0;i<vs2.size();i++) 244 234 { 245 235 if(!vInvsl(vs2[i],vs)) … … 253 243 static std::vector<std::vector<int> > vsIntersection(std::vector<std::vector<int> > vs1, std::vector<std::vector<int> > vs2) 254 244 { 255 int i;256 245 std::vector<std::vector<int> > vs; 257 for(i =0;i<vs2.size();i++)246 for(int i=0;i<vs2.size();i++) 258 247 { 259 248 if(vInvsl(vs2[i],vs1)) … … 271 260 static std::vector<int> support1(poly p) 272 261 { 273 int j;274 262 std::vector<int> supset; 275 if(p== 0) return supset;276 for( j=1;j<=rVar(currRing);j++)263 if(p==NULL) return supset; 264 for(int j=1;j<=rVar(currRing);j++) 277 265 { 278 266 if(pGetExp(p,j)>0) … … 304 292 static std::vector<int> support2(poly p) 305 293 { 306 int j;307 294 poly q; 308 295 std::vector<int> supset; 309 for( j=1;j<=rVar(currRing);j++)310 { 311 q=p Copy(p);296 for(int j=1;j<=rVar(currRing);j++) 297 { 298 q=p; 312 299 while (q!=NULL) 313 300 { … … 317 304 break; 318 305 } 319 q=pNext(q);306 pIter(q); 320 307 } 321 308 } … … 343 330 static poly pMake(std::vector<int> vbase) 344 331 { 345 int n=vbase.size(); poly p,q=0; 332 int n=vbase.size(); poly p,q; 333 q=NULL; 346 334 for(int i=0;i<n;i++) 347 335 { … … 358 346 static ideal idMake(std::vector<std::vector<int> > vecs) 359 347 { 360 int lv=vecs.size() , i;348 int lv=vecs.size(); 361 349 poly p; 362 350 ideal id_re=idInit(1,1); 363 for(i =0;i<lv;i++)351 for(int i=0;i<lv;i++) 364 352 { 365 353 p=pMake(vecs[i]); … … 379 367 ideal idq=kNF(gb,NULL,h1); 380 368 idSkipZeroes(idq); 369 idDelete(&gb); 381 370 return idq; 382 371 } … … 386 375 static int pcoef(poly p, int m) 387 376 { 388 int i,co; poly q=pCopy(p);389 for(i =1;i<=currRing->N;i++)377 int co; poly q=p; 378 for(int i=1;i<=currRing->N;i++) 390 379 { 391 380 if(p_GetExp(q,m,currRing)!=0) … … 405 394 static bool vInp(int m,poly p) 406 395 { 407 poly q=p Copy(p);396 poly q=p; 408 397 while (q!=NULL) 409 398 { … … 420 409 static std::vector<int> vMake(poly p) 421 410 { 422 int i;423 411 std::vector<int> vbase; 424 for(i =1;i<=currRing->N;i++)412 for(int i=1;i<=currRing->N;i++) 425 413 { 426 414 if(vInp(i,p)) … … 441 429 std::vector<int> vec; 442 430 std::vector<std::vector<int> > vecs; 443 int i; 444 for(i=0;i<IDELEMS(h);i++) 431 for(int i=0;i<IDELEMS(h);i++) 445 432 { 446 433 vec=vMake(h->m[i]); … … 456 443 ideal h1=idMake(vec1), h2=idMake(vec2); 457 444 ideal h=idmodulo(h1,h2); 445 idDelete(&h1); 446 idDelete(&h2); 458 447 std::vector<std::vector<int> > vecs= vsMake(h); 459 448 return vecs; … … 934 923 static ideal finda(ideal h,poly S,int ddeg) 935 924 { 936 poly e=pOne();937 925 ideal h2=id_complement(h), aset=idInit(1,1); 938 926 int i,deg1=pTotaldegree(S); … … 954 942 idSkipZeroes(aset); 955 943 } 956 else idInsertPoly(aset,e); 944 else 945 { 946 poly e=pOne(); 947 idInsertPoly(aset,e); 948 } 957 949 return(aset); 958 950 }
Note: See TracChangeset
for help on using the changeset viewer.