=================================================================== RCS file: /home/cvs/OpenXM_contrib2/asir2000/engine/nd.c,v retrieving revision 1.39 retrieving revision 1.40 diff -u -p -r1.39 -r1.40 --- OpenXM_contrib2/asir2000/engine/nd.c 2003/08/21 03:13:01 1.39 +++ OpenXM_contrib2/asir2000/engine/nd.c 2003/08/21 04:44:36 1.40 @@ -1,4 +1,4 @@ -/* $OpenXM: OpenXM_contrib2/asir2000/engine/nd.c,v 1.38 2003/08/20 08:56:29 noro Exp $ */ +/* $OpenXM: OpenXM_contrib2/asir2000/engine/nd.c,v 1.39 2003/08/21 03:13:01 noro Exp $ */ #include "ca.h" #include "inline.h" @@ -15,11 +15,14 @@ #define REDTAB_LEN 32003 +/* GeoBucket for polynomial addition */ + typedef struct oPGeoBucket { int m; struct oND *body[32]; } *PGeoBucket; +/* distributed polynomial; linked list rep. */ typedef struct oND { struct oNM *body; int nv; @@ -27,6 +30,7 @@ typedef struct oND { int sugar; } *ND; +/* distributed polynomial; array rep. */ typedef struct oNDV { struct oNMV *body; int nv; @@ -34,6 +38,7 @@ typedef struct oNDV { int sugar; } *NDV; +/* monomial; linked list rep. */ typedef struct oNM { struct oNM *next; union { @@ -43,6 +48,7 @@ typedef struct oNM { unsigned int dl[1]; } *NM; +/* monomial; array rep. */ typedef struct oNMV { union { int m; @@ -51,6 +57,7 @@ typedef struct oNMV { unsigned int dl[1]; } *NMV; +/* history of reducer */ typedef struct oRHist { struct oRHist *next; int index; @@ -58,6 +65,7 @@ typedef struct oRHist { unsigned int dl[1]; } *RHist; +/* S-pair list */ typedef struct oND_pairs { struct oND_pairs *next; int i1,i2; @@ -85,7 +93,6 @@ RHist *nd_psh; int nd_psn,nd_pslen; RHist *nd_red; -int nd_red_len; int nd_found,nd_create,nd_notfirst; int nm_adv; @@ -94,6 +101,7 @@ int nd_dcomp; extern int Top,Reverse,dp_nelim; +/* fundamental macros */ #define TD(d) (d[0]) #define HDL(d) ((d)->body->dl) #define HTD(d) (TD(HDL(d))) @@ -106,13 +114,13 @@ extern int Top,Reverse,dp_nelim; #define LEN(a) ((a)->len) #define LCM(a) ((a)->lcm) +/* macros for term comparison */ #define TD_DL_COMPARE(d1,d2)\ (TD(d1)>TD(d2)?1:(TD(d1)