version 1.3, 2000/02/24 00:27:12 |
version 1.9, 2020/10/06 11:33:46 |
|
|
/* $OpenXM: OpenXM/src/kan96xx/Kan/gradedset.h,v 1.2 2000/01/16 07:55:39 takayama Exp $ */ |
/* $OpenXM: OpenXM/src/kan96xx/Kan/gradedset.h,v 1.8 2005/06/16 06:54:55 takayama Exp $ */ |
/* gradedset.h */ |
/* gradedset.h */ |
#define max(a,b) (a>b?a:b) |
#define max(a,b) (a>b?a:b) |
|
|
Line 37 int countPairs(struct gradedPairs *grD); |
|
Line 37 int countPairs(struct gradedPairs *grD); |
|
int countGradedPolySet(struct gradedPolySet *grD); |
int countGradedPolySet(struct gradedPolySet *grD); |
struct gradedPolySet *gradedPolySetCopy(struct gradedPolySet *grG); |
struct gradedPolySet *gradedPolySetCopy(struct gradedPolySet *grG); |
int deletePairByCriterion2B(struct gradedPairs *grD,POLY gt,struct gradedPolySet *grG); |
int deletePairByCriterion2B(struct gradedPairs *grD,POLY gt,struct gradedPolySet *grG); |
|
int markGeneratorInG(struct gradedPolySet *g,int grade,int index); |
|
int clearGmod(struct gradedPolySet *g); |
|
|
/* red.c */ |
/* red.c */ |
struct spValue (*sp)(POLY f,POLY g); |
struct spValue (*sp)(POLY f,POLY g); |
|
struct spValue spZero(void); |
int (*isReducible)(POLY f,POLY g); |
int (*isReducible)(POLY f,POLY g); |
POLY (*reduction1)(POLY f,POLY g,int needSyz,POLY *cc,POLY *cg); |
POLY (*reduction1)(POLY f,POLY g,int needSyz,POLY *cc,POLY *cg); |
/* if needSyz, then result = *cc f + *cg g. */ |
/* if needSyz, then result = *cc f + *cg g. */ |
Line 76 POLY reductionCdr_except_grd_i(POLY f,struct gradedPol |
|
Line 79 POLY reductionCdr_except_grd_i(POLY f,struct gradedPol |
|
/* Polynomial at (grd,i) is not used for reduction. |
/* Polynomial at (grd,i) is not used for reduction. |
if del[j] == 1, then the attached polynomial is not used for reduction.*/ |
if del[j] == 1, then the attached polynomial is not used for reduction.*/ |
|
|
|
/* ecart.c */ |
|
POLY reduction_ecart(POLY f,struct gradedPolySet *gset, |
|
int needSyz,struct syz0 *syzp); |
|
|
/* constructor */ |
/* constructor */ |
POLY toSyzPoly(POLY cg,int grade,int index); |
POLY toSyzPoly(POLY cg,int grade,int index); |
struct coeff *toSyzCoeff(POLY f); |
struct coeff *toSyzCoeff(POLY f); |
Line 85 void initSyzRingp(void); |
|
Line 92 void initSyzRingp(void); |
|
struct gradedPolySet *(*groebner)(struct arrayOfPOLY *f, |
struct gradedPolySet *(*groebner)(struct arrayOfPOLY *f, |
int needBack, |
int needBack, |
int needSyz, struct pair **grP, |
int needSyz, struct pair **grP, |
int countDown,int forceReduction); |
int countDown,int forceReduction,int reduceOnly,int gbCheck); |
struct gradedPolySet *groebner_gen(struct arrayOfPOLY *f, |
struct gradedPolySet *groebner_gen(struct arrayOfPOLY *f, |
int needBack, |
int needBack, |
int needSyz, struct pair **grP, |
int needSyz, struct pair **grP, |
int countDown,int forceReduction); |
int countDown,int forceReduction,int reduceOnly,int gbCheck); |
struct gradedPairs *updatePairs(struct gradedPairs *grD, POLY gt, |
struct gradedPairs *updatePairs(struct gradedPairs *grD, POLY gt, |
int gtGrade, int t, |
int gtGrade, int t, |
struct gradedPolySet *grG); |
struct gradedPolySet *grG); |
Line 101 void toReducedBasis(struct gradedPolySet *grP,int need |
|
Line 108 void toReducedBasis(struct gradedPolySet *grP,int need |
|
struct gradedPolySet *groebner_gm(struct arrayOfPOLY *f, |
struct gradedPolySet *groebner_gm(struct arrayOfPOLY *f, |
int needBack, |
int needBack, |
int needSyz, struct pair **grP, |
int needSyz, struct pair **grP, |
int countDown,int forceReduction); |
int countDown,int forceReduction,int reduceOnly,int gbCheck); |
|
|
/* syz0 */ |
/* syz0 */ |
void simplifyBT(int grd,int index, struct gradedPolySet *grG); |
void simplifyBT(int grd,int index, struct gradedPolySet *grG); |
Line 144 void errorSyz0(char *s); |
|
Line 151 void errorSyz0(char *s); |
|
struct arrayOfPOLY *syzPolyToArrayOfPOLY(int size,POLY f, |
struct arrayOfPOLY *syzPolyToArrayOfPOLY(int size,POLY f, |
struct gradedPolySet *grG); |
struct gradedPolySet *grG); |
/* f is in SyzRingp. */ |
/* f is in SyzRingp. */ |
|
|
|
int criterion1(POLY f,POLY g,POLY lc); |
|
struct gradedPolySet *groebner_gen( |
|
struct arrayOfPOLY *f, |
|
int needBack, |
|
int needSyz, |
|
struct pair **grP, /* if (needSyz), it is set. */ |
|
int countDown, |
|
int forceReduction, |
|
int reduceOnly, |
|
int gbCheck); |
|
|
|
|
#define checkRingSp(f,g,r) {\ |
#define checkRingSp(f,g,r) {\ |