4 #include <isl_polynomial.h>
6 #include <barvinok/evalue.h>
8 #if defined(__cplusplus)
12 __isl_give isl_pw_qpolynomial
*isl_set_card(__isl_take isl_set
*set
);
13 __isl_give isl_pw_qpolynomial
*isl_map_card(__isl_take isl_map
*map
);
14 __isl_give isl_pw_qpolynomial
*isl_pw_qpolynomial_sum(
15 __isl_take isl_pw_qpolynomial
*pwqp
);
17 #include <barvinok/options.h>
19 void barvinok_decompose(Polyhedron
*C
, Polyhedron
**ppos
, Polyhedron
**pneg
);
20 void barvinok_count(Polyhedron
*P
, Value
* result
, unsigned NbMaxCons
);
21 void barvinok_count_with_options(Polyhedron
*P
, Value
* result
,
22 struct barvinok_options
*options
);
23 Enumeration
* barvinok_enumerate(Polyhedron
*P
, Polyhedron
* C
, unsigned MaxRays
);
24 evalue
* barvinok_enumerate_ev(Polyhedron
*P
, Polyhedron
* C
, unsigned MaxRays
);
25 evalue
* barvinok_enumerate_with_options(Polyhedron
*P
, Polyhedron
* C
,
26 struct barvinok_options
*options
);
27 evalue
*Param_Polyhedron_Enumerate(Param_Polyhedron
*PP
, Polyhedron
*P
,
29 struct barvinok_options
*options
);
30 evalue
* barvinok_enumerate_e(Polyhedron
*P
,
31 unsigned exist
, unsigned nparam
, unsigned MaxRays
);
32 evalue
* barvinok_enumerate_e_with_options(Polyhedron
*P
,
33 unsigned exist
, unsigned nparam
, struct barvinok_options
*options
);
34 evalue
*barvinok_enumerate_isl(Polyhedron
*P
,
35 unsigned exist
, unsigned nparam
, struct barvinok_options
*options
);
36 evalue
*barvinok_enumerate_scarf(Polyhedron
*P
,
37 unsigned exist
, unsigned nparam
,
38 struct barvinok_options
*options
);
39 evalue
* barvinok_enumerate_union(Polyhedron
*D
, Polyhedron
* C
, unsigned MaxRays
);
41 evalue
*barvinok_summate(evalue
*e
, int nvar
, struct barvinok_options
*options
);
43 #if defined(__cplusplus)
47 #if defined(__cplusplus)
49 #include <barvinok/genfun.h>
51 void zz2value(const ZZ
& z
, Value
& v
);
52 gen_fun
* barvinok_series(Polyhedron
*P
, Polyhedron
* C
, unsigned MaxRays
);
53 gen_fun
* barvinok_series_with_options(Polyhedron
*P
, Polyhedron
* C
,
54 barvinok_options
*options
);
55 gen_fun
*barvinok_enumerate_series(Polyhedron
*P
, unsigned nparam
,
56 barvinok_options
*options
);
57 gen_fun
*barvinok_enumerate_scarf_series(Polyhedron
*P
,
58 unsigned exist
, unsigned nparam
,
59 barvinok_options
*options
);
60 gen_fun
*barvinok_enumerate_e_series(Polyhedron
*P
,
61 unsigned exist
, unsigned nparam
, barvinok_options
*options
);
62 gen_fun
* barvinok_enumerate_union_series(Polyhedron
*D
, Polyhedron
* C
,
64 gen_fun
* barvinok_enumerate_union_series_with_options(Polyhedron
*D
, Polyhedron
* C
,
65 barvinok_options
*options
);