Changeset bf876a in git for kernel


Ignore:
Timestamp:
Aug 17, 2022, 1:53:24 PM (20 months ago)
Author:
Hans Schoenemann <hannes@…>
Branches:
(u'spielwiese', '4a9821a93ffdc22a6696668bd4f6b8c9de3e6c5f')
Children:
526e5cde24eb73ac4ecfe282cdfceca1b3f64954
Parents:
3d17e66f2ca42d1b7e7dc513828600e9b7609ec9
git-author:
Hans Schoenemann <hannes@mathematik.uni-kl.de>2022-08-17 13:53:24+02:00
git-committer:
Hans Schoenemann <hannes@mathematik.uni-kl.de>2022-08-17 13:57:23+02:00
Message:
fix: redMotraNFRing (use ndQuotRem, n_DivBy,..)
File:
1 edited

Legend:

Unmodified
Added
Removed
  • kernel/GBEngine/kstd1.cc

    r3d17e6 rbf876a  
    581581    h->SetShortExpVector();
    582582    if ((strat->tl>=0)
    583     &&strat->T[0].GetpFDeg() == 0 
     583    &&strat->T[0].GetpFDeg() == 0
    584584    && strat->T[0].length <= 2)
    585585    {
     
    10801080    H.p = h;
    10811081    int j0, j = 0;
    1082     int z = 10;
    10831082    int docoeffred  = 0;
    10841083    poly T0p    = strat->T[0].p;
     
    10891088    H.sev = pGetShortExpVector(H.p);
    10901089    unsigned long not_sev = ~ H.sev;
    1091     if (strat->T[0].GetpFDeg() == 0 && strat->T[0].length <= 2) {
    1092         docoeffred  = 1;
     1090    if (strat->T[0].GetpFDeg() == 0 && strat->T[0].length <= 2)
     1091    {
     1092        docoeffred  = 1; // euclidean ring required: n_QuotRem
     1093        if (currRing->cf->cfQuotRem==ndQuotRem)
     1094        {
     1095          docoeffred = 0;
     1096        }
    10931097    }
    10941098    loop
     
    10971101         * T[0] is 0 (constant). This is only efficient if T[0] is short, thus
    10981102         * we ask for the length of T[0] to be <= 2 */
    1099         if (docoeffred) {
     1103        if (docoeffred)
     1104        {
    11001105            j0 = kTestDivisibleByT0_Z(strat, &H);
    1101             if (j0 == 0 && n_DivBy(pGetCoeff(H.p), pGetCoeff(T0p), currRing->cf) == FALSE
    1102                     && T0ecart <= H.ecart) {
     1106            if ((j0 == 0)
     1107            && (n_DivBy(pGetCoeff(H.p), pGetCoeff(T0p), currRing->cf) == FALSE)
     1108            && (T0ecart <= H.ecart))
     1109            {
    11031110                /* not(lc(reducer) | lc(poly)) && not(lc(poly) | lc(reducer))
    11041111                 * => we try to cut down the lead coefficient at least */
     
    11671174             * end of search: have to reduce with pi
    11681175             */
    1169             z++;
    1170             if (z>10)
    1171             {
    1172                 pNormalize(H.p);
    1173                 z=0;
    1174             }
    11751176            if ((ei > H.ecart) && (strat->kNoether==NULL))
    11761177            {
Note: See TracChangeset for help on using the changeset viewer.