Changeset 10d1b7 in git
- Timestamp:
- Sep 6, 2004, 6:45:28 PM (20 years ago)
- Branches:
- (u'spielwiese', 'fe61d9c35bf7c61f2b6cbf1b56e25e2f08d536cc')
- Children:
- c4063dbdf6b17b78950a97b3b6996bb01fd18202
- Parents:
- db427bfff5c3de62ca7d93f403e9b7349b088118
- Location:
- Singular
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
Singular/tgb.cc
rdb427b r10d1b7 409 409 pNorm(P.p); 410 410 411 411 412 412 c->strat->enterS(P,i,c->strat); 413 413 … … 903 903 904 904 add_to_reductors(c, h, c->lengths[c->n-1]); 905 //i=posInS(c->strat,c->strat->sl,h,0 /*ecart*/);905 //i=posInS(c->strat,c->strat->sl,h,0 ecart); 906 906 907 907 if (c->lengths[c->n-1]==1) … … 1451 1451 qsort(buf,i,sizeof(red_object),red_object_better_gen); 1452 1452 // Print("\ncurr_deg:%i\n",curr_deg); 1453 Print("M[%i, ",i); 1453 Print("M[%i, ",i); 1454 c->modifiedS=(BOOLEAN*) omalloc((c->strat->sl+1)*sizeof(BOOLEAN)); 1455 c->expandS=(poly*) omalloc((1)*sizeof(poly)); 1456 c->expandS[0]=NULL; 1457 int z2; 1458 for(z2=0;z2<=c->strat->sl;z2++) 1459 c->modifiedS[z2]=FALSE; 1454 1460 multi_reduction(buf, i, c); 1461 1462 //resort S 1463 1464 for(z2=0;z2<=c->strat->sl;z2++) 1465 { 1466 if (c->modifiedS[z2]) 1467 { 1468 int qal; 1469 if (c->strat->lenSw) 1470 qal=c->strat->lenSw[z2]; 1471 else 1472 qal=c->strat->lenS[z2]; 1473 int new_pos=simple_posInS(c->strat,c->strat->S[z2],qal,c->is_char0); 1474 if (new_pos<z2) 1475 { 1476 move_forward_in_S(z2,new_pos,c->strat,c->is_char0); 1477 } 1478 } 1479 } 1480 for(z2=0;c->expandS[z2];z2++) 1481 add_to_reductors(c,c->expandS[z2],pLength(c->expandS[z2])); 1482 omfree(c->modifiedS); 1483 c->modifiedS=NULL; 1484 omfree(c->expandS); 1485 c->expandS=NULL; 1455 1486 Print("%i]",i); 1456 1487 // for(j=0;j<i;j++){ … … 2421 2452 else 2422 2453 pNorm(clear_into); 2423 if (new_pos<j){ 2424 move_forward_in_S(j,new_pos,c->strat,c->is_char0); 2425 erg.reduce_by=new_pos; 2426 } 2454 erg.reduce_by=j; 2455 //resort later see diploma thesis, find_in_S must be deterministic during multireduction 2456 // if (new_pos<j){ 2457 // move_forward_in_S(j,new_pos,c->strat,c->is_char0); 2458 // erg.reduce_by=new_pos; 2459 //} 2427 2460 } 2428 2461 } … … 2643 2676 // qsort(los,losl,sizeof(red_object),red_object_better_gen); 2644 2677 if(erg.expand) 2645 add_to_reductors(c,erg.expand,erg.expand_length); 2678 { 2679 int i; 2680 for(i=0;c->expandS[i];i++); 2681 c->expandS=(poly*) omrealloc(c->expandS,(i+2)*sizeof(poly)); 2682 c->expandS[i+1]=NULL; 2683 } 2684 // add_to_reductors(c,erg.expand,erg.expand_length); 2646 2685 } 2647 2686 return; -
Singular/tgb.h
rdb427b r10d1b7 92 92 kStrategy strat; 93 93 int* T_deg; 94 poly* expandS; 94 95 poly* gcd_of_terms; 95 96 int_pair_node* soon_free; 96 97 sorted_pair_node** apairs; 98 BOOLEAN* modifiedS; 97 99 #ifdef HEAD_BIN 98 100 struct omBin_s* HeadBin;
Note: See TracChangeset
for help on using the changeset viewer.