[b92f8fe] | 1 | #ifndef WALKSUPPORT_H |
---|
| 2 | #define WALKSUPPORT_H |
---|
| 3 | |
---|
[599326] | 4 | #include <kernel/intvec.h> |
---|
| 5 | #include <kernel/int64vec.h> |
---|
[841e96d] | 6 | |
---|
| 7 | int tdeg(poly p); |
---|
| 8 | int getMaxTdeg(ideal I); |
---|
| 9 | int getMaxPosOfNthRow(intvec *v,int n); |
---|
| 10 | int64 getInvEps64(ideal G,intvec *targm,int pertdeg); |
---|
| 11 | int invEpsOk64(ideal I, intvec *targm, int pertdeg, int64 inveps64); |
---|
| 12 | intvec* getNthRow(intvec *v, int n); |
---|
| 13 | int64vec* getNthRow64(intvec *v, int n); |
---|
| 14 | //int64vec* gett64(int64vec* listw, int64vec* currw, int64vec* targw); |
---|
| 15 | void gett64(int64vec* listw, int64vec* currw, int64vec* targw, int64 &t1, int64 &t2); |
---|
| 16 | void nextt64(ideal G, int64vec* currw, int64vec* targw, int64 &t1, int64 &t2); |
---|
| 17 | int64vec* nextw64(int64vec* currw, int64vec* targw, int64 nexttvec0, int64 nexttvec1); |
---|
| 18 | int DIFFspy(ideal G); |
---|
| 19 | intvec* DIFF(ideal G); |
---|
| 20 | ideal init64(ideal G,int64vec* currw); |
---|
| 21 | BOOLEAN currwOnBorder64(ideal I, int64vec* currw64); |
---|
| 22 | void getTaun64(ideal G,intvec* targm,int pertdeg, int64vec** v64, int64 & i64); |
---|
| 23 | int64vec* getiv64(lists l); |
---|
[def568] | 24 | //int64 getint64(lists l);// not used |
---|
[841e96d] | 25 | |
---|
| 26 | |
---|
| 27 | //functions not originating from the oroginal SINGULAR implementation |
---|
| 28 | ideal idStd(ideal G); |
---|
| 29 | ideal idInterRed(ideal G); |
---|
| 30 | matrix matIdLift(ideal Gomega, ideal M); |
---|
| 31 | void rCopyAndChangeA(int64vec* w); |
---|
| 32 | ring rCopy0AndAddA(ring r, int64vec *wv64, BOOLEAN copy_qideal = TRUE, |
---|
| 33 | BOOLEAN copy_ordering = TRUE); |
---|
| 34 | int64vec* rGetGlobalOrderMatrix(ring r); |
---|
| 35 | int64vec* rGetGlobalOrderWeightVec(ring r); |
---|
| 36 | BOOLEAN noPolysWithMoreThanTwoTerms(ideal Gw); |
---|
| 37 | #define idealSize(I) IDELEMS(I) |
---|
| 38 | inline int ivSize(intvec* v){ return((v->rows())*(v->cols())); } |
---|
| 39 | inline int iv64Size(int64vec* v){ return((v->rows())*(v->cols())); } |
---|
| 40 | intvec* leadExp(poly p); |
---|
| 41 | int64vec* leadExp64(poly p); |
---|
| 42 | void setPosOfIM(intvec* im,int i,int j,int val); |
---|
| 43 | poly getNthPolyOfId(ideal I,int n); |
---|
| 44 | int gcd(int a, int b); |
---|
| 45 | int64 gcd64(int64 a, int64 b); |
---|
| 46 | inline int64 abs64(int64 i) { return ABS(i); } |
---|
| 47 | static inline long scalarProduct(intvec* a, intvec* b); |
---|
| 48 | static inline int64 scalarProduct64(int64vec* a, int64vec* b); |
---|
| 49 | ideal sortRedSB(ideal G); |
---|
| 50 | intvec* int64VecToIntVec(int64vec* source); |
---|
| 51 | int64vec* rGetGlobalOrderWeightVec(ring r); |
---|
| 52 | |
---|
[b92f8fe] | 53 | #endif |
---|