Changeset 0661780 in git
 Timestamp:
 Nov 18, 2022, 5:51:19 PM (3 months ago)
 Branches:
 (u'spielwiese', 'ad2543eab51733612ba7d118afc77edca719600e')
 Children:
 deedf3d8f501628fbee217e6e83dcbe439b95645
 Parents:
 9a41ab03572f2614499d8f7a9066dd5e27cbf7ac
 File:

 1 edited
Legend:
 Unmodified
 Added
 Removed

kernel/GBEngine/kutil.cc
r9a41ab0 r0661780 6997 6997 } 6998 6998 #endif 6999 }7000 }7001 7002 TObject* kFindDivisibleByInS_T_noCF(kStrategy strat, int end_pos, LObject* L, TObject *T, long ecart)7003 {7004 int j = 0;7005 const unsigned long not_sev = ~L>sev;7006 const unsigned long* sev = strat>sevS;7007 poly p;7008 ring r;7009 L>GetLm(p, r);7010 7011 assume(~not_sev == p_GetShortExpVector(p, r));7012 7013 if (r == currRing)7014 {7015 loop7016 {7017 if (j > end_pos) return NULL;7018 #if defined(PDEBUG)  defined(PDIV_DEBUG)7019 if (strat>S[j]!= NULL && p_LmShortDivisibleBy(strat>S[j], sev[j], p, not_sev, r) &&7020 (ecart== LONG_MAX  ecart>= strat>ecartS[j]))7021 #else7022 if (!(sev[j] & not_sev) &&7023 (ecart== LONG_MAX  ecart>= strat>ecartS[j]) &&7024 p_LmDivisibleBy(strat>S[j], p, r))7025 #endif7026 {7027 break;7028 }7029 j++;7030 }7031 // if called from NF, T objects do not exist:7032 if (strat>tl < 0  strat>S_2_R[j] == 1)7033 {7034 T>Set(strat>S[j], r, strat>tailRing);7035 assume(T>GetpLength()==pLength(T>p != __null ? T>p : T>t_p));7036 return T;7037 }7038 else7039 {7040 return strat>S_2_T(j);7041 }7042 }7043 else7044 {7045 TObject* t;7046 loop7047 {7048 if (j > end_pos) return NULL;7049 assume(strat>S_2_R[j] != 1);7050 #if defined(PDEBUG)  defined(PDIV_DEBUG)7051 t = strat>S_2_T(j);7052 assume(t != NULL && t>t_p != NULL && t>tailRing == r);7053 if (p_LmShortDivisibleBy(t>t_p, sev[j], p, not_sev, r)7054 && (ecart== LONG_MAX  ecart>= strat>ecartS[j]))7055 {7056 t>pLength=pLength(t>t_p);7057 return t;7058 }7059 #else7060 if (! (sev[j] & not_sev)7061 && (ecart== LONG_MAX  ecart>= strat>ecartS[j]))7062 {7063 t = strat>S_2_T(j);7064 assume(t != NULL && t>t_p != NULL && t>tailRing == r && t>p == strat>S[j]);7065 if (p_LmDivisibleBy(t>t_p, p, r))7066 {7067 t>pLength=pLength(t>t_p);7068 return t;7069 }7070 }7071 #endif7072 j++;7073 }7074 6999 } 7075 7000 }
Note: See TracChangeset
for help on using the changeset viewer.