1 #include <polylib/polylibgmp.h>
3 #include <barvinok/evalue.h>
4 #include <barvinok/barvinok.h>
7 #ifdef HAVE_GROWING_CHERNIKOVA
13 int main(int argc
, char **argv
)
17 Polyhedron
*D
, *P
, *N
;
19 int exist
, nparam
, nvar
;
24 A
= Constraints2Polyhedron(M
, MAXRAYS
);
28 while ((*s
=='#') || (sscanf(s
, "E %d", &exist
)<1))
32 while ((*s
=='#') || (sscanf(s
, "P %d", &nparam
)<1))
35 Polyhedron_Print(stdout
, P_VALUE_FMT
, A
);
36 printf("exist: %d, nparam: %d\n", exist
, nparam
);
37 param_name
= Read_ParamNames(stdin
, nparam
);
39 nvar
= A
->Dimension
- exist
- nparam
;
40 D
= pip_projectout(A
, nvar
, exist
, nparam
);
43 evalue_set_si(&sum
, 0, 1);
44 for (P
= D
; P
; P
= N
) {
48 exist
= P
->Dimension
- nvar
- nparam
;
49 EP
= barvinok_enumerate_e(P
, exist
, nparam
, MAXRAYS
);
50 print_evalue(stderr
, EP
, param_name
);
53 print_evalue(stderr
, &sum
, param_name
);