Changeset c7aad0 in git for kernel/nc.h


Ignore:
Timestamp:
Sep 27, 2011, 6:04:08 PM (13 years ago)
Author:
Oleksandr Motsak <motsak@…>
Branches:
(u'spielwiese', 'fe61d9c35bf7c61f2b6cbf1b56e25e2f08d536cc')
Children:
c14846c48e3ff9e4167bc71fd6c4c4cf2f7d6e03
Parents:
a0a9f0d6ddf91bf97a108e81a1b1415c0ad58615
git-author:
Oleksandr Motsak <motsak@mathematik.uni-kl.de>2011-09-27 18:04:08+02:00
git-committer:
Mohamed Barakat <mohamed.barakat@rwth-aachen.de>2011-11-09 16:13:38+01:00
Message:
FIX: non-commutative (left) GB should now work.
NOTE: SCA was disabled with this!
File:
1 edited

Legend:

Unmodified
Added
Removed
  • kernel/nc.h

    ra0a9f0 rc7aad0  
    66#include <polys/simpleideals.h>
    77
    8 
     8#include <kernel/polys.h>
    99
    1010/// Compute two-sided GB:
     
    1313/// Ann: ???
    1414ideal Approx_Step(ideal L);
     15
     16class skStrategy;
     17typedef skStrategy * kStrategy;
     18
     19// ideal gnc_gr_mora(const ideal, const ideal, const intvec *, const intvec *, kStrategy/*, const ring r*/); // Not yet!
     20ideal gnc_gr_bba (const ideal F, const ideal Q, const intvec *, const intvec *, kStrategy strat/*, const ring r*/);
     21
     22
     23static inline ideal nc_GB(const ideal F, const ideal Q, const intvec *w, const intvec *hilb, kStrategy strat, const ring r)
     24{
     25  assume(rIsPluralRing(r));
     26   
     27  const ring save = currRing;
     28   
     29  if( save != r )
     30     rChangeCurrRing(r);
     31   
     32///////////  rGR->GetNC()->p_Procs.GB          = gnc_gr_bba; // bba even for local case!
     33// old ///    r->GetNC()->GB()            = gnc_gr_bba;
     34   
     35//   rGR->GetNC()->p_Procs.GlobalGB    = gnc_gr_bba;
     36//   rGR->GetNC()->p_Procs.LocalGB     = gnc_gr_mora;
     37   
     38//  assume(r->GetNC()->p_Procs.GB!=NULL);
     39//  return r->GetNC()->p_Procs.GB(F, Q, w, hilb, strat, r);
     40  ideal res = gnc_gr_bba(F, Q, w, hilb, strat/*, r*/);
     41   
     42   
     43/*
     44// Modified Plural's Buchberger's algorithmus.
     45ideal sca_gr_bba(const ideal F, const ideal Q, const intvec *, const intvec *, kStrategy strat, const ring _currRing);
     46
     47// Modified modern Sinuglar Buchberger's algorithm.
     48ideal sca_bba(const ideal F, const ideal Q, const intvec *w, const intvec *, kStrategy strat, const ring _currRing);
     49
     50// Modified modern Sinuglar Mora's algorithm.
     51ideal sca_mora(const ideal F, const ideal Q, const intvec *w, const intvec *, kStrategy strat, const ring _currRing);
     52*/
     53
     54   
     55/*
     56  if (rHasLocalOrMixedOrdering(rGR))
     57  {
     58#ifdef PDEBUG
     59//           Print("Local case => GB == mora!\n");
     60#endif
     61    rGR->GetNC()->p_Procs.GB          = NULL; // sca_mora; // local ordering => Mora, otherwise - Buchberger!
     62  }
     63  else
     64  {
     65#ifdef PDEBUG
     66//           Print("Global case => GB == bba!\n");
     67#endif
     68    rGR->GetNC()->p_Procs.GB          = NULL; // sca_bba; // sca_gr_bba; // sca_bba? // sca_bba;
     69  }
     70//   rGR->GetNC()->p_Procs.GlobalGB    = sca_gr_bba;
     71//   rGR->GetNC()->p_Procs.LocalGB     = sca_mora;
     72
     73   
     74/////        r->GetNC()->GB()            = sca_gr_bba;
     75*/
     76  if( save != r )
     77     rChangeCurrRing(save);
     78   
     79  return (res);
     80}
     81/*
     82
     83// typedef ideal (*GB_Proc_Ptr)(const ideal F, const ideal Q, const intvec *w, const intvec *hilb, kStrategy strat, const ring r);
     84  GB_Proc_Ptr                           GB;
     85//                                         GlobalGB, // BBA
     86//                                         LocalGB;  // MORA
     87*/
    1588
    1689
Note: See TracChangeset for help on using the changeset viewer.