version 1.5, 2003/06/26 13:00:10 |
version 1.9, 2003/08/19 08:02:09 |
|
|
/* $OpenXM: OpenXM/src/kan96xx/Kan/datatype.h,v 1.4 2003/06/26 08:14:46 takayama Exp $ */ |
/* $OpenXM: OpenXM/src/kan96xx/Kan/datatype.h,v 1.8 2003/07/30 09:00:52 takayama Exp $ */ |
#include "gmp.h" |
#include "gmp.h" |
|
|
/* GC */ |
/* GC */ |
|
|
must be larger than AGLIMIT. They are automatically |
must be larger than AGLIMIT. They are automatically |
determined by the value of AGLIMIT. */ |
determined by the value of AGLIMIT. */ |
|
|
|
#define LARGE_NEGATIVE_NUMBER (-0x7fffffff) /* for 32 bit */ |
|
|
typedef struct listPoly * POLY; |
typedef struct listPoly * POLY; |
typedef struct monomial * MONOMIAL; |
typedef struct monomial * MONOMIAL; |
Line 160 struct polySet { |
|
Line 161 struct polySet { |
|
int *mark; /* if (mark[i]), then syz[i] is simplified. */ |
int *mark; /* if (mark[i]), then syz[i] is simplified. */ |
int *serial; /* serial[i]=k ===> g[i] is input[k] */ |
int *serial; /* serial[i]=k ===> g[i] is input[k] */ |
int size; /* size of this set. i.e., g[0], g[1], ..., g[size-1] */ |
int size; /* size of this set. i.e., g[0], g[1], ..., g[size-1] */ |
int lim; |
int lim; |
|
POLY *gh; /* gh[i] = homogenize(g[i]) for ecart division */ |
|
int *gen; /* gen[i] == 1 --> given generators */ |
|
POLY *gmod; /* gmod = g mod p for TraceLift. */ |
}; |
}; |
|
|
struct pair { |
struct pair { |