Changeset 661c214 in git for kernel/longtrans.h
- Timestamp:
- Feb 28, 2011, 5:36:07 PM (13 years ago)
- Branches:
- (u'fieker-DuVal', '117eb8c30fc9e991c4decca4832b1d19036c4c65')(u'spielwiese', 'c5facdfddea2addfd91babd8b9019161dea4b695')
- Children:
- 0d6970109b48f04bc456f5aee530b7c06be12c64
- Parents:
- a33266f6b0236cbf3b512cbd4edad959fd94d6c3
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/longtrans.h
ra33266 r661c214 4 4 * Computer Algebra System SINGULAR * 5 5 ****************************************/ 6 /* $Id: longtrans. cc12469 2011-02-25 13:38:49Z seelisch $ */6 /* $Id: longtrans.h 12469 2011-02-25 13:38:49Z seelisch $ */ 7 7 /* 8 8 * ABSTRACT: numbers in transcendental field extensions, i.e., … … 12 12 #include <kernel/longrat.h> 13 13 #include <kernel/polys-impl.h> 14 #include <kernel/longalg.h>15 14 16 extern ring ntcRing;15 typedef polyrec * napoly; 17 16 17 struct slnumber; 18 typedef struct slnumber * lnumber; 18 19 19 void ntSetChar(int p, ring r); 20 struct slnumber 21 { 22 napoly z; 23 napoly n; 24 BOOLEAN s; 25 }; 26 27 extern int ntNumbOfPar; 28 #define naParNames (currRing->parameter) 29 extern ring nacRing; 30 extern int ntIsChar0; 31 extern ring ntMapRing; 32 extern int ntParsToCopy; 33 34 void ntSetChar(int p, ring r); 20 35 void ntDelete (number *p, const ring r); 21 36 number ntInit(int i, const ring r); /* z := i */ … … 53 68 BOOLEAN ntDBTest(number a, const char *f,const int l); 54 69 #endif 70 napoly ntRemainder(napoly f, const napoly g); 71 void ntSetIdeal(ideal I); 72 extern number (*ntMap)(number from); 73 void ntCoefNormalize(number pp); 55 74 56 void ntSetIdeal(ideal I); 75 /* procedure variables for operations in coefficient field/ring */ 76 extern numberfunc ntcMult, ntcSub, ntcAdd, ntcDiv, ntcIntDiv; 77 extern number (*ntcGcd)(number a, number b, const ring r); 78 extern number (*ntcLcm)(number a, number b, const ring r); 79 extern number (*ntcInit)(int i, const ring r); 80 extern int (*ntcInt)(number &n, const ring r); 81 extern void (*ntcDelete)(number *a, const ring r); 82 #undef n_Delete 83 #define n_Delete(A,R) ntcDelete(A,R) 84 extern void (*ntcNormalize)(number &a); 85 extern number (*ntcNeg)(number a); 86 extern number (*ntcCopy)(number a); 87 extern number (*ntcInvers)(number a); 88 extern BOOLEAN (*ntcIsZero)(number a); 89 extern BOOLEAN (*ntcIsOne)(number a); 90 extern BOOLEAN (*ntcIsMOne)(number a); 91 extern BOOLEAN (*ntcGreaterZero)(number a); 92 extern const char * (*ntcRead) (const char *s, number *a); 93 extern number (*ntcMap)(number); 94 95 // external access to the interna 96 poly napPermNumber(number z, int * par_perm, int P, ring r); 97 #define napAddExp(p,i,e) (p_AddExp(p,i,e,currRing->algring)) 98 #define napLength(p) pLength(p) 99 #define napNeg(p) (p_Neg(p,currRing->algring)) 100 #define napVariables naNumbOfPar 101 #define napGetCoeff(p) pGetCoeff(p) 102 #define napGetExpFrom(p,i,r) (p_GetExp(p,i,r->algring)) 103 #define napSetExp(p,i,e) (p_SetExp(p,i,e,currRing->algring)) 104 #define napNew() (p_Init(currRing->algring)) 105 #define napAdd(p1,p2) (p_Add_q(p1,p2,currRing->algring)) 106 #define napSetm(p) p_Setm(p,currRing->algring) 107 #define napCopy(p) p_Copy(p,nacRing) 108 #define napSetCoeff(p,n) {n_Delete(&pGetCoeff(p),nacRing);pGetCoeff(p)=n;} 109 #define napComp(p,q) p_LmCmp((poly)p,(poly)q, nacRing) 110 #define napMultT(A,E) A=(napoly)p_Mult_mm((poly)A,(poly)E,nacRing) 111 #define napDeg(p) (int)p_Totaldegree(p, nacRing) 112 number napGetDenom(number &n, const ring r); 113 number napGetNumerator(number &n, const ring r); 114 void napTest(napoly p); 115 napoly napInitz(number z); 116 napoly napCopyNeg(napoly p); 117 void napMultN(napoly p, number z); 118 void napDivMod(napoly f, napoly g, napoly *q, napoly *r); 119 napoly napInvers(napoly x, const napoly c); 120 int napMaxDeg(napoly p); 121 int napMaxDegLen(napoly p, int &l); 122 void napWrite(napoly p,const BOOLEAN has_denom, const ring r); 123 const char *napHandleMons(const char *s, int i, napoly ex); 124 const char *napHandlePars(const char *s, int i, napoly ex); 125 const char *napRead(const char *s, napoly *b); 126 int napExp(napoly a, napoly b); 127 int napExpi(int i, napoly a, napoly b); 128 void napContent(napoly ph); 129 void napCleardenom(napoly ph); 130 napoly napGcd0(napoly a, napoly b); 131 napoly napGcd(napoly a, napoly b); 132 number napLcm(napoly a); 133 BOOLEAN napDivPoly (napoly p, napoly q); 134 napoly napRedp (napoly q); 135 napoly napTailred (napoly q); 136 napoly napMap(napoly p); 137 napoly napPerm(napoly p,const int *par_perm,const ring src_ring,const nMapFunc nMap); 57 138 58 139 #endif
Note: See TracChangeset
for help on using the changeset viewer.