| 1 | #ifndef ISL_BOUND_H |
|---|---|
| 2 | #define ISL_BOUND_H |
| 3 | |
| 4 | #include <isl/polynomial.h> |
| 5 | |
| 6 | struct isl_bound { |
| 7 | /* input */ |
| 8 | int check_tight; |
| 9 | int wrapping; |
| 10 | enum isl_fold type; |
| 11 | isl_space *dim; |
| 12 | isl_basic_set *bset; |
| 13 | isl_qpolynomial_fold *fold; |
| 14 | |
| 15 | /* output */ |
| 16 | isl_pw_qpolynomial_fold *pwf; |
| 17 | isl_pw_qpolynomial_fold *pwf_tight; |
| 18 | }; |
| 19 | |
| 20 | __isl_give isl_pw_qpolynomial_fold *isl_qpolynomial_cst_bound( |
| 21 | __isl_take isl_basic_set *bset, __isl_take isl_qpolynomial *poly, |
| 22 | enum isl_fold type, isl_bool *tight); |
| 23 | |
| 24 | isl_stat isl_bound_add(struct isl_bound *bound, |
| 25 | __isl_take isl_pw_qpolynomial_fold *pwf); |
| 26 | isl_stat isl_bound_add_tight(struct isl_bound *bound, |
| 27 | __isl_take isl_pw_qpolynomial_fold *pwf); |
| 28 | |
| 29 | #endif |
| 30 |
