version 1.29, 2001/10/09 01:36:19 |
version 1.33, 2002/01/28 00:54:43 |
|
|
* DEVELOPER SHALL HAVE NO LIABILITY IN CONNECTION WITH THE USE, |
* DEVELOPER SHALL HAVE NO LIABILITY IN CONNECTION WITH THE USE, |
* PERFORMANCE OR NON-PERFORMANCE OF THE SOFTWARE. |
* PERFORMANCE OR NON-PERFORMANCE OF THE SOFTWARE. |
* |
* |
* $OpenXM: OpenXM_contrib2/asir2000/include/ca.h,v 1.28 2001/09/17 10:32:41 noro Exp $ |
* $OpenXM: OpenXM_contrib2/asir2000/include/ca.h,v 1.32 2001/12/25 02:39:03 noro Exp $ |
*/ |
*/ |
#include <stdio.h> |
#include <stdio.h> |
|
|
Line 566 typedef unsigned int ModNum; |
|
Line 566 typedef unsigned int ModNum; |
|
#endif |
#endif |
#define CALLOC(d,e) MALLOC((d)*(e)) |
#define CALLOC(d,e) MALLOC((d)*(e)) |
|
|
#if (defined(__GNUC__) || defined(vax) || defined(apollo) || defined(alloca) || defined(VISUAL)) |
#if !defined(__CYGWIN__) && (defined(__GNUC__) || defined(vax) || defined(apollo) || defined(alloca) || defined(VISUAL)) |
#define ALLOCA(d) alloca(d) |
#define ALLOCA(d) alloca(d) |
#else |
#else |
#define ALLOCA(d) MALLOC(d) |
#define ALLOCA(d) MALLOC(d) |
#endif |
#endif |
|
|
|
/* for setjmp/longjmp compatibility */ |
|
#if defined(__CYGWIN__) |
|
#define JMP_BUF sigjmp_buf |
|
#define SETJMP(x) sigsetjmp(x,~0) |
|
#define LONGJMP(x,y) siglongjmp(x,y) |
|
#else |
|
#define JMP_BUF jmp_buf |
|
#define SETJMP(x) setjmp(x) |
|
#define LONGJMP(x,y) longjmp(x,y) |
|
#endif |
|
|
#define TRUESIZE(type,n,atype) (sizeof(struct type)+MAX((n),0)*sizeof(atype)) |
#define TRUESIZE(type,n,atype) (sizeof(struct type)+MAX((n),0)*sizeof(atype)) |
#define NALLOC(d) ((N)MALLOC_ATOMIC(TRUESIZE(oN,(d)-1,int))) |
#define NALLOC(d) ((N)MALLOC_ATOMIC(TRUESIZE(oN,(d)-1,int))) |
#define UMALLOC(d) ((UM)MALLOC(TRUESIZE(oUM,d,int))) |
#define UMALLOC(d) ((UM)MALLOC(TRUESIZE(oUM,d,int))) |
Line 813 if(!(r)){(c)=(r)=(s);}else{NEXT(c)=(s);(c)=(s);} |
|
Line 824 if(!(r)){(c)=(r)=(s);}else{NEXT(c)=(s);(c)=(s);} |
|
#define _FREEMP(m) NEXT(m)=_mp_free_list; _mp_free_list=(m) |
#define _FREEMP(m) NEXT(m)=_mp_free_list; _mp_free_list=(m) |
#define _FREEDP(m) BDY(m)=(MP)_dp_free_list; _dp_free_list=(m) |
#define _FREEDP(m) BDY(m)=(MP)_dp_free_list; _dp_free_list=(m) |
|
|
|
#define MUL_WEIGHT(a,i) (current_dl_weight_vector?(a)*current_dl_weight_vector[i]:(a)) |
|
|
/* externals */ |
/* externals */ |
#if 0 |
#if 0 |
double NatToReal(); |
double NatToReal(); |
Line 869 extern int *current_gfs_plus1; |
|
Line 882 extern int *current_gfs_plus1; |
|
extern int *current_gfs_ntoi; |
extern int *current_gfs_ntoi; |
extern int *current_gfs_iton; |
extern int *current_gfs_iton; |
|
|
|
extern int *current_dl_weight_vector; |
|
|
/* prototypes */ |
/* prototypes */ |
int compui(VL,USINT,USINT); |
int compui(VL,USINT,USINT); |
int compbytearray(VL,BYTEARRAY,BYTEARRAY); |
int compbytearray(VL,BYTEARRAY,BYTEARRAY); |
Line 1852 int berlekampsf(UM p,int df,UM *tab,UM *r); |
|
Line 1867 int berlekampsf(UM p,int df,UM *tab,UM *r); |
|
void minipolysf(UM f,UM p,UM mp); |
void minipolysf(UM f,UM p,UM mp); |
int find_rootsf(UM p,int *root); |
int find_rootsf(UM p,int *root); |
void canzassf(UM f,int d,UM *r); |
void canzassf(UM f,int d,UM *r); |
void sfhensel(int count,P f,V x,GFS *evp,P *sfp,ML *listp); |
void sfhensel(int count,P f,V x,int degbound,GFS *evp,P *sfp,ML *listp); |
int sfberle(VL vl,P f,int count,GFS *ev,DCP *dcp); |
int sfberle(VL vl,P f,int count,GFS *ev,DCP *dcp); |
void sfgcdgen(P f,ML blist,ML *clistp); |
void sfgcdgen(P f,ML blist,ML *clistp); |
void sfhenmain2(BM f,UM g0,UM h0,int dy,BM *gp); |
void sfhenmain2(BM f,UM g0,UM h0,int dy,BM *gp); |
Line 1861 void sfbmtop(BM f,V x,V y,P *fp); |
|
Line 1876 void sfbmtop(BM f,V x,V y,P *fp); |
|
void sfsqfr(P f,DCP *dcp); |
void sfsqfr(P f,DCP *dcp); |
void sfusqfr(P f,DCP *dcp); |
void sfusqfr(P f,DCP *dcp); |
void sfbsqfr(P f,V x,V y,DCP *dcp); |
void sfbsqfr(P f,V x,V y,DCP *dcp); |
void sfbfctr(P f,V x,V y,DCP *dcp); |
void sfbfctr(P f,V x,V y,int degbound,DCP *dcp); |
void sfdtest(P f,ML list,V x,V y,DCP *dcp); |
void sfdtest(P f,ML list,V x,V y,DCP *dcp); |
int sfdtestmain(VL vl,P lcg,UM lcg0,BM lcy,P csum,ML list, |
int sfdtestmain(VL vl,P lcg,UM lcg0,BM lcy,P csum,ML list, |
int k,int *in,P *fp,P *cofp); |
int k,int *in,P *fp,P *cofp); |