=================================================================== RCS file: /home/cvs/OpenXM/src/kan96xx/Kan/extern2.h,v retrieving revision 1.4 retrieving revision 1.7 diff -u -p -r1.4 -r1.7 --- OpenXM/src/kan96xx/Kan/extern2.h 2003/07/10 08:20:04 1.4 +++ OpenXM/src/kan96xx/Kan/extern2.h 2003/08/20 01:39:17 1.7 @@ -1,4 +1,4 @@ -/* $OpenXM: OpenXM/src/kan96xx/Kan/extern2.h,v 1.3 2003/04/09 01:06:57 ohara Exp $ */ +/* $OpenXM: OpenXM/src/kan96xx/Kan/extern2.h,v 1.6 2003/08/19 08:02:09 takayama Exp $ */ /* poly.c */ void KinitKan(void); MONOMIAL newMonomial(struct ring *ringp); @@ -44,6 +44,9 @@ POLY modulo0(POLY f,struct ring *ringp); POLY modulopZ(POLY f,struct coeff *pcoeff); struct pairOfPOLY quotientByNumber(POLY f,struct coeff *pcoeff); int pLength(POLY f); +struct coeff *gcdOfCoeff(POLY f); +int coeffSizeMin(POLY f); +POLY reduceContentOfPoly(POLY f,struct coeff **contp); /* poly3.c */ void initT(void); @@ -70,10 +73,13 @@ POLY POLYToInitW(POLY f,int w[]); POLY polyGCD(POLY f,POLY g); int isTheSameRing(struct ring *rstack[], int rp, struct ring *newRingp); -POLY goHomogenize(POLY f,int u[],int v[],int ds[],int dssize,int ei); -POLY goHomogenize11(POLY f,int ds[],int dssize,int ei); -POLY goHomogenize_dsIdx(POLY f,int u[],int v[],int dsIdx,int ei); -POLY goHomogenize11_dsIdx(POLY f,int ds[],int dsIdx,int ei); +POLY goDeHomogenizeS(POLY f); +POLY goHomogenize(POLY f,int u[],int v[],int ds[],int dssize,int ei,int onlyS); +POLY goHomogenize11(POLY f,int ds[],int dssize,int ei,int onlyS); +POLY goHomogenize_dsIdx(POLY f,int u[],int v[],int dsIdx,int ei,int onlyS); +POLY goHomogenize11_dsIdx(POLY f,int ds[],int dsIdx,int ei,int onlyS); +struct ring *newRingOverFp(struct ring *rp, int p); +int getPrime(int p); /* coeff.c */ char *intToString(int i);