| version 1.3, 2000/05/24 15:31:29 |
version 1.5, 2000/07/26 02:21:30 |
|
|
| /* $OpenXM: OpenXM/src/kan96xx/Kan/resol.c,v 1.2 2000/01/16 07:55:41 takayama Exp $ */ |
/* $OpenXM: OpenXM/src/kan96xx/Kan/resol.c,v 1.4 2000/06/26 11:15:04 takayama Exp $ */ |
| /* resol.c */ |
/* resol.c */ |
| #include <stdio.h> |
#include <stdio.h> |
| #include "datatype.h" |
#include "datatype.h" |
| Line 46 struct arrayOfMonomialSyz enlargeArrayOfMonomialSyz(st |
|
| Line 46 struct arrayOfMonomialSyz enlargeArrayOfMonomialSyz(st |
|
| static struct arrayOfMonomialSyz schreyerSkelton0(struct arrayOfPOLY g,int i) |
static struct arrayOfMonomialSyz schreyerSkelton0(struct arrayOfPOLY g,int i) |
| /* return value will be changed by the next call of this function. */ |
/* return value will be changed by the next call of this function. */ |
| { |
{ |
| int m,j,k; |
int m,j,k,flag; |
| static int s_ij_size = 0; |
static int s_ij_size = 0; |
| static struct monomialSyz **s_ij = NULL; |
static struct monomialSyz **s_ij = NULL; |
| struct monomialSyz *s; |
struct monomialSyz *s; |
| Line 75 static struct arrayOfMonomialSyz schreyerSkelton0(stru |
|
| Line 75 static struct arrayOfMonomialSyz schreyerSkelton0(stru |
|
| } |
} |
| shellForMonomialSyz(s_ij,m-i-1); |
shellForMonomialSyz(s_ij,m-i-1); |
| if (RemoveRedundantInSchreyerSkelton) { |
if (RemoveRedundantInSchreyerSkelton) { |
| for (j=0; j<m-i-1;j++) { |
do { |
| s = s_ij[j]; |
flag = 0; |
| if (s->deleted != 1) { |
for (j=0; j<m-i-1;j++) { |
| for (k=j+1; k<m-i-1; k++) { |
if (s_ij[j]->deleted != 1) { |
| if (s_ij[k]->deleted != 1) { |
for (k=0; k<m-i-1;k++) { |
| if ((*isReducible)(s_ij[k]->a,s->a)) s_ij[k]->deleted = 1; |
if ((j != k) && (s_ij[k]->deleted != 1)) { |
| } |
if ((*isReducible)(s_ij[k]->a,s_ij[j]->a)) { |
| } |
s_ij[k]->deleted = 1; |
| } |
flag = 1; |
| } |
} |
| |
} |
| |
} |
| |
} |
| |
} |
| |
}while (flag); |
| } |
} |
| ans.size = m-i-1; |
ans.size = m-i-1; |
| ans.limit = s_ij_size; |
ans.limit = s_ij_size; |