support for modulo calculations
[barvinok.git] / barvinok_enumerate.c
blob7ea3bacaab8ecf0dfe7f13ec661fae58396c96ae
1 #include <unistd.h>
2 #include <sys/times.h>
3 #include <polylib/polylibgmp.h>
4 #include "ev_operations.h"
5 #include <util.h>
6 #include <barvinok.h>
8 int main()
10 Polyhedron *A, *C;
11 Matrix *M;
12 Enumeration *en;
13 char **param_name;
15 M = Matrix_Read();
16 A = Constraints2Polyhedron(M, 600);
17 Matrix_Free(M);
18 M = Matrix_Read();
19 C = Constraints2Polyhedron(M, 600);
20 Matrix_Free(M);
21 Polyhedron_Print(stdout, P_VALUE_FMT, A);
22 Polyhedron_Print(stdout, P_VALUE_FMT, C);
23 param_name = Read_ParamNames(stdin, C->Dimension);
24 en = barvinok_enumerate(A, C, 600);
25 Enumeration_Print(stdout, en, param_name);
26 Enumeration_Free(en);
27 Free_ParamNames(param_name, C->Dimension);
28 Polyhedron_Free(A);
29 Polyhedron_Free(C);
30 return 0;