version 1.15, 2006/06/05 08:11:10 |
version 1.16, 2006/11/27 07:31:26 |
|
|
/* $OpenXM: OpenXM_contrib2/asir2000/engine/nd.h,v 1.14 2006/04/17 04:35:20 noro Exp $ */ |
/* $OpenXM: OpenXM_contrib2/asir2000/engine/nd.h,v 1.15 2006/06/05 08:11:10 noro Exp $ */ |
#include "ca.h" |
#include "ca.h" |
#include "parse.h" |
#include "parse.h" |
#include "ox.h" |
#include "ox.h" |
Line 48 typedef union oNDC { |
|
Line 48 typedef union oNDC { |
|
int m; |
int m; |
Q z; |
Q z; |
P p; |
P p; |
|
R r; |
DAlg a; |
DAlg a; |
} *NDC; |
} *NDC; |
|
|
Line 218 NODE append_one(NODE,int); |
|
Line 219 NODE append_one(NODE,int); |
|
/* manipulation of coefficients */ |
/* manipulation of coefficients */ |
void nd_removecont(int mod,ND p); |
void nd_removecont(int mod,ND p); |
void nd_removecont2(ND p1,ND p2); |
void nd_removecont2(ND p1,ND p2); |
void removecont_array(Q *c,int n); |
void removecont_array(P *c,int n); |
|
void removecont_array_q(Q *c,int n); |
|
|
/* GeoBucket functions */ |
/* GeoBucket functions */ |
ND normalize_pbucket(int mod,PGeoBucket g); |
ND normalize_pbucket(int mod,PGeoBucket g); |
Line 275 INLINE int ndl_hash_value(UINT *d); |
|
Line 277 INLINE int ndl_hash_value(UINT *d); |
|
/* normal forms */ |
/* normal forms */ |
INLINE int ndl_find_reducer(UINT *g); |
INLINE int ndl_find_reducer(UINT *g); |
int nd_sp(int mod,int trace,ND_pairs p,ND *nf); |
int nd_sp(int mod,int trace,ND_pairs p,ND *nf); |
int nd_nf(int mod,ND g,NDV *ps,int full,NDC dn,ND *nf); |
int nd_nf(int mod,ND d,ND g,NDV *ps,int full,NDC dn,ND *nf); |
int nd_nf_pbucket(int mod,ND g,NDV *ps,int full,ND *nf); |
int nd_nf_pbucket(int mod,ND g,NDV *ps,int full,ND *nf); |
|
|
/* finalizers */ |
/* finalizers */ |
Line 311 ND nd_dup(ND p); |
|
Line 313 ND nd_dup(ND p); |
|
/* ND functions */ |
/* ND functions */ |
int ndv_check_candidate(NODE input,int obpe,int oadv,EPOS oepos,NODE cand); |
int ndv_check_candidate(NODE input,int obpe,int oadv,EPOS oepos,NODE cand); |
void nd_mul_c(int mod,ND p,int mul); |
void nd_mul_c(int mod,ND p,int mul); |
void nd_mul_c_q(ND p,Q mul); |
void nd_mul_c_q(ND p,P mul); |
void nd_mul_c_p(VL vl,ND p,P mul); |
void nd_mul_c_p(VL vl,ND p,P mul); |
ND nd_remove_head(ND p); |
ND nd_remove_head(ND p); |
ND nd_separate_head(ND p,ND *head); |
ND nd_separate_head(ND p,ND *head); |