6 #include <NTL/mat_ZZ.h>
8 #include <polylib/polylibgmp.h>
9 #include <barvinok/evalue.h>
17 struct __short_rat_n
{
18 /* rows: terms in numerator */
19 /* coeff has two columns: the numerator and the denominator */
23 struct __short_rat_d
{
24 /* rows: factors in denominator */
30 std::vector
< short_rat
* > term
;
33 void add(const ZZ
& cn
, const ZZ
& cd
, const vec_ZZ
& num
,
35 void substitute(Matrix
*CP
, const mat_ZZ
& map
, const vec_ZZ
& offset
);
36 void print(unsigned int nparam
, char **param_name
) const;
37 operator evalue
*() const;
38 void coefficient(Value
* params
, Value
* c
) const;
40 gen_fun(Polyhedron
*C
= NULL
) : context(C
) {}
43 Polyhedron_Free(context
);
44 for (int i
= 0; i
< term
.size(); ++i
)