4 #if defined(__cplusplus)
8 #include <polylib/polylibgmp.h>
10 void value_lcm(Value i
, Value j
, Value
* lcm
);
11 int random_int(int max
);
12 Polyhedron
* Polyhedron_Polar(Polyhedron
*P
, unsigned NbMaxRays
);
13 void Polyhedron_Polarize(Polyhedron
*P
);
14 Polyhedron
* supporting_cone(Polyhedron
*P
, int v
);
15 Polyhedron
* supporting_cone_p(Polyhedron
*P
, Param_Vertices
*v
);
16 Polyhedron
* triangularize_cone(Polyhedron
*P
, unsigned NbMaxCons
);
17 void check_triangulization(Polyhedron
*P
, Polyhedron
*T
);
18 Polyhedron
*remove_equalities(Polyhedron
*P
);
19 Polyhedron
*remove_equalities_p(Polyhedron
*P
, unsigned nvar
, Matrix
**factor
);
20 void manual_count(Polyhedron
*P
, Value
* result
);
21 Polyhedron
* Polyhedron_Reduce(Polyhedron
*P
, Value
* factor
);
22 Matrix
* unimodular_complete(Vector
*row
);
23 Bool
isIdentity(Matrix
*M
);
24 void Param_Polyhedron_Print(FILE* DST
, Param_Polyhedron
*PP
, char **param_names
);
25 void Enumeration_Print(FILE *Dst
, Enumeration
*en
, char **params
);
26 void Enumeration_mod2table(Enumeration
*en
, unsigned nparam
);
27 size_t Enumeration_size(Enumeration
*en
);
28 void Free_ParamNames(char **params
, int m
);
29 int DomainIncludes(Polyhedron
*Pol1
, Polyhedron
*Pol2
);
30 int ConstraintSimplify(Value
*old
, Value
*n
, int len
, Value
* v
);
31 Polyhedron
*DomainConstraintSimplify(Polyhedron
*P
, unsigned MaxRays
);
32 int line_minmax(Polyhedron
*I
, Value
*min
, Value
*max
);
33 void count_points_e (int pos
, Polyhedron
*P
, int exist
, int nparam
,
34 Value
*context
, Value
*res
);
35 int DomainContains(Polyhedron
*P
, Value
*list_args
, int len
,
36 unsigned MaxRays
, int set
);
38 #include "ev_operations.h"
40 Polyhedron
* ParamPolyhedron_Reduce(Polyhedron
*P
, unsigned nvar
,
43 #if defined(__cplusplus)