1 /*
2  * Copyright 2008-2009 Katholieke Universiteit Leuven
3  *
4  * Use of this software is governed by the MIT license
5  *
6  * Written by Sven Verdoolaege, K.U.Leuven, Departement
7  * Computerwetenschappen, Celestijnenlaan 200A, B-3001 Leuven, Belgium
8  */
9 
10 #ifndef ISL_ILP_H
11 #define ISL_ILP_H
12 
13 #include <isl/aff_type.h>
14 #include <isl/set_type.h>
15 #include <isl/union_set_type.h>
16 #include <isl/val_type.h>
17 #include <isl/vec.h>
18 
19 #if defined(__cplusplus)
20 extern "C" {
21 #endif
22 
23 __isl_give isl_val *isl_basic_set_max_val(__isl_keep isl_basic_set *bset,
24 	__isl_keep isl_aff *obj);
25 __isl_export
26 __isl_give isl_val *isl_set_min_val(__isl_keep isl_set *set,
27 	__isl_keep isl_aff *obj);
28 __isl_export
29 __isl_give isl_val *isl_set_max_val(__isl_keep isl_set *set,
30 	__isl_keep isl_aff *obj);
31 __isl_give isl_multi_val *isl_union_set_min_multi_union_pw_aff(
32 	__isl_keep isl_union_set *uset, __isl_keep isl_multi_union_pw_aff *obj);
33 
34 __isl_give isl_val *isl_union_pw_aff_min_val(__isl_take isl_union_pw_aff *upa);
35 __isl_give isl_val *isl_union_pw_aff_max_val(__isl_take isl_union_pw_aff *upa);
36 
37 __isl_give isl_multi_val *isl_multi_union_pw_aff_min_multi_val(
38 	__isl_take isl_multi_union_pw_aff *mupa);
39 __isl_give isl_multi_val *isl_multi_union_pw_aff_max_multi_val(
40 	__isl_take isl_multi_union_pw_aff *mupa);
41 
42 __isl_export
43 __isl_give isl_val *isl_basic_set_dim_max_val(__isl_take isl_basic_set *bset,
44 	int pos);
45 
46 #if defined(__cplusplus)
47 }
48 #endif
49 
50 #endif
51