Changeset 6e66d2 in git


Ignore:
Timestamp:
Apr 26, 2011, 9:50:17 PM (12 years ago)
Author:
Oleksandr Motsak <motsak@…>
Branches:
(u'spielwiese', '828514cf6e480e4bafc26df99217bf2a1ed1ef45')
Children:
ad443e05c5a0a8d8094e178a420b4bc322c757c0
Parents:
4be94358d35989a4285e3c28d99bc11c43898790
Message:
FIX: Schreyer ordering was broken: monomials always had 0-level

From: Oleksandr Motsak <motsak@mathematik.uni-kl.de>

git-svn-id: file:///usr/local/Singular/svn/trunk@14182 2c84dea3-7e68-4137-9b89-c4e89433aadc
Location:
kernel
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • kernel/p_polys.cc

    r4be9435 r6e66d2  
    200200
    201201          assume( c >= 0 );
    202           const int limit = o->data.is.limit;
    203 
    204           assume( limit >= 0 );
    205202
    206203          // Let's simulate case ro_syz above....
     
    209206
    210207          assume( pVarOffset != NULL );
    211 
    212           if( c > limit )
    213             p->exp[o->data.isTemp.start] = 1;
    214           else
    215           {
    216             p->exp[o->data.isTemp.start] = 0;
    217           }
    218208
    219209          // TODO: Can this be done in the suffix???
     
    229219            }
    230220          }
    231 
    232        
    233 
     221           
    234222#ifndef NDEBUG
    235223          for( int i = 1; i <= r->N; i++ ) // No v[0] here!!!
     
    242230            }
    243231          }
    244 
     232#endif
     233           
     234#ifndef NDEBUG
    245235#if MYTEST
    246 //          if( p->exp[o->data.isTemp.start] > 0 )
    247 //          {
    248 //            PrintS("Initial Value: "); p_DebugPrint(p, r, r, 1);
    249 //          }
    250 #endif
    251 #endif
    252 
     236          PrintS("Initial Value: "); p_DebugPrint(p, r, r, 1);
     237#endif
     238#endif
    253239          break;
    254240        }
     
    275261#ifndef NDEBUG
    276262#if MYTEST
    277             Print("is ord in rSetm: pos: %d, c: %d, limit: %d\n", c, pos, limit); // p_DebugPrint(p, r, r, 1);
     263            Print("p_Setm_General: ro_is : in rSetm: pos: %d, c: %d > limit: %d\n", c, pos, limit); // p_DebugPrint(p, r, r, 1);
    278264#endif
    279265#endif
     
    296282
    297283
     284            assume(pp != NULL);
    298285            if(pp == NULL) break;
    299286
     
    302289
    303290            assume(start <= end);
    304             assume(pp != NULL);
     291             
     292//          const int limit = o->data.is.limit;
     293          assume( limit >= 0 );
     294
     295//        const int st = o->data.isTemp.start;       
     296
     297          if( c > limit )
     298            p->exp[start] = 1;
     299//          else
     300//            p->exp[start] = 0;
     301
     302             
     303#ifndef NDEBUG
     304            Print("p_Setm_General: is(-Temp-) :: c: %d, limit: %d, [st:%d] ===>>> %d\n", c, limit, start, p->exp[start]);
     305#endif       
     306   
    305307
    306308            for( int i = start; i <= end; i++) // v[0] may be here...
    307309              p->exp[i] += pp->exp[i]; // !!!!!!!! ADD corresponding LT(F)
    308310
     311       
     312
     313             
    309314#ifndef NDEBUG
    310315            const int* const pVarOffset = o->data.is.pVarOffset;
     
    338343            if( vo != -1 )
    339344              p->exp[vo] = c; // initial component v[0]!
     345
     346#ifndef NDEBUG
     347#if MYTEST
     348            Print("p_Setm_General: ro_is :: c: %d <= limit: %d, vo: %d, exp: %d\n", c, limit, vo, p->exp[vo]);
     349            p_DebugPrint(p, r, r, 1);
     350#endif       
     351#endif       
    340352          }
     353           
    341354
    342355          break;
  • kernel/ring.cc

    r4be9435 r6e66d2  
    28012801      {
    28022802#ifndef NDEBUG
    2803         dReportError("Error: unhandled ordering in rModifyRing: ringorder_S = [%d]", r_ord);
     2803        Warn("Error: unhandled ordering in rModifyRing: ringorder_S = [%d]", r_ord);
    28042804#endif
    28052805        order[j]=r_ord; /*r->order[i];*/
     
    28562856        if (omit_comp)
    28572857        {
    2858           dReportError("Error: WRONG USAGE of rModifyRing: cannot omit component due to the ordering block [%d]: %d (ringorder_IS)", i, r_ord);
     2858#ifndef NDEBUG
     2859          Warn("Error: WRONG USAGE of rModifyRing: cannot omit component due to the ordering block [%d]: %d (ringorder_IS)", i, r_ord);
     2860#endif
    28592861          omit_comp = FALSE;
    28602862        }
Note: See TracChangeset for help on using the changeset viewer.