Changeset d7d5f6 in git


Ignore:
Timestamp:
Feb 12, 2009, 1:43:31 PM (15 years ago)
Author:
Christian Eder
Branches:
(u'spielwiese', '4a9821a93ffdc22a6696668bd4f6b8c9de3e6c5f')
Children:
2ab41e8a61345906b383b4dc90fd21e5578fc28b
Parents:
34fcf813ea36a30ddd0d8107abf9a73b247be289
Message:
still searching bug in reduction()


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

Legend:

Unmodified
Added
Removed
  • kernel/f5gb.cc

    r34fcf8 rd7d5f6  
    22*  Computer Algebra System SINGULAR     *
    33****************************************/
    4 /* $Id: f5gb.cc,v 1.26 2009-02-11 21:24:07 ederc Exp $ */
     4/* $Id: f5gb.cc,v 1.27 2009-02-12 12:43:31 ederc Exp $ */
    55/*
    66* ABSTRACT: f5gb interface
     
    372372========================================================================
    373373*/
    374 LList* reduction(LList* &sPolyList, LList* &completed, LList* &gPrev, RList* &rules, LTagList* &lTag, RTagList* &rTag,
     374LList* reduction(LList* sPolyList, LList* completed, LList* gPrev, RList* rules, LTagList* lTag, RTagList* rTag,
    375375                 ideal gbPrev) {
    376376    Print("##########################################In REDUCTION!########################################\n");
    377377    // temporary normal form and zero polynomial for testing
    378     poly tempNF =   pInit();
     378    static poly tempNF =   pInit();
    379379    TopRed* ret =   new TopRed();
    380380    // compute only if there are any S-polynomials to be reduced
     
    384384        Print("HIER REDUCTION\n");
    385385        while(NULL != temp->getLPoly()) {
    386             tempNF = kNF(gbPrev,currQuotient,temp->getPoly()); 
     386            if(NULL != completed->getFirst()->getLPoly()) {
     387                                Print("BIS HIERHIN UND NICHT WEITER\n");       
     388                                Print("%p\n",completed->getFirst());
     389                                pWrite(completed->getFirst()->getPoly());
     390                        }
     391                        tempNF = kNF(gbPrev,currQuotient,temp->getPoly()); 
    387392            pWrite(tempNF);
    388393            pWrite(temp->getPoly());
     
    403408            }
    404409            else {
     410                                Print("HIERLALA\n");
     411                                if(NULL != completed->getFirst()->getLPoly()) {
     412                                        Print("%p\n",completed->getFirst());
     413                                        pWrite(completed->getFirst()->getPoly());
     414                                }
     415                                //
     416                                //
     417                                //
     418                                //
     419                                // NOTE: until this point the element completed->getFirst()->getPoly() exists!!!
     420                                //
     421                                //
     422                                //
     423                                //
    405424                ret =   topReduction(temp, completed, gPrev, rules, lTag, rTag);
    406425                // in topReduction() the investigated first element of sPolyList will be deleted after its
     
    408427                // in sPolyList => the while loop is finite
    409428                // first possible after implementation of topReduction(): temp = sPolyList->getFirst();
    410                 completed   =   ret->getCompleted();
     429               
     430                                completed   =   ret->getCompleted();
     431                               
     432                                Print("%p\n",completed->getFirst());
     433                                Print("%p\n",ret->getCompleted()->getFirst());
     434                                pWrite(completed->getFirst()->getPoly());
    411435            Print("~~~HIER~~~\n");
     436                        Print("%d\n",completed->getFirst()->getIndex());
    412437                if(NULL != ret->getToDo()) {
    413438                    sPolyList->insertByLabel(ret->getToDo()->getFirst());
    414439                }
    415440            }
     441                        temp    =       sPolyList->getFirst();
     442                        Print("END WHILE LOOP: ");
     443                        Print("%p\n",completed->getFirst());
     444                        pWrite(completed->getFirst()->getPoly());
     445                                               
    416446        }
    417447    }
     
    427457=====================================================================================
    428458*/
    429 TopRed* topReduction(LNode* l, LList* &completed, LList* &gPrev, RList* &rules, LTagList* &lTag, RTagList* &rTag) {
     459TopRed* topReduction(LNode* l, LList* completed, LList* gPrev, RList* rules, LTagList* lTag, RTagList* rTag) {
    430460    Print("##########################################In topREDUCTION!########################################\n");
    431461    LNode* red   =   new LNode();
     
    442472            completed->insert(l->getLPoly());
    443473            Print("%p\n",completed->getFirst()->getLPoly());
     474                        Print("%d\n",completed->getFirst()->getIndex());
    444475            pWrite(completed->getFirst()->getPoly());
    445476            TopRed* ret =   new TopRed(completed,NULL);
     
    464495=====================================================================
    465496*/
    466 LNode* findReductor(LNode* l,LList* &completed,LList* &gPrev, RList* &rules, LTagList* &lTag,RTagList* &rTag,
     497LNode* findReductor(LNode* l,LList* completed,LList* gPrev, RList* rules, LTagList* lTag,RTagList* rTag,
    467498                    LNode* gPrevRedCheck, LNode* completedRedCheck) {
    468499    number nOne     =   nInit(1);
    469     poly u          =   pInit();
    470     poly redPoly    =   pInit();
     500    static poly u          =   pInit();
     501    static poly redPoly    =   pInit();
    471502    poly t          =   pHead(l->getPoly());
    472503    LNode* temp     =   new LNode();
     
    518549    else {
    519550        temp    =   completed->getFirst();
    520         Print("HIER FIND\n");
    521         Print("%p\n",temp->getLPoly());
     551        Print("HIER FIND2\n");
     552                Print("%p\n",temp->getLPoly());
    522553    }
    523554    // search only for reductors with the same index, as reductions with elements of lower
  • kernel/f5gb.h

    r34fcf8 rd7d5f6  
    22*  Computer Algebra System SINGULAR     *
    33****************************************/
    4 /* $Id: f5gb.h,v 1.24 2009-02-11 21:24:07 ederc Exp $ */
     4/* $Id: f5gb.h,v 1.25 2009-02-12 12:43:31 ederc Exp $ */
    55/*
    66* ABSTRACT: f5gb interface
     
    7979========================================================================
    8080*/
    81 LList* reduction(LList* &sPolyList, LList* &completed, LList* &gPrev, RList* &rules, LTagList* &lTag, RTagList* &rTag,
     81LList* reduction(LList* sPolyList, LList* completed, LList* gPrev, RList* rules, LTagList* lTag, RTagList* rTag,
    8282                 ideal gbPrev);
    8383
     
    8888=====================================================================================
    8989*/
    90 TopRed* topReduction(LNode* l, LList* &completed, LList* &gPrev, RList* &rules, LTagList* &lTag, RTagList* &rTag);
     90TopRed* topReduction(LNode* l, LList* completed, LList* gPrev, RList* rules, LTagList* lTag, RTagList* rTag);
    9191
    9292/*
     
    9595=====================================================================
    9696*/
    97 LNode* findReductor(LNode* l,LList* &completed,LList* &gPrev, RList* &rules, LTagList* &lTag,RTagList* &rTag,
     97LNode* findReductor(LNode* l,LList* completed,LList* gPrev, RList* rules, LTagList* lTag,RTagList* rTag,
    9898                    LNode* gPrevRedCheck, LNode* completedRedCheck);
    9999
Note: See TracChangeset for help on using the changeset viewer.