45static const char *
s_to[2] = {
" -> ",
" \\to " };
46static const char *
s_and[2] = {
" and ",
" \\wedge " };
47static const char *
s_or[2] = {
" or ",
" \\vee " };
48static const char *
s_le[2] = {
"<=",
"\\le" };
49static const char *
s_ge[2] = {
">=",
"\\ge" };
58static const char *
s_mod[2] = {
"mod",
"\\bmod" };
72 if (n_in < 0 || n_out < 0 || nparam < 0)
77 for (i = 0; i < n_out; ++i) {
81 for (i = 0; i < n_in; ++i) {
85 for (i = 0; i < bmap->
n_div; ++i) {
89 for (i = 0; i < nparam; ++i) {
106 for (i = 0; i < bmap->
n_eq; ++i)
108 for (i = 0; i < bmap->
n_ineq; ++i)
138 if (n_in < 0 || n_out < 0 || n_div < 0 || nparam < 0)
168 for (i = 0; i <
map->n; ++i) {
194 for (
p = 0;
p < s; ++
p) {
196 if (
n && !strcmp(
n,
name))
227 snprintf(buffer,
sizeof(buffer),
"%s%d", prefix,
pos);
247 if (n_in < 0 || n_out < 0 || nparam < 0)
250 if (*
pos < 1 + nparam) {
253 }
else if (*
pos < 1 + nparam + n_in) {
256 }
else if (*
pos < 1 + nparam + n_in + n_out) {
258 *
pos -= 1 + nparam + n_in;
261 *
pos -= 1 + nparam + n_in + n_out;
327 for (i = 0, first = 1; i < len; ++i) {
361 if (
total < 0 || n_div < 0)
363 len = 1 +
total + n_div;
377 offset += local_space->n_in;
382 for (i = 0; i < dim; ++i) {
410 const char *
name = NULL;
428 local_space->nested[local_type -
isl_dim_in]) {
430 offset += local_space->n_in;
466 if (rational && !data->
latex)
514 if (i + 1 >= bmap->n_ineq)
521 bmap->ineq[i + 1], last - o_div);
527 r =
isl_int_abs_eq(bmap->ineq[i][last], bmap->ineq[i + 1][last]) &&
528 !
isl_int_eq(bmap->ineq[i][last], bmap->ineq[i + 1][last]);
541 return sign < 0 ?
"<" :
">";
620 div->row[
pos] + 1, div->n_col - 1);
652 if (!
p || !
space || n_div < 0)
707 c[last], div->row[div_pos] + 1, last);
729 if (n_div < 0 || div_pos < 0)
802 for (i = bmap->n_eq - 1; i >= 0; --i) {
805 if (i != bmap->n_eq - 1)
819 for (i = 0; i < bmap->n_ineq; ++i) {
827 if (!dump && l >= o_div &&
831 bmap->ineq[i], l - o_div);
885 div->row[
pos] + 1, div->n_col - 1);
899 int print_defined_divs)
906 if (!
p || !
space || n_div < 0)
909 for (i = 0; i < n_div; ++i) {
943 for (i = 0; i <
n; ++i)
983 for (i = 0; i < n_div; ++i)
1005 if (exists >= 0 && exists)
1013 if (exists >= 0 && exists)
1065 for (i = 0; i <
map->n; ++i) {
1078 for (i = 0; i <
set->n; ++i) {
1095 if (!
p || nparam < 0)
1133 for (i = 0; i <
map->n; ++i) {
1136 if (
map->n > 1 &&
map->p[i]->n_eq +
map->p[i]->n_ineq > 1)
1139 if (
map->n > 1 &&
map->p[i]->n_eq +
map->p[i]->n_ineq > 1)
1163 if (is_universe < 0)
1198 if (!
p->dump &&
map->n >= 2) {
1204 if (is_universe < 0)
1206 else if (!is_universe)
1254 for (i = 0; i <
n; ++i) {
1276 if (n_in < 0 || n_out < 0 || nparam < 0 ||
total < 0)
1279 for (i = bmap->n_eq - 1; i >= 0; --i) {
1281 if (j >= nparam && j < nparam + n_in + n_out &&
1313 if (v_div < 0 || !
aff)
1316 for (i = bmap->n_eq - 1; i >= 0; --i) {
1320 for (j = 0; j <
aff->n_eq; ++j) {
1347 for (i = 0; i <
map->n; ++i) {
1363 for (i =
n - 1; i >= 1; --i) {
1395 for (i = 0; i < eq->n_eq; ++i) {
1444 for (i = 0; i <
n; ++i) {
1447 rational =
split[i].map->n > 0 &&
1468 if (!
p->dump &&
map->n > 0)
1473 rational =
map->n > 0 &&
1523 for (i = 0; i <
map->n; ++i) {
1664 return print_union_map_isl(
p, umap);
1669 "invalid output format for isl_union_map",
goto error);
1687 "invalid output format for isl_union_set",
goto error);
1701 for (i = 0,
n = 0; i < rec->n; ++i) {
1730 sgn == 0 ?
"NaN" :
"infty");
1768 for (i = 1; i < exp; ++i) {
1786 int i,
first, print_parens;
1792 if (!
p || is_cst < 0 || !space || !div)
1802 print_parens =
n > 1;
1805 for (i = 0,
first = 1; i < rec->
n; ++i) {
1811 if (is_zero < 0 || is_one < 0 || is_negone < 0)
1822 }
else if (is_cst && !is_one)
1827 if (i == 0 || !is_one)
1833 if (!is_one && !is_negone)
1921 "output format not supported for isl_qpolynomials",
1929 unsigned output_format)
1946 isl_qpolynomial_list *list;
1950 n = isl_qpolynomial_list_size(list);
1958 for (i = 0; i <
n; ++i) {
1963 qp = isl_qpolynomial_list_peek(list, i);
1971 FILE *out,
unsigned output_format)
1992 for (i = 0; i <
pwqp->n; ++i) {
2036 unsigned output_format)
2056 for (i = 0; i < pwf->n; ++i) {
2148 if (n_div < 0 ||
total < 0)
2154 for (i = 0; i < bset->n_eq; ++i) {
2158 bset->eq[i],
"==", &first);
2167 bset->eq[i][1 +
total + j]);
2172 for (i = 0; i < bset->n_ineq; ++i)
2189 for (i = 0; i <
set->n; ++i) {
2216 for (i = 0; i <
pwqp->n; ++i) {
2246#define BASE pw_qpolynomial
2256 return print_union_pw_qpolynomial_isl(
p, upwqp);
2258 "invalid output format for isl_union_pw_qpolynomial",
2273 isl_qpolynomial_list *list;
2277 n = isl_qpolynomial_list_size(list);
2280 for (i = 0; i <
n - 1; ++i)
2286 for (i = 0; i <
n; ++i) {
2291 qp = isl_qpolynomial_list_peek(list, i);
2330 for (i = 0; i < pwf->n; ++i) {
2360 FILE *out,
unsigned output_format)
2375#define BASE pw_qpolynomial_fold
2386 return print_union_pw_qpolynomial_fold_isl(
p, upwf);
2388 "invalid output format for isl_union_pw_qpolynomial_fold",
2419 if (exists >= 0 && exists)
2426 if (exists >= 0 && exists)
2472 "output format not supported for space",
2534 for (i =
n - 1; i >= 0; --i) {
2538 aff->ls->div->row[i][0]))
2792 for (i = 0, first = 1; i < len; ++i) {
2856 "cannot print empty isl_pw_aff in C format",
2893 return print_pw_aff_isl(
p, pwaff);
2918 return print_union_pw_aff_isl(
p, upa);
2938 space = isl_multi_aff_get_domain_space(
ma);
2997#define BASE multi_aff
3010 for (i = 0; i <
pma->n - 1; ++i) {
3032 "cannot print empty isl_pw_multi_aff in C format",
3038 if (!
name &&
n == 1)
3042 "cannot print unnamed isl_pw_multi_aff in C format",
3048 "not supported yet",
goto error);
3063 return print_pw_multi_aff_isl(
p,
pma);
3074#define BASE pw_multi_aff
3084 return print_union_pw_multi_aff_isl(
p, upma);
3117 space = isl_multi_pw_aff_get_domain_space(mpa);
3130 space = isl_multi_pw_aff_get_domain_space(mpa);
3131 for (i = 0; i < pa->
n; ++i) {
3269 space = isl_multi_id_peek_space(mi);
3309 upa = isl_multi_union_pw_aff_get_union_pw_aff(
mupa,
pos);
3310 p = print_body_union_pw_aff(
p, upa);
3338 space = isl_multi_union_pw_aff_get_space(
mupa);
__isl_null isl_aff * isl_aff_free(__isl_take isl_aff *aff)
__isl_null isl_union_pw_aff * isl_union_pw_aff_free(__isl_take isl_union_pw_aff *upa)
__isl_give isl_val * isl_aff_get_coefficient_val(__isl_keep isl_aff *aff, enum isl_dim_type type, int pos)
__isl_overload __isl_give isl_aff * isl_aff_scale_val(__isl_take isl_aff *aff, __isl_take isl_val *v)
__isl_give isl_val * isl_aff_get_denominator_val(__isl_keep isl_aff *aff)
isl_bool isl_aff_plain_is_zero(__isl_keep isl_aff *aff)
__isl_give isl_aff * isl_aff_set_coefficient_si(__isl_take isl_aff *aff, enum isl_dim_type type, int pos, int v)
__isl_give isl_aff * isl_aff_copy(__isl_keep isl_aff *aff)
isl_size isl_pw_multi_aff_dim(__isl_keep isl_pw_multi_aff *pma, enum isl_dim_type type)
__isl_give isl_space * isl_pw_multi_aff_get_domain_space(__isl_keep isl_pw_multi_aff *pma)
isl_size isl_aff_dim(__isl_keep isl_aff *aff, enum isl_dim_type type)
const char * isl_pw_multi_aff_get_tuple_name(__isl_keep isl_pw_multi_aff *pma, enum isl_dim_type type)
__isl_export __isl_give isl_aff * isl_aff_add(__isl_take isl_aff *aff1, __isl_take isl_aff *aff2)
__isl_give isl_aff * isl_aff_get_div(__isl_keep isl_aff *aff, int pos)
__isl_export __isl_give isl_set * isl_pw_aff_domain(__isl_take isl_pw_aff *pwaff)
__isl_give isl_pw_aff * isl_pw_aff_copy(__isl_keep isl_pw_aff *pwaff)
isl_bool isl_aff_is_nan(__isl_keep isl_aff *aff)
struct isl_union_pw_multi_aff isl_union_pw_multi_aff
struct isl_union_pw_aff isl_union_pw_aff
struct isl_multi_aff isl_multi_aff
struct isl_multi_pw_aff isl_multi_pw_aff
struct isl_multi_union_pw_aff isl_multi_union_pw_aff
__isl_null isl_ast_expr * isl_ast_expr_free(__isl_take isl_ast_expr *expr)
__isl_give isl_printer * isl_printer_print_ast_expr(__isl_take isl_printer *p, __isl_keep isl_ast_expr *expr)
__isl_export __isl_give isl_ast_build * isl_ast_build_from_context(__isl_take isl_set *set)
__isl_overload __isl_give isl_ast_expr * isl_ast_build_expr_from_pw_aff(__isl_keep isl_ast_build *build, __isl_take isl_pw_aff *pa)
__isl_null isl_ast_build * isl_ast_build_free(__isl_take isl_ast_build *build)
static __isl_give isl_basic_map * bset_to_bmap(__isl_take isl_basic_set *bset)
__isl_give isl_local_space * isl_constraint_get_local_space(__isl_keep isl_constraint *constraint)
isl_bool isl_constraint_is_equality(__isl_keep isl_constraint *constraint)
#define isl_die(ctx, errno, msg, code)
#define isl_assert(ctx, test, code)
isl_bool isl_bool_ok(int b)
#define isl_calloc_array(ctx, type, n)
#define ISL_F_ISSET(p, f)
isl_bool isl_bool_not(isl_bool b)
isl_stat isl_stat(*) void user)
__isl_give isl_printer * isl_printer_print_id(__isl_take isl_printer *p, __isl_keep isl_id *id)
struct isl_multi_id isl_multi_id
void GMPZAPI() neg(mp_int rop, mp_int op)
int GMPQAPI() sgn(mp_rat op)
isl_size isl_aff_domain_dim(__isl_keep isl_aff *aff, enum isl_dim_type type)
isl_bool isl_multi_pw_aff_has_non_trivial_domain(__isl_keep isl_multi_pw_aff *mpa)
isl_bool isl_multi_union_pw_aff_has_non_trivial_domain(__isl_keep isl_multi_union_pw_aff *mupa)
isl_size isl_aff_domain_offset(__isl_keep isl_aff *aff, enum isl_dim_type type)
static __isl_give isl_ast_expr * var(struct isl_ast_add_term_data *data, enum isl_dim_type type, int pos)
static int count(int *con, unsigned len, int status)
__isl_keep isl_qpolynomial_list * isl_qpolynomial_fold_peek_list(__isl_keep isl_qpolynomial_fold *fold)
#define isl_int_is_zero(i)
#define isl_int_is_one(i)
#define isl_int_is_negone(i)
__isl_give isl_printer * isl_printer_print_isl_int(__isl_take isl_printer *p, isl_int i)
#define isl_int_is_neg(i)
#define isl_int_neg(r, i)
#define isl_int_abs_eq(i, j)
#define isl_int_is_divisible_by(i, j)
#define isl_int_divexact(r, i, j)
#define isl_int_set_si(r, i)
#define isl_int_abs(r, i)
isl_bool isl_local_div_is_marked_unknown(__isl_keep isl_local *local, int pos)
isl_bool isl_local_space_is_div_constraint(__isl_keep isl_local_space *ls, isl_int *constraint, unsigned div)
unsigned isl_local_space_offset(__isl_keep isl_local_space *ls, enum isl_dim_type type)
__isl_give isl_local_space * isl_local_space_alloc_div(__isl_take isl_space *space, __isl_take isl_mat *div)
isl_size isl_basic_map_var_offset(__isl_keep isl_basic_map *bmap, enum isl_dim_type type)
__isl_give isl_basic_map * isl_basic_map_free_inequality(__isl_take isl_basic_map *bmap, unsigned n)
isl_bool isl_basic_map_plain_is_equal(__isl_keep isl_basic_map *bmap1, __isl_keep isl_basic_map *bmap2)
int isl_basic_map_drop_equality(__isl_keep isl_basic_map *bmap, unsigned pos)
unsigned isl_basic_map_offset(__isl_keep isl_basic_map *bmap, enum isl_dim_type type)
static unsigned pos(__isl_keep isl_space *space, enum isl_dim_type type)
__isl_give isl_basic_map * isl_basic_map_cow(__isl_take isl_basic_map *bmap)
__isl_give isl_mat * isl_basic_map_get_divs(__isl_keep isl_basic_map *bmap)
__isl_give isl_basic_map * isl_basic_map_sort_constraints(__isl_take isl_basic_map *bmap)
__isl_give isl_mat * isl_basic_set_get_divs(__isl_keep isl_basic_set *bset)
int isl_basic_map_plain_cmp(__isl_keep isl_basic_map *bmap1, __isl_keep isl_basic_map *bmap2)
__isl_give isl_basic_map * isl_basic_map_finalize(__isl_take isl_basic_map *bmap)
isl_bool isl_basic_map_is_div_constraint(__isl_keep isl_basic_map *bmap, isl_int *constraint, unsigned div)
__isl_give isl_map * isl_map_plain_gist_basic_map(__isl_take isl_map *map, __isl_take isl_basic_map *context)
#define ISL_BASIC_MAP_RATIONAL
static __isl_give isl_printer * print_pw_multi_aff_c(__isl_take isl_printer *p, __isl_keep isl_pw_multi_aff *pma)
static __isl_give isl_printer * isl_basic_map_print_isl(__isl_keep isl_basic_map *bmap, __isl_take isl_printer *p, int latex)
__isl_give isl_printer * isl_printer_print_basic_map(__isl_take isl_printer *p, __isl_keep isl_basic_map *bmap)
static __isl_give isl_printer * print_nested_tuple(__isl_take isl_printer *p, __isl_keep isl_space *local_space, enum isl_dim_type local_type, struct isl_print_space_data *data, int offset)
static const char * s_param_prefix[2]
__isl_give isl_printer * isl_printer_print_union_pw_multi_aff(__isl_take isl_printer *p, __isl_keep isl_union_pw_multi_aff *upma)
static __isl_give isl_printer * print_term(__isl_keep isl_space *space, __isl_keep isl_mat *div, isl_int c, unsigned pos, __isl_take isl_printer *p, int latex)
__isl_give isl_printer * isl_printer_print_basic_set(__isl_take isl_printer *p, __isl_keep isl_basic_set *bset)
static __isl_give isl_printer * print_dim_ma(__isl_take isl_printer *p, struct isl_print_space_data *data, unsigned pos)
void isl_pw_qpolynomial_print(__isl_keep isl_pw_qpolynomial *pwqp, FILE *out, unsigned output_format)
static __isl_give isl_printer * qpolynomial_fold_print(__isl_keep isl_qpolynomial_fold *fold, __isl_take isl_printer *p)
static __isl_give isl_printer * print_pw_aff_c(__isl_take isl_printer *p, __isl_keep isl_pw_aff *pwaff)
static const char * s_ge[2]
static __isl_give isl_printer * print_mod_term(__isl_take isl_printer *p, __isl_keep isl_space *space, __isl_keep isl_aff *aff, int first, __isl_take isl_val *c, __isl_keep isl_val *mod)
static __isl_give isl_printer * print_ls_affine_c(__isl_take isl_printer *p, __isl_keep isl_local_space *ls, isl_int *c)
static __isl_give isl_printer * print_body_pw_qpolynomial_fold(__isl_take isl_printer *p, __isl_keep isl_pw_qpolynomial_fold *pwf)
static const char * s_input_prefix[2]
static const char * s_open_set[2]
__isl_give isl_printer * isl_printer_print_multi_val(__isl_take isl_printer *p, __isl_keep isl_multi_val *mv)
static __isl_give isl_mat * mark_all_unknown(__isl_take isl_mat *div)
static __isl_give isl_printer * isl_map_print_polylib(__isl_keep isl_map *map, __isl_take isl_printer *p, int ext)
static __isl_give isl_printer * print_constraint_c(__isl_take isl_printer *p, __isl_keep isl_local_space *ls, isl_int *c, const char *op, int *first)
static __isl_give isl_printer * print_multi_union_pw_aff_isl(__isl_take isl_printer *p, __isl_keep isl_multi_union_pw_aff *mupa)
static __isl_give isl_printer * print_qpolynomial_fold_c(__isl_take isl_printer *p, __isl_keep isl_space *space, __isl_keep isl_qpolynomial_fold *fold)
static isl_size poly_rec_n_non_zero(__isl_keep isl_poly_rec *rec)
static const char * s_le[2]
static const char * s_open_list[2]
static __isl_give isl_printer * print_aff_num(__isl_take isl_printer *p, __isl_keep isl_space *space, __isl_keep isl_aff *aff)
static __isl_give isl_printer * isl_map_print_omega(__isl_keep isl_map *map, __isl_take isl_printer *p)
static __isl_give isl_printer * print_multi_pw_aff_isl(__isl_take isl_printer *p, __isl_keep isl_multi_pw_aff *mpa)
static isl_size count_same_name(__isl_keep isl_space *space, enum isl_dim_type type, unsigned pos, const char *name)
static __isl_give isl_printer * print_body_map(__isl_take isl_printer *p, __isl_keep isl_map *map)
static isl_stat print_latex_map_body(__isl_take isl_map *map, void *user)
__isl_give isl_printer * isl_printer_print_map(__isl_take isl_printer *p, __isl_keep isl_map *map)
__isl_give isl_printer * isl_printer_print_union_set(__isl_take isl_printer *p, __isl_keep isl_union_set *uset)
__isl_give isl_printer * isl_printer_print_local_space(__isl_take isl_printer *p, __isl_keep isl_local_space *ls)
static __isl_give isl_printer * print_split_map(__isl_take isl_printer *p, struct isl_aff_split *split, int n, __isl_keep isl_space *space)
static __isl_give isl_printer * print_param_tuple(__isl_take isl_printer *p, __isl_keep isl_space *space, struct isl_print_space_data *data)
static __isl_give isl_printer * basic_set_print_omega(__isl_keep isl_basic_set *bset, __isl_take isl_printer *p)
static __isl_give isl_printer * print_qpolynomial_c(__isl_take isl_printer *p, __isl_keep isl_space *space, __isl_keep isl_qpolynomial *qp)
__isl_give isl_printer * isl_printer_print_multi_union_pw_aff(__isl_take isl_printer *p, __isl_keep isl_multi_union_pw_aff *mupa)
static __isl_give isl_printer * print_multi_aff_isl(__isl_take isl_printer *p, __isl_keep isl_multi_aff *maff)
static __isl_give isl_printer * print_body_aff(__isl_take isl_printer *p, __isl_keep isl_aff *aff)
static __isl_give isl_printer * poly_print(__isl_keep isl_poly *poly, __isl_keep isl_space *space, __isl_keep isl_mat *div, __isl_take isl_printer *p)
static __isl_give isl_printer * print_constraints(__isl_keep isl_basic_map *bmap, __isl_keep isl_space *space, __isl_keep isl_mat *div, __isl_take isl_printer *p, int latex)
static __isl_give isl_printer * print_constraints_polylib(struct isl_basic_map *bmap, __isl_take isl_printer *p)
__isl_give isl_printer * isl_printer_print_union_pw_aff(__isl_take isl_printer *p, __isl_keep isl_union_pw_aff *upa)
static isl_bool next_is_opposite(__isl_keep isl_basic_map *bmap, int i, int last)
static __isl_give isl_printer * print_div_list(__isl_take isl_printer *p, __isl_keep isl_space *space, __isl_keep isl_mat *div, int latex, int print_defined_divs)
__isl_give isl_printer * isl_printer_print_constraint(__isl_take isl_printer *p, __isl_keep isl_constraint *c)
static __isl_give isl_printer * print_disjunct(__isl_keep isl_basic_map *bmap, __isl_keep isl_space *space, __isl_take isl_printer *p, int latex)
static __isl_give isl_printer * print_body_multi_aff(__isl_take isl_printer *p, __isl_keep isl_multi_aff *maff)
static __isl_give isl_printer * isl_map_print_isl(__isl_keep isl_map *map, __isl_take isl_printer *p)
__isl_give isl_printer * isl_printer_print_set(__isl_take isl_printer *p, __isl_keep isl_set *set)
__isl_give isl_printer * isl_printer_print_space(__isl_take isl_printer *p, __isl_keep isl_space *space)
__isl_give isl_printer * isl_printer_print_qpolynomial(__isl_take isl_printer *p, __isl_keep isl_qpolynomial *qp)
static __isl_give isl_printer * print_affine_of_len(__isl_keep isl_space *space, __isl_keep isl_mat *div, __isl_take isl_printer *p, isl_int *c, int len)
static isl_size print_as_modulo_pos(__isl_keep isl_printer *p, __isl_keep isl_space *space, __isl_keep isl_mat *div, unsigned pos, isl_int c)
static const char * s_close_set[2]
__isl_give isl_printer * isl_printer_print_pw_qpolynomial(__isl_take isl_printer *p, __isl_keep isl_pw_qpolynomial *pwqp)
static __isl_give isl_printer * print_qpolynomial(__isl_take isl_printer *p, __isl_keep isl_qpolynomial *qp)
static __isl_give isl_printer * isl_basic_map_print_polylib(__isl_keep isl_basic_map *bmap, __isl_take isl_printer *p, int ext)
static __isl_give isl_printer * poly_print_cst(__isl_keep isl_poly *poly, __isl_take isl_printer *p, int first)
static __isl_give struct isl_aff_split * split_aff(__isl_keep isl_map *map)
static __isl_give isl_printer * print_mod(__isl_take isl_printer *p, __isl_keep isl_space *space, __isl_keep isl_mat *div, int pos, int latex)
static __isl_give isl_printer * print_pw_qpolynomial_fold_c(__isl_take isl_printer *p, __isl_keep isl_pw_qpolynomial_fold *pwf)
static __isl_give isl_printer * print_disjuncts_set(__isl_keep isl_set *set, __isl_keep isl_space *space, __isl_take isl_printer *p, int latex)
static __isl_give isl_printer * print_constraint_polylib(struct isl_basic_map *bmap, int ineq, int n, __isl_take isl_printer *p)
void isl_qpolynomial_fold_print(__isl_keep isl_qpolynomial_fold *fold, FILE *out, unsigned output_format)
__isl_give isl_printer * isl_printer_print_qpolynomial_fold(__isl_take isl_printer *p, __isl_keep isl_qpolynomial_fold *fold)
static __isl_give isl_printer * print_nested_var_list(__isl_take isl_printer *p, __isl_keep isl_space *local_space, enum isl_dim_type local_type, struct isl_print_space_data *data, int offset)
static __isl_give isl_printer * isl_printer_print_union_set_isl_body(__isl_take isl_printer *p, __isl_keep isl_union_set *uset)
__isl_give isl_printer * isl_printer_print_aff(__isl_take isl_printer *p, __isl_keep isl_aff *aff)
static __isl_give isl_printer * isl_basic_set_print_polylib(__isl_keep isl_basic_set *bset, __isl_take isl_printer *p, int ext)
__isl_give isl_printer * isl_printer_print_multi_id(__isl_take isl_printer *p, __isl_keep isl_multi_id *mi)
static __isl_give isl_printer * print_ls_name_c(__isl_take isl_printer *p, __isl_keep isl_local_space *ls, enum isl_dim_type type, unsigned pos)
static const char * s_mod[2]
static __isl_give isl_printer * print_nested_map_dim(__isl_take isl_printer *p, __isl_keep isl_space *local_dim, struct isl_print_space_data *data, int offset)
static __isl_give isl_printer * open_exists(__isl_take isl_printer *p, __isl_keep isl_space *space, __isl_keep isl_mat *div, int latex)
static __isl_give isl_printer * print_disjuncts_map(__isl_keep isl_map *map, __isl_keep isl_space *space, __isl_take isl_printer *p, int latex)
static __isl_give isl_printer * print_tuple(__isl_keep isl_space *space, __isl_take isl_printer *p, enum isl_dim_type type, struct isl_print_space_data *data)
static __isl_give isl_basic_map * drop_aff(__isl_take isl_basic_map *bmap, __isl_keep isl_basic_map *aff)
static __isl_give isl_printer * print_disjuncts_core(__isl_keep isl_map *map, __isl_keep isl_space *space, __isl_take isl_printer *p, int latex)
__isl_give isl_printer * isl_printer_print_multi_pw_aff(__isl_take isl_printer *p, __isl_keep isl_multi_pw_aff *mpa)
static __isl_give isl_printer * print_var_list(__isl_take isl_printer *p, __isl_keep isl_space *space, enum isl_dim_type type)
__isl_give isl_printer * isl_printer_print_multi_aff(__isl_take isl_printer *p, __isl_keep isl_multi_aff *maff)
static __isl_give isl_basic_map * get_aff(__isl_take isl_basic_map *bmap)
static __isl_give isl_printer * isl_map_print_latex(__isl_keep isl_map *map, __isl_take isl_printer *p)
static __isl_give isl_printer * print_name(__isl_keep isl_space *space, __isl_take isl_printer *p, enum isl_dim_type type, unsigned pos, int latex)
static __isl_give isl_printer * print_pow(__isl_take isl_printer *p, __isl_keep isl_space *space, __isl_keep isl_mat *div, int var, int exp)
static __isl_give isl_printer * isl_printer_print_space_isl(__isl_take isl_printer *p, __isl_keep isl_space *space)
static __isl_give isl_printer * print_pw_qpolynomial_fold_isl(__isl_take isl_printer *p, __isl_keep isl_pw_qpolynomial_fold *pwf)
static __isl_give isl_printer * print_aff_num_mod(__isl_take isl_printer *p, __isl_keep isl_space *space, __isl_keep isl_aff *aff, unsigned last)
static __isl_give isl_printer * print_base(__isl_take isl_printer *p, __isl_keep isl_space *space, __isl_keep isl_mat *div, int var)
static const char * s_open_exists[2]
static __isl_give isl_printer * print_dim_mi(__isl_take isl_printer *p, struct isl_print_space_data *data, unsigned pos)
static __isl_give isl_printer * print_latex_map(__isl_keep isl_map *map, __isl_take isl_printer *p, __isl_keep isl_basic_map *aff)
static __isl_give isl_printer * isl_set_print_polylib(__isl_keep isl_set *set, __isl_take isl_printer *p, int ext)
static __isl_give isl_printer * print_unnamed_pw_multi_aff_c(__isl_take isl_printer *p, __isl_keep isl_pw_multi_aff *pma)
static const char * s_close_exists[2]
void isl_pw_qpolynomial_fold_print(__isl_keep isl_pw_qpolynomial_fold *pwf, FILE *out, unsigned output_format)
static __isl_give isl_printer * print_aff_isl(__isl_take isl_printer *p, __isl_keep isl_aff *aff)
static __isl_give isl_printer * print_dim_mv(__isl_take isl_printer *p, struct isl_print_space_data *data, unsigned pos)
static __isl_give isl_printer * print_set_c(__isl_take isl_printer *p, __isl_keep isl_space *space, __isl_keep isl_set *set)
static isl_bool can_print_div_expr(__isl_keep isl_printer *p, __isl_keep isl_mat *div, int pos)
static __isl_give isl_printer * print_pw_qpolynomial_c(__isl_take isl_printer *p, __isl_keep isl_pw_qpolynomial *pwqp)
static const char * constraint_op(int sign, int strict, int latex)
static const char * s_output_prefix[2]
static __isl_give isl_printer * print_aff_body(__isl_take isl_printer *p, __isl_keep isl_space *space, __isl_keep isl_aff *aff)
static const char * s_and[2]
static __isl_give isl_printer * print_ls_term_c(__isl_take isl_printer *p, __isl_keep isl_local_space *ls, isl_int c, unsigned pos)
static __isl_give isl_printer * print_union_pw_aff_dim(__isl_take isl_printer *p, struct isl_print_space_data *data, unsigned pos)
__isl_give isl_printer * isl_print_space(__isl_keep isl_space *space, __isl_take isl_printer *p, int rational, struct isl_print_space_data *data)
void isl_qpolynomial_print(__isl_keep isl_qpolynomial *qp, FILE *out, unsigned output_format)
static __isl_give isl_printer * print_disjuncts_in_hull(__isl_keep isl_map *map, __isl_keep isl_space *space, __isl_take isl_basic_map *hull, __isl_take isl_printer *p, int latex)
static __isl_give isl_printer * print_affine(__isl_take isl_printer *p, __isl_keep isl_space *space, __isl_keep isl_mat *div, isl_int *c)
__isl_give isl_printer * isl_printer_print_pw_qpolynomial_fold(__isl_take isl_printer *p, __isl_keep isl_pw_qpolynomial_fold *pwf)
static __isl_give isl_printer * print_aff_num_base(__isl_take isl_printer *p, __isl_keep isl_space *space, __isl_keep isl_aff *aff)
__isl_give isl_printer * isl_printer_print_pw_aff(__isl_take isl_printer *p, __isl_keep isl_pw_aff *pwaff)
static isl_stat pos2type(__isl_keep isl_space *space, enum isl_dim_type *type, unsigned *pos)
static int aff_split_cmp(const void *p1, const void *p2, void *user)
static const char * s_or[2]
static __isl_give isl_printer * print_multi_val_isl(__isl_take isl_printer *p, __isl_keep isl_multi_val *mv)
static __isl_give isl_printer * print_optional_disjunct(__isl_keep isl_basic_map *bmap, __isl_keep isl_space *space, __isl_take isl_printer *p, int latex)
__isl_give isl_printer * isl_printer_print_union_pw_qpolynomial(__isl_take isl_printer *p, __isl_keep isl_union_pw_qpolynomial *upwqp)
static __isl_give isl_printer * print_eq_mod_constraint(__isl_take isl_printer *p, __isl_keep isl_space *space, __isl_keep isl_mat *div, unsigned div_pos, isl_int *c, int last, int latex)
static __isl_give isl_printer * print_div(__isl_keep isl_space *space, __isl_keep isl_mat *div, int pos, __isl_take isl_printer *p)
static isl_bool need_exists(__isl_keep isl_printer *p, __isl_keep isl_mat *div)
static __isl_give isl_printer * print_basic_set_c(__isl_take isl_printer *p, __isl_keep isl_space *space, __isl_keep isl_basic_set *bset)
static __isl_give isl_printer * bset_print_constraints_polylib(struct isl_basic_set *bset, __isl_take isl_printer *p)
static __isl_give isl_printer * print_dim_mpa(__isl_take isl_printer *p, struct isl_print_space_data *data, unsigned pos)
static __isl_give isl_printer * print_ls_partial_affine_c(__isl_take isl_printer *p, __isl_keep isl_local_space *ls, isl_int *c, unsigned len)
static __isl_give isl_printer * print_multi_id_isl(__isl_take isl_printer *p, __isl_keep isl_multi_id *mi)
static __isl_give isl_printer * print_dim_eq(__isl_take isl_printer *p, struct isl_print_space_data *data, unsigned pos)
static __isl_give isl_printer * print_omega_parameters(__isl_keep isl_space *space, __isl_take isl_printer *p)
static const char * s_such_that[2]
static __isl_give isl_printer * print_constraint(__isl_take isl_printer *p, __isl_keep isl_space *space, __isl_keep isl_mat *div, isl_int *c, int last, const char *op, int latex)
static isl_size last_modulo(__isl_keep isl_printer *p, __isl_keep isl_aff *aff, unsigned n)
static __isl_give isl_printer * basic_map_print_omega(__isl_keep isl_basic_map *bmap, __isl_take isl_printer *p)
static const char * s_to[2]
static __isl_give isl_printer * print_eq_constraint(__isl_take isl_printer *p, __isl_keep isl_space *space, __isl_keep isl_mat *div, isl_int *c, int last, int latex)
static const char * s_div_prefix[2]
static __isl_give isl_printer * isl_set_print_omega(__isl_keep isl_set *set, __isl_take isl_printer *p)
static __isl_give isl_printer * isl_union_map_print_latex(__isl_keep isl_union_map *umap, __isl_take isl_printer *p)
__isl_give isl_printer * isl_printer_print_union_map(__isl_take isl_printer *p, __isl_keep isl_union_map *umap)
static __isl_give isl_printer * print_half_constraint(__isl_take isl_printer *p, __isl_keep isl_space *space, __isl_keep isl_mat *div, isl_int *c, int last, const char *op, int latex)
static __isl_give isl_printer * print_qpolynomial_isl(__isl_take isl_printer *p, __isl_keep isl_qpolynomial *qp)
static __isl_give isl_printer * print_body_pw_qpolynomial(__isl_take isl_printer *p, __isl_keep isl_pw_qpolynomial *pwqp)
static __isl_give isl_printer * print_aff_c(__isl_take isl_printer *p, __isl_keep isl_aff *aff)
static const char * s_close_list[2]
__isl_give isl_printer * isl_printer_print_union_pw_qpolynomial_fold(__isl_take isl_printer *p, __isl_keep isl_union_pw_qpolynomial_fold *upwf)
__isl_give isl_printer * isl_printer_print_pw_multi_aff(__isl_take isl_printer *p, __isl_keep isl_pw_multi_aff *pma)
static __isl_give isl_printer * print_pw_qpolynomial_isl(__isl_take isl_printer *p, __isl_keep isl_pw_qpolynomial *pwqp)
static int defining_equality(__isl_keep isl_basic_map *eq, __isl_keep isl_space *space, enum isl_dim_type type, int pos)
static void free_split(__isl_take struct isl_aff_split *split, int n)
static __isl_give isl_printer * print_disjuncts(__isl_keep isl_map *map, __isl_keep isl_space *space, __isl_take isl_printer *p, int latex)
__isl_keep isl_poly_cst * isl_poly_as_cst(__isl_keep isl_poly *poly)
__isl_keep isl_poly_rec * isl_poly_as_rec(__isl_keep isl_poly *poly)
isl_bool isl_poly_is_cst(__isl_keep isl_poly *poly)
__isl_give isl_val * isl_qpolynomial_get_den(__isl_keep isl_qpolynomial *qp)
isl_bool isl_poly_is_zero(__isl_keep isl_poly *poly)
isl_bool isl_poly_is_one(__isl_keep isl_poly *poly)
isl_bool isl_poly_is_negone(__isl_keep isl_poly *poly)
void isl_seq_combine(isl_int *dst, isl_int m1, isl_int *src1, isl_int m2, isl_int *src2, unsigned len)
int isl_seq_last_non_zero(isl_int *p, unsigned len)
int isl_seq_is_neg(isl_int *p1, isl_int *p2, unsigned len)
int isl_seq_first_non_zero(isl_int *p, unsigned len)
void isl_seq_cpy(isl_int *dst, isl_int *src, unsigned len)
int isl_seq_eq(isl_int *p1, isl_int *p2, unsigned len)
void isl_seq_neg(isl_int *dst, isl_int *src, unsigned len)
int isl_sort(void *const pbase, size_t total_elems, size_t size, int(*cmp)(const void *, const void *, void *arg), void *arg)
unsigned isl_space_offset(__isl_keep isl_space *space, enum isl_dim_type type)
static __isl_give isl_set * split(__isl_take isl_set *empty, __isl_take isl_set *min_expr, __isl_take isl_mat *cst)
__isl_give isl_val *(* op)(__isl_take isl_val *v)
static __isl_give isl_union_map * total(__isl_take isl_union_map *umap, __isl_give isl_map *(*fn)(__isl_take isl_map *))
isl_size isl_local_space_dim(__isl_keep isl_local_space *ls, enum isl_dim_type type)
__isl_null isl_local_space * isl_local_space_free(__isl_take isl_local_space *ls)
__isl_give isl_space * isl_local_space_get_space(__isl_keep isl_local_space *ls)
__isl_give isl_basic_map * isl_map_plain_unshifted_simple_hull(__isl_take isl_map *map)
__isl_export __isl_give isl_map * isl_map_union(__isl_take isl_map *map1, __isl_take isl_map *map2)
isl_bool isl_basic_map_plain_is_universe(__isl_keep isl_basic_map *bmap)
__isl_give isl_map * isl_map_copy(__isl_keep isl_map *map)
__isl_null isl_basic_map * isl_basic_map_free(__isl_take isl_basic_map *bmap)
isl_size isl_basic_map_dim(__isl_keep isl_basic_map *bmap, enum isl_dim_type type)
isl_bool isl_map_plain_is_universe(__isl_keep isl_map *map)
isl_ctx * isl_map_get_ctx(__isl_keep isl_map *map)
__isl_null isl_map * isl_map_free(__isl_take isl_map *map)
__isl_constructor __isl_give isl_map * isl_map_from_basic_map(__isl_take isl_basic_map *bmap)
__isl_give isl_basic_map * isl_basic_map_copy(__isl_keep isl_basic_map *bmap)
struct isl_basic_set isl_basic_set
isl_size isl_mat_rows(__isl_keep isl_mat *mat)
__isl_null isl_mat * isl_mat_free(__isl_take isl_mat *mat)
__isl_give isl_mat * isl_mat_set_element_si(__isl_take isl_mat *mat, int row, int col, int v)
__isl_give isl_space * isl_pw_qpolynomial_fold_get_domain_space(__isl_keep isl_pw_qpolynomial_fold *pwf)
__isl_give isl_space * isl_pw_qpolynomial_get_domain_space(__isl_keep isl_pw_qpolynomial *pwqp)
__isl_give isl_qpolynomial * isl_qpolynomial_copy(__isl_keep isl_qpolynomial *qp)
__isl_give isl_space * isl_qpolynomial_get_domain_space(__isl_keep isl_qpolynomial *qp)
__isl_null isl_qpolynomial * isl_qpolynomial_free(__isl_take isl_qpolynomial *qp)
__isl_give isl_qpolynomial * isl_qpolynomial_scale_val(__isl_take isl_qpolynomial *qp, __isl_take isl_val *v)
__isl_give isl_space * isl_qpolynomial_fold_get_domain_space(__isl_keep isl_qpolynomial_fold *fold)
struct isl_union_pw_qpolynomial_fold isl_union_pw_qpolynomial_fold
struct isl_union_pw_qpolynomial isl_union_pw_qpolynomial
#define ISL_FORMAT_POLYLIB
__isl_give isl_printer * isl_printer_print_int(__isl_take isl_printer *p, int i)
__isl_null isl_printer * isl_printer_free(__isl_take isl_printer *printer)
__isl_give isl_printer * isl_printer_set_isl_int_width(__isl_take isl_printer *p, int width)
__isl_give isl_printer * isl_printer_to_file(isl_ctx *ctx, FILE *file)
__isl_give isl_printer * isl_printer_print_str(__isl_take isl_printer *p, const char *s)
__isl_give isl_printer * isl_printer_start_line(__isl_take isl_printer *p)
isl_ctx * isl_printer_get_ctx(__isl_keep isl_printer *printer)
__isl_give isl_printer * isl_printer_end_line(__isl_take isl_printer *p)
__isl_give isl_printer * isl_printer_set_output_format(__isl_take isl_printer *p, int output_format)
#define ISL_FORMAT_POLYLIB_CONSTRAINTS
#define ISL_FORMAT_EXT_POLYLIB
isl_size isl_basic_set_dim(__isl_keep isl_basic_set *bset, enum isl_dim_type type)
isl_bool isl_set_plain_is_universe(__isl_keep isl_set *set)
__isl_null isl_space * isl_space_free(__isl_take isl_space *space)
isl_ctx * isl_space_get_ctx(__isl_keep isl_space *space)
__isl_give isl_space * isl_space_copy(__isl_keep isl_space *space)
isl_bool isl_space_has_dim_name(__isl_keep isl_space *space, enum isl_dim_type type, unsigned pos)
__isl_keep const char * isl_space_get_dim_name(__isl_keep isl_space *space, enum isl_dim_type type, unsigned pos)
isl_bool isl_space_is_params(__isl_keep isl_space *space)
__isl_keep const char * isl_space_get_tuple_name(__isl_keep isl_space *space, enum isl_dim_type type)
isl_size isl_space_dim(__isl_keep isl_space *space, enum isl_dim_type type)
isl_bool isl_space_is_set(__isl_keep isl_space *space)
__isl_export __isl_give isl_space * isl_space_domain(__isl_take isl_space *space)
__isl_give isl_printer *(* print_dim)(__isl_take isl_printer *p, struct isl_print_space_data *data, unsigned pos)
struct isl_pw_aff_piece p[1]
static void combine(std::vector< std::string > &vec1, const std::vector< std::string > &vec2)
static Signature set_to_map
__isl_export isl_stat isl_union_map_foreach_map(__isl_keep isl_union_map *umap, isl_stat(*fn)(__isl_take isl_map *map, void *user), void *user)
struct isl_union_set isl_union_set
static __isl_give isl_union_map * uset_to_umap(__isl_take isl_union_set *uset)
__isl_give isl_val * isl_val_copy(__isl_keep isl_val *v)
__isl_give isl_printer * isl_printer_print_val(__isl_take isl_printer *p, __isl_keep isl_val *v)
__isl_export __isl_give isl_val * isl_val_div(__isl_take isl_val *v1, __isl_take isl_val *v2)
__isl_export isl_bool isl_val_is_neg(__isl_keep isl_val *v)
__isl_null isl_val * isl_val_free(__isl_take isl_val *v)
__isl_export isl_bool isl_val_is_one(__isl_keep isl_val *v)
__isl_export __isl_give isl_val * isl_val_neg(__isl_take isl_val *v)
struct isl_multi_val isl_multi_val
__isl_null isl_vec * isl_vec_free(__isl_take isl_vec *vec)
__isl_give isl_vec * isl_vec_alloc(isl_ctx *ctx, unsigned size)