version 1.50, 2004/07/13 07:59:53 |
version 1.52, 2004/10/06 11:58:52 |
|
|
* 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.49 2004/05/14 06:02:54 noro Exp $ |
* $OpenXM: OpenXM_contrib2/asir2000/include/ca.h,v 1.51 2004/08/18 00:17:02 noro Exp $ |
*/ |
*/ |
#include <stdio.h> |
#include <stdio.h> |
#include <stdlib.h> |
#include <stdlib.h> |
Line 164 typedef struct oN { |
|
Line 164 typedef struct oN { |
|
unsigned int b[1]; |
unsigned int b[1]; |
} *N; |
} *N; |
|
|
|
typedef struct oZ { |
|
int p; |
|
unsigned int b[1]; |
|
} *Z; |
|
|
typedef struct oUP2 { |
typedef struct oUP2 { |
int w; |
int w; |
unsigned int b[1]; |
unsigned int b[1]; |
Line 774 bzero((char *)(q)->b,(w)*sizeof(unsigned int))) |
|
Line 779 bzero((char *)(q)->b,(w)*sizeof(unsigned int))) |
|
((d)=(DL)MALLOC_ATOMIC(TRUESIZE(oDL,(n)-1,int))) |
((d)=(DL)MALLOC_ATOMIC(TRUESIZE(oDL,(n)-1,int))) |
|
|
#define MKP(v,dc,p) \ |
#define MKP(v,dc,p) \ |
(!DEG(dc)?((p)=COEF(dc)):(NEWP(p),VR(p)=(v),DC(p)=(dc),(p))) |
((!DEG(dc)&&!NEXT(dc))?((p)=COEF(dc)):(NEWP(p),VR(p)=(v),DC(p)=(dc),(p))) |
#define MKV(v,p) \ |
#define MKV(v,p) \ |
(NEWP(p),VR(p)=(v),NEWDC(DC(p)),\ |
(NEWP(p),VR(p)=(v),NEWDC(DC(p)),\ |
DEG(DC(p))=ONE,COEF(DC(p))=(P)ONE,NEXT(DC(p))=0) |
DEG(DC(p))=ONE,COEF(DC(p))=(P)ONE,NEXT(DC(p))=0) |
Line 856 PL(NM(q))=1,BD(NM(q))[0]=(unsigned int)(n),DN(q)=0,(q) |
|
Line 861 PL(NM(q))=1,BD(NM(q))[0]=(unsigned int)(n),DN(q)=0,(q) |
|
#define MKAlg(b,r) \ |
#define MKAlg(b,r) \ |
(!(b)?((r)=0):NUM(b)?((r)=(Alg)(b)):(NEWAlg(r),BDY(r)=(Obj)(b),(r))) |
(!(b)?((r)=0):NUM(b)?((r)=(Alg)(b)):(NEWAlg(r),BDY(r)=(Obj)(b),(r))) |
|
|
|
#define IMM_MAX 1073741823 |
|
#define IMM_MIN -1073741823 |
|
|
|
#define SL(n) ((n)->p) |
|
#define ZALLOC(d) ((Z)MALLOC_ATOMIC(TRUESIZE(oZ,(d)-1,int))) |
|
|
#if defined(PARI) |
#if defined(PARI) |
#define ToReal(a) (!(a)?(double)0.0:REAL(a)?BDY((Real)a):RATN(a)?RatnToReal((Q)a):BIGFLOAT(a)?rtodbl(BDY((BF)a)):0) |
#define ToReal(a) (!(a)?(double)0.0:REAL(a)?BDY((Real)a):RATN(a)?RatnToReal((Q)a):BIGFLOAT(a)?rtodbl(BDY((BF)a)):0) |
#else |
#else |
Line 2486 void afctrmain(VL vl,P p0,P p,int init,DCP *dcp); |
|
Line 2497 void afctrmain(VL vl,P p0,P p,int init,DCP *dcp); |
|
int divtmp(VL vl,int mod,P p1,P p2,P *q); |
int divtmp(VL vl,int mod,P p1,P p2,P *q); |
int divtdcmp(VL vl,int mod,P p1,P p2,P *q); |
int divtdcmp(VL vl,int mod,P p1,P p2,P *q); |
void GC_gcollect(); |
void GC_gcollect(); |
|
|
|
Z stoz(int c); |
|
Z utoz(unsigned int c); |
|
Z qtoz(Q n); |
|
Q ztoq(Z n); |
|
Z chsgnz(Z n); |
|
Z simpz(Z n); |
|
Z dupz(Z n); |
|
Z absz(Z n); |
|
Z addz(Z n1,Z n2); |
|
Z subz(Z n1,Z n2); |
|
Z mulz(Z n1,Z n2); |
|
Z divsz(Z n1,Z n2); |
|
Z divz(Z n1,Z n2,Z *rem); |
|
Z gcdz(Z n1,Z n2); |
|
Z gcdz_cofactor(Z n1,Z n2,Z *c1,Z *c2); |
|
Z estimate_array_gcdz(Z *a,int n); |
|
Z array_gcdz(Z *a,int n); |
|
void mkwcz(int k,int l,Z *t); |
|
int remzi(Z n,int m); |
|
|
|
|
#if 0 && !defined(VISUAL) |
#if 0 && !defined(VISUAL) |
void bzero(const void *,int); |
void bzero(const void *,int); |