36#define TYPE isl_union_map
77 "can only reference parameters",
return NULL);
91 if (uset->table.n != 1)
172 return umap ? umap->dim->ctx : NULL;
177 return uset ? uset->dim->ctx : NULL;
184 return umap ? umap->dim : NULL;
305 if (equal_params < 0)
348 if (!umap1 || !umap2)
448 if (reserve && isl_union_map_check_single_reference(umap) < 0)
663 isl_map_list **list =
user;
665 *list = isl_map_list_add(*list,
map);
688 list = isl_map_list_alloc(ctx, n_maps);
691 list = isl_map_list_free(list);
748 "union map needs to contain elements in exactly "
749 "one space",
goto error);
947 if (empty < 0 || empty) {
980 if (
data->control->filter) {
982 if (
res.valid < 0 || !
res.valid)
989 space =
data->control->match_space(space);
994 if (
res.valid >= 0 &&
res.valid)
1013 isl_maybe_isl_map
m;
1043 if (!umap1 || !
umap2)
1144 if (is_universe < 0)
1225 if (!umap1 || !
umap2)
1263 if (p1 < 0 || p2 < 0)
1620 data->
fn, data) < 0)
1635 if (!umap1 || !
umap2)
1992 else if (control->
fn_map != NULL)
2024 "at most one mapping function can be specified",
2028 "inplace/total modification cannot be filtered",
2042 &umap->table, &
un_entry, &data) < 0)
2057 return un_op(uset, &control);
2084 return un_op(umap, &control);
2125 return un_op(uset, &control);
2176 return un_op(umap, &control);
2273 return un_op(umap, &control);
2286 return un_op(umap, &control);
2298 .filter_user = &data,
2301 return un_op(umap, &control);
2340 return un_op(umap, &control);
2348 return un_op(umap, &control);
2357 return un_op(umap, &control);
2399 return un_op(umap, &control);
2411 .filter_user = &data,
2414 return un_op(uset, &control);
2430 return un_op(umap, &control);
2440 return un_op(umap, &control);
2448 return un_op(uset, &control);
2492 .filter_user = &data,
2495 return un_op(umap, &control);
2507 .filter_user = &data,
2510 return un_op(umap, &control);
2522 .filter_user = &data,
2525 return un_op(umap, &control);
2537 .filter_user = &data,
2540 return un_op(umap, &control);
2552 .filter_user = &data,
2555 return un_op(umap, &control);
2567 .filter_user = &data,
2570 return un_op(umap, &control);
2578 .filter_user = &data,
2581 return un_op(uset, &control);
2589 return un_op(umap, &control);
2619 if (
data->is_subset < 0 || !
data->is_subset)
2630 if (!umap1 || !
umap2)
2653 if (!umap1 || !
umap2)
2673 if (!umap1 || !
umap2)
2716 if (
data->is_disjoint < 0 || !
data->is_disjoint)
2736 if (!umap1 || !
umap2)
2984 }
else if (
n == 1) {
2996 if (data->
sv < 0 || !data->
sv)
3069 if (*non_identity < 0 || *non_identity)
3088 &non_identity) < 0 &&
3092 return non_identity;
3126 if (non_identity < 0 || non_identity)
3157 for (i = 0; i <
n; ++i)
3168 for (i = 0; i <
n; ++i)
3201 &data->
v[data->
n++].
v);
3205 int first,
int n_range);
3227 for (i = 0; i + 1 <
n; ++i) {
3232 for (j = i + 1; j <
n; ++j)
3240 for (k = i; k < j; ++k)
3269 int first,
int n_range)
3286 if (first >= n_range) {
3295 for (data.
pos = first; data.
pos < n_range; ++data.
pos) {
3385 .filter_user = &data,
3388 return un_op(umap, &control);
3399 .filter_user = &data,
3402 return un_op(umap, &control);
3413 .filter_user = &data,
3416 return un_op(umap, &control);
3428 .filter_user = &data,
3431 return un_op(umap, &control);
3439 return un_op(uset, &control);
3505 if (uset->table.n == 0) {
3586 if (empty < 0 || empty) {
3758 map = data->
fn(
map, isl_multi_pw_aff_copy(data->
mpa));
3761 if (empty < 0 || empty) {
3788 isl_multi_pw_aff_get_space(
mpa));
3796 data.
space = isl_multi_pw_aff_get_space(
mpa);
3807 isl_multi_pw_aff_free(
mpa);
3811 isl_multi_pw_aff_free(
mpa);
4016 "can only project out parameters",
4031#define TYPE isl_union_map
4159 if (dim1 < 0 || dim2 < 0)
4276 if (non_trivial < 0)
4280 mupa = isl_multi_union_pw_aff_copy(
mupa);
4283 if (is_params < 0) {
4311 isl_multi_union_pw_aff_get_space(
mupa));
4312 mupa = isl_multi_union_pw_aff_align_params(
mupa,
4321 isl_multi_union_pw_aff_free(
mupa);
4364 n = isl_union_set_list_n_union_set(list);
4368 ctx = isl_union_set_list_get_ctx(list);
4372 for (i = 0; i <
n; ++i) {
4375 uset_i = isl_union_set_list_get_union_set(list, i);
4379 isl_union_set_list_free(list);
4382 isl_union_set_list_free(list);
4390 uint32_t *hash =
user;
4457 *list = isl_basic_set_list_concat(*list, list_i);
4483 list = isl_basic_set_list_alloc(ctx,
n);
4485 list = isl_basic_set_list_free(list);
4529 .filter_user = &data,
4532 return un_op(umap, &control);
4571 .filter_user = isl_multi_id_peek_space(
tuple),
4573 .fn_map2_user =
tuple,
4578 isl_multi_id_free(
tuple);
4589 .filter_user = space,
4592 umap =
un_op(umap, &control);
4604 .filter_user = space,
4607 umap =
un_op(umap, &control);
__isl_constructor __isl_give isl_pw_multi_aff * isl_pw_multi_aff_from_multi_aff(__isl_take isl_multi_aff *ma)
__isl_export __isl_give isl_space * isl_pw_multi_aff_get_space(__isl_keep isl_pw_multi_aff *pma)
__isl_null isl_union_pw_multi_aff * isl_union_pw_multi_aff_free(__isl_take isl_union_pw_multi_aff *upma)
__isl_give isl_pw_multi_aff * isl_pw_multi_aff_align_params(__isl_take isl_pw_multi_aff *pma, __isl_take isl_space *model)
__isl_export __isl_give isl_multi_aff * isl_multi_aff_domain_map(__isl_take isl_space *space)
__isl_export __isl_give isl_pw_multi_aff * isl_pw_multi_aff_intersect_domain(__isl_take isl_pw_multi_aff *pma, __isl_take isl_set *set)
__isl_export __isl_give isl_union_set * isl_multi_union_pw_aff_domain(__isl_take isl_multi_union_pw_aff *mupa)
__isl_give isl_multi_pw_aff * isl_multi_union_pw_aff_extract_multi_pw_aff(__isl_keep isl_multi_union_pw_aff *mupa, __isl_take isl_space *space)
__isl_give isl_map * isl_multi_pw_aff_eq_map(__isl_take isl_multi_pw_aff *mpa1, __isl_take isl_multi_pw_aff *mpa2)
isl_stat isl_union_pw_multi_aff_foreach_pw_multi_aff(__isl_keep isl_union_pw_multi_aff *upma, isl_stat(*fn)(__isl_take isl_pw_multi_aff *pma, void *user), void *user)
__isl_give isl_union_pw_multi_aff * isl_union_pw_multi_aff_empty(__isl_take isl_space *space)
__isl_give isl_union_pw_multi_aff * isl_union_pw_multi_aff_add_pw_multi_aff(__isl_take isl_union_pw_multi_aff *upma, __isl_take isl_pw_multi_aff *pma)
__isl_null isl_pw_multi_aff * isl_pw_multi_aff_free(__isl_take isl_pw_multi_aff *pma)
__isl_give isl_pw_multi_aff * isl_pw_multi_aff_copy(__isl_keep isl_pw_multi_aff *pma)
__isl_give isl_pw_multi_aff * isl_pw_multi_aff_identity(__isl_take isl_space *space)
__isl_give isl_pw_multi_aff * isl_pw_multi_aff_alloc(__isl_take isl_set *set, __isl_take isl_multi_aff *maff)
struct isl_union_pw_multi_aff isl_union_pw_multi_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
static __isl_give isl_basic_set * bset_from_bmap(__isl_take isl_basic_map *bmap)
#define isl_calloc_type(ctx, type)
#define isl_die(ctx, errno, msg, code)
isl_bool isl_bool_ok(int b)
#define isl_calloc_array(ctx, type, n)
isl_bool isl_bool_not(isl_bool b)
#define isl_hash_hash(h, h2)
void isl_hash_table_clear(struct isl_hash_table *table)
struct isl_hash_table_entry * isl_hash_table_entry_none
int isl_hash_table_init(struct isl_ctx *ctx, struct isl_hash_table *table, int min_size)
isl_stat isl_hash_table_foreach(isl_ctx *ctx, struct isl_hash_table *table, isl_stat(*fn)(void **entry, void *user), void *user)
struct isl_hash_table_entry * isl_hash_table_find(struct isl_ctx *ctx, struct isl_hash_table *table, uint32_t key_hash, isl_bool(*eq)(const void *entry, const void *val), const void *val, int reserve)
__isl_export __isl_give ISL_HMAP __isl_take ISL_KEY __isl_take ISL_VAL * val
isl_stat isl_stat(* fn)(__isl_take ISL_KEY *key, __isl_take ISL_VAL *val, void *user)
isl_stat isl_stat(*) void user)
isl_bool isl_bool(* test)(__isl_keep ISL_KEY *key, __isl_keep ISL_VAL *val, void *user)
struct isl_multi_id isl_multi_id
isl_bool isl_multi_union_pw_aff_has_non_trivial_domain(__isl_keep isl_multi_union_pw_aff *mupa)
__isl_give isl_basic_set * isl_set_combined_lineality_space(__isl_take isl_set *set)
#define isl_int_cmp(i, j)
__isl_give dup(__isl_keep LIST(EL) *list)
__isl_give isl_map * isl_map_reset_space(__isl_take isl_map *map, __isl_take isl_space *space)
static unsigned pos(__isl_keep isl_space *space, enum isl_dim_type type)
isl_bool isl_map_has_space_tuples(__isl_keep isl_map *map, __isl_keep isl_space *space)
__isl_give isl_map * isl_map_realign(__isl_take isl_map *map, __isl_take isl_reordering *r)
isl_bool isl_map_space_tuple_is_equal(__isl_keep isl_map *map, enum isl_dim_type type1, __isl_keep isl_space *space, enum isl_dim_type type2)
__isl_give isl_map * isl_map_reset_equal_dim_space(__isl_take isl_map *map, __isl_take isl_space *space)
isl_bool isl_map_plain_is_fixed(__isl_keep isl_map *map, enum isl_dim_type type, unsigned pos, isl_int *val)
__isl_keep isl_space * isl_map_peek_space(__isl_keep const isl_map *map)
isl_bool isl_map_space_has_equal_params(__isl_keep isl_map *map, __isl_keep isl_space *space)
isl_bool isl_map_tuple_is_equal(__isl_keep isl_map *map1, enum isl_dim_type type1, __isl_keep isl_map *map2, enum isl_dim_type type2)
#define isl_basic_set_list
__isl_give isl_map * isl_map_plain_gist(__isl_take isl_map *map, __isl_take isl_map *context)
static struct isl_arg_choice bound[]
__isl_null isl_reordering * isl_reordering_free(__isl_take isl_reordering *exp)
__isl_give isl_reordering * isl_parameter_alignment_reordering(__isl_keep isl_space *alignee, __isl_keep isl_space *aligner)
__isl_give isl_space * isl_reordering_get_space(__isl_keep isl_reordering *r)
__isl_give isl_reordering * isl_reordering_extend_space(__isl_take isl_reordering *exp, __isl_take isl_space *space)
__isl_give isl_reordering * isl_reordering_copy(__isl_keep isl_reordering *exp)
__isl_give isl_space * isl_space_extend_domain_with_range(__isl_take isl_space *space, __isl_take isl_space *model)
static isl_bool match(__isl_keep isl_space *space1, enum isl_dim_type type1, __isl_keep isl_space *space2, enum isl_dim_type type2)
__isl_give isl_space * isl_space_replace_params(__isl_take isl_space *dst, __isl_keep isl_space *src)
isl_bool isl_space_has_domain_tuples(__isl_keep isl_space *space1, __isl_keep isl_space *space2)
isl_bool isl_space_has_range_tuples(__isl_keep isl_space *space1, __isl_keep isl_space *space2)
uint32_t isl_space_get_tuple_hash(__isl_keep isl_space *space)
static isl_stat foreach_point(__isl_take isl_set *set, void *user)
static isl_stat intersect_params_entry(void **entry, void *user)
static isl_bool plain_injective_on_range_wrap(__isl_keep isl_set *ran, void *user)
__isl_give isl_union_map * isl_union_set_unwrap(__isl_take isl_union_set *uset)
__isl_give isl_union_map * isl_union_map_lex_ge_union_map(__isl_take isl_union_map *umap1, __isl_take isl_union_map *umap2)
__isl_give isl_union_set * isl_union_map_domain(__isl_take isl_union_map *umap)
__isl_give isl_union_map * isl_union_map_preimage_domain_union_pw_multi_aff(__isl_take isl_union_map *umap, __isl_take isl_union_pw_multi_aff *upma)
static isl_stat domain_map_upma(__isl_take isl_map *map, void *user)
static __isl_give isl_set * combined_lineality_space(__isl_take isl_set *set)
__isl_give isl_set * isl_set_from_union_set(__isl_take isl_union_set *uset)
__isl_null isl_union_map * isl_union_map_free(__isl_take isl_union_map *umap)
static isl_stat preimage_mpa_entry(void **entry, void *user)
isl_size isl_union_set_dim(__isl_keep isl_union_set *uset, enum isl_dim_type type)
__isl_give isl_space * isl_union_set_get_space(__isl_keep isl_union_set *uset)
__isl_give isl_union_set * isl_union_set_gist_params(__isl_take isl_union_set *uset, __isl_take isl_set *set)
__isl_give isl_union_map * isl_union_map_apply_range(__isl_take isl_union_map *umap1, __isl_take isl_union_map *umap2)
__isl_give isl_union_map * isl_union_set_wrapped_domain_map(__isl_take isl_union_set *uset)
static isl_bool plain_injective_on_range(__isl_take isl_union_map *umap, int first, int n_range)
__isl_give isl_union_set * isl_union_set_subtract(__isl_take isl_union_set *uset1, __isl_take isl_union_set *uset2)
__isl_give isl_point * isl_union_set_sample_point(__isl_take isl_union_set *uset)
static isl_stat set_product_entry(void **entry, void *user)
static __isl_give isl_union_map * bin_add_map(__isl_take isl_union_map *res, __isl_keep isl_map *map)
__isl_give isl_union_map * isl_union_map_compute_divs(__isl_take isl_union_map *umap)
__isl_give isl_union_map * isl_union_set_lex_gt_union_set(__isl_take isl_union_set *uset1, __isl_take isl_union_set *uset2)
__isl_give isl_union_set * isl_union_set_solutions(__isl_take isl_union_set *uset)
__isl_give isl_union_set * isl_union_set_list_union(__isl_take isl_union_set_list *list)
__isl_give isl_basic_set * isl_union_set_sample(__isl_take isl_union_set *uset)
__isl_give isl_union_map * isl_union_map_intersect_domain_space(__isl_take isl_union_map *umap, __isl_take isl_space *space)
isl_bool isl_union_map_is_strict_subset(__isl_keep isl_union_map *umap1, __isl_keep isl_union_map *umap2)
__isl_give isl_union_map * isl_union_set_identity(__isl_take isl_union_set *uset)
__isl_give isl_union_map * isl_union_map_gist_params(__isl_take isl_union_map *umap, __isl_take isl_set *set)
__isl_give isl_union_map * isl_union_map_add_map(__isl_take isl_union_map *umap, __isl_take isl_map *map)
static __isl_give isl_union_map * gen_bin_set_op(__isl_take isl_union_map *umap, __isl_take isl_set *set, isl_stat(*fn)(void **, void *))
static __isl_give isl_map * isl_map_polyhedral_hull_map(__isl_take isl_map *map)
__isl_give isl_union_map * isl_union_map_from_domain_and_range(__isl_take isl_union_set *domain, __isl_take isl_union_set *range)
__isl_give isl_map * isl_map_from_union_map(__isl_take isl_union_map *umap)
__isl_give isl_union_map * isl_union_map_intersect(__isl_take isl_union_map *umap1, __isl_take isl_union_map *umap2)
__isl_give isl_union_set * isl_union_set_apply(__isl_take isl_union_set *uset, __isl_take isl_union_map *umap)
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)
__isl_give isl_union_set * isl_union_set_reset_user(__isl_take isl_union_set *uset)
static isl_stat match_bin_entry(void **entry, void *user)
__isl_give isl_union_map * isl_union_map_affine_hull(__isl_take isl_union_map *umap)
__isl_give isl_union_map * isl_union_map_align_params(__isl_take isl_union_map *umap, __isl_take isl_space *model)
static isl_bool test_set_from_map(__isl_keep isl_map *map, void *user)
static isl_stat check_union_map_space_equal_dim(__isl_keep isl_union_map *umap, __isl_keep isl_space *space)
static isl_bool un_op_filter_drop_user(__isl_keep isl_map *map, void *user)
static __isl_give isl_union_map * union_map_intersect_domain(__isl_take isl_union_map *umap, __isl_take isl_union_set *uset)
__isl_give isl_union_set * isl_union_set_intersect(__isl_take isl_union_set *uset1, __isl_take isl_union_set *uset2)
__isl_give isl_union_set * isl_union_set_from_set(__isl_take isl_set *set)
__isl_keep isl_space * isl_union_set_peek_space(__isl_keep isl_union_set *uset)
__isl_give isl_union_map * isl_union_map_factor_range(__isl_take isl_union_map *umap)
static __isl_give isl_map * map_id(__isl_take isl_map *map)
__isl_give isl_union_set * isl_union_map_wrap(__isl_take isl_union_map *umap)
__isl_give isl_union_set * isl_union_set_product(__isl_take isl_union_set *uset1, __isl_take isl_union_set *uset2)
static isl_bool union_map_forall(__isl_keep isl_union_map *umap, isl_bool(*fn)(__isl_keep isl_map *map))
__isl_give isl_union_set * isl_union_set_from_basic_set(__isl_take isl_basic_set *bset)
__isl_give isl_union_map * isl_union_map_from_map(__isl_take isl_map *map)
__isl_give isl_union_map * isl_union_map_from_basic_map(__isl_take isl_basic_map *bmap)
__isl_give isl_set * isl_union_set_extract_set(__isl_keep isl_union_set *uset, __isl_take isl_space *space)
static isl_stat forall_entry(void **entry, void *user)
static isl_bool map_excludes(__isl_keep isl_map *map, void *user)
__isl_give isl_union_map * isl_union_map_intersect_range_union_set(__isl_take isl_union_map *umap, __isl_take isl_union_set *uset)
__isl_give isl_union_map * isl_union_map_flat_range_product(__isl_take isl_union_map *umap1, __isl_take isl_union_map *umap2)
__isl_give isl_union_set * isl_union_set_empty_ctx(isl_ctx *ctx)
isl_bool isl_union_set_is_params(__isl_keep isl_union_set *uset)
static __isl_give isl_union_map * inplace(__isl_take isl_union_map *umap, __isl_give isl_map *(*fn)(__isl_take isl_map *))
isl_bool isl_union_map_plain_is_injective(__isl_keep isl_union_map *umap)
__isl_give isl_space * isl_union_map_get_space(__isl_keep isl_union_map *umap)
isl_bool isl_union_map_is_empty(__isl_keep isl_union_map *umap)
__isl_give isl_union_map * isl_union_map_preimage_range_union_pw_multi_aff(__isl_take isl_union_map *umap, __isl_take isl_union_pw_multi_aff *upma)
static __isl_give isl_union_map * isl_union_map_order_at_multi_union_pw_aff(__isl_take isl_union_map *umap, __isl_take isl_multi_union_pw_aff *mupa, __isl_give isl_map *(*order)(__isl_take isl_multi_pw_aff *mpa1, __isl_take isl_multi_pw_aff *mpa2))
__isl_give isl_union_set * isl_union_set_align_params(__isl_take isl_union_set *uset, __isl_take isl_space *model)
__isl_give isl_set * isl_union_set_as_set(__isl_take isl_union_set *uset)
__isl_give isl_union_map * isl_union_map_deltas_map(__isl_take isl_union_map *umap)
__isl_give isl_union_set * isl_union_set_intersect_params(__isl_take isl_union_set *uset, __isl_take isl_set *set)
__isl_give isl_union_map * isl_union_map_intersect_params(__isl_take isl_union_map *umap, __isl_take isl_set *set)
static int domain_match(__isl_keep isl_map *map, __isl_keep isl_space *space)
isl_bool isl_union_map_space_has_equal_params(__isl_keep isl_union_map *umap, __isl_keep isl_space *space)
static isl_stat range_product_entry(void **entry, void *user)
static isl_stat call_on_copy(void **entry, void *user)
__isl_give isl_set_list * isl_union_set_get_set_list(__isl_keep isl_union_set *uset)
__isl_give isl_union_map * isl_union_map_lex_lt_union_map(__isl_take isl_union_map *umap1, __isl_take isl_union_map *umap2)
__isl_give isl_union_map * isl_union_map_range_product(__isl_take isl_union_map *umap1, __isl_take isl_union_map *umap2)
__isl_give isl_union_map * isl_union_map_preimage_range_multi_aff(__isl_take isl_union_map *umap, __isl_take isl_multi_aff *ma)
__isl_give isl_union_map * isl_union_map_intersect_range_factor_domain(__isl_take isl_union_map *umap, __isl_take isl_union_map *factor)
static isl_bool single_map_is_single_valued(__isl_keep isl_union_map *umap)
static __isl_keep isl_maybe_isl_map bin_try_get_match(struct isl_union_map_gen_bin_data *data, __isl_keep isl_map *map)
__isl_give isl_union_set * isl_union_set_add_set(__isl_take isl_union_set *uset, __isl_take isl_set *set)
static isl_stat sample_entry(void **entry, void *user)
static struct isl_fixed_map * alloc_isl_fixed_map_array(isl_ctx *ctx, int n)
__isl_give isl_union_map * isl_union_map_dup(__isl_keep isl_union_map *umap)
__isl_give isl_union_set * isl_union_set_project_out(__isl_take isl_union_set *uset, enum isl_dim_type type, unsigned first, unsigned n)
__isl_give isl_union_map * isl_union_map_subtract(__isl_take isl_union_map *umap1, __isl_take isl_union_map *umap2)
__isl_give isl_union_map * isl_union_set_preimage_multi_aff(__isl_take isl_union_set *uset, __isl_take isl_multi_aff *ma)
static int qsort_fixed_map_cmp(const void *p1, const void *p2)
__isl_give isl_union_map * isl_union_map_range_map(__isl_take isl_union_map *umap)
static isl_bool has_domain_space_tuples(__isl_keep isl_map *map, void *user)
__isl_give isl_basic_map * isl_union_map_sample(__isl_take isl_union_map *umap)
static __isl_give isl_union_map * preimage_union_pw_multi_aff(__isl_take isl_union_map *umap, __isl_take isl_union_pw_multi_aff *upma, __isl_give isl_union_map *(*fn)(__isl_take isl_union_map *umap, __isl_take isl_pw_multi_aff *pma))
__isl_give isl_union_map * isl_union_map_simple_hull(__isl_take isl_union_map *umap)
static isl_stat project_out(__isl_take isl_map *map, void *user)
__isl_give isl_union_map * isl_union_map_copy(__isl_keep isl_union_map *umap)
static isl_bool has_range_space_tuples(__isl_keep isl_map *map, void *user)
__isl_give isl_union_map * isl_union_map_flat_domain_product(__isl_take isl_union_map *umap1, __isl_take isl_union_map *umap2)
__isl_give isl_union_map * isl_union_map_reverse(__isl_take isl_union_map *umap)
static isl_stat is_subset_entry(void **entry, void *user)
__isl_give isl_union_map * isl_union_map_zip(__isl_take isl_union_map *umap)
static struct isl_hash_table_entry * isl_union_map_find_entry(__isl_keep isl_union_map *umap, __isl_keep isl_space *space, int reserve)
__isl_give isl_union_map * isl_union_map_detect_equalities(__isl_take isl_union_map *umap)
isl_bool isl_union_map_is_subset(__isl_keep isl_union_map *umap1, __isl_keep isl_union_map *umap2)
__isl_give isl_union_map * isl_union_map_lexmin(__isl_take isl_union_map *umap)
static isl_bool has_space_tuples(const void *entry, const void *val)
__isl_give isl_union_map * isl_union_map_intersect_domain_union_set(__isl_take isl_union_map *umap, __isl_take isl_union_set *uset)
static isl_stat map_lex_lt_entry(void **entry, void *user)
__isl_give isl_union_map * isl_union_map_lex_le_union_map(__isl_take isl_union_map *umap1, __isl_take isl_union_map *umap2)
__isl_give isl_union_map * isl_union_map_cow(__isl_take isl_union_map *umap)
static __isl_give isl_map * lex_le_set(__isl_take isl_map *set1, __isl_take isl_map *set2)
static isl_stat map_lex_le_entry(void **entry, void *user)
__isl_give isl_union_set * isl_set_to_union_set(__isl_take isl_set *set)
static isl_bool fixed_at_pos(__isl_keep isl_map *map, void *user)
static __isl_give isl_union_map * preimage_pw_multi_aff(__isl_take isl_union_map *umap, __isl_take isl_pw_multi_aff *pma, int(*match)(__isl_keep isl_map *map, __isl_keep isl_space *space), __isl_give isl_map *(*fn)(__isl_take isl_map *map, __isl_take isl_pw_multi_aff *pma))
isl_bool isl_union_map_involves_dims(__isl_keep isl_union_map *umap, enum isl_dim_type type, unsigned first, unsigned n)
__isl_give isl_union_set * isl_union_set_empty(__isl_take isl_space *space)
static isl_bool not(__isl_keep isl_map *map, void *user)
__isl_give isl_map_list * isl_union_map_get_map_list(__isl_keep isl_union_map *umap)
static isl_stat un_entry(void **entry, void *user)
isl_stat isl_union_set_foreach_point(__isl_keep isl_union_set *uset, isl_stat(*fn)(__isl_take isl_point *pnt, void *user), void *user)
__isl_give isl_union_map * isl_union_map_intersect_range_factor_range(__isl_take isl_union_map *umap, __isl_take isl_union_map *factor)
static __isl_give isl_union_map * total(__isl_take isl_union_map *umap, __isl_give isl_map *(*fn)(__isl_take isl_map *))
static isl_stat add_map(__isl_take isl_map *map, void *user)
__isl_give isl_union_pw_multi_aff * isl_union_map_domain_map_union_pw_multi_aff(__isl_take isl_union_map *umap)
__isl_give isl_set * isl_union_set_params(__isl_take isl_union_set *uset)
__isl_give isl_union_map * isl_union_map_domain_product(__isl_take isl_union_map *umap1, __isl_take isl_union_map *umap2)
__isl_give isl_union_set * isl_union_set_remove_divs(__isl_take isl_union_set *uset)
static isl_stat preimage_upma(__isl_take isl_pw_multi_aff *pma, void *user)
__isl_give isl_union_map * isl_union_map_empty(__isl_take isl_space *space)
static __isl_give isl_union_map * preimage_multi_pw_aff(__isl_take isl_union_map *umap, __isl_take isl_multi_pw_aff *mpa, int(*match)(__isl_keep isl_map *map, __isl_keep isl_space *space), __isl_give isl_map *(*fn)(__isl_take isl_map *map, __isl_take isl_multi_pw_aff *mpa))
__isl_give isl_union_map * isl_union_map_remove_redundancies(__isl_take isl_union_map *umap)
__isl_give isl_union_map * isl_union_map_factor_domain(__isl_take isl_union_map *umap)
__isl_give isl_map * isl_union_map_extract_map(__isl_keep isl_union_map *umap, __isl_take isl_space *space)
isl_bool isl_union_set_every_set(__isl_keep isl_union_set *uset, isl_bool(*test)(__isl_keep isl_set *set, void *user), void *user)
static int separates(struct isl_fixed_map *v, int n, __isl_take isl_space *space, int pos, int n_range)
static isl_bool is_subset_of_identity(__isl_keep isl_map *map)
static int range_match(__isl_keep isl_map *map, __isl_keep isl_space *space)
uint32_t isl_union_set_get_hash(__isl_keep isl_union_set *uset)
static isl_stat forall_user_entry(void **entry, void *user)
__isl_give isl_union_set * isl_union_set_coalesce(__isl_take isl_union_set *uset)
static isl_stat add_n(__isl_take isl_set *set, void *user)
static __isl_give isl_map * universe(__isl_take isl_map *map)
static isl_stat product_entry(void **entry, void *user)
__isl_give isl_union_set * isl_union_set_empty_space(__isl_take isl_space *space)
__isl_give isl_union_set * isl_union_set_lexmin(__isl_take isl_union_set *uset)
__isl_give isl_union_map * isl_union_map_from_domain(__isl_take isl_union_set *uset)
__isl_give isl_union_map * isl_union_map_intersect_domain_factor_range(__isl_take isl_union_map *umap, __isl_take isl_union_map *factor)
__isl_give isl_union_map * isl_union_map_preimage_domain_multi_pw_aff(__isl_take isl_union_map *umap, __isl_take isl_multi_pw_aff *mpa)
static isl_stat add_list(__isl_take isl_set *set, void *user)
__isl_keep isl_space * isl_union_map_peek_space(__isl_keep isl_union_map *umap)
static isl_stat is_disjoint_entry(void **entry, void *user)
static __isl_give isl_space * identity(__isl_take isl_space *space)
isl_bool isl_union_map_is_identity(__isl_keep isl_union_map *umap)
__isl_give isl_union_map * isl_union_map_reset_range_space(__isl_take isl_union_map *umap, __isl_take isl_space *space)
__isl_give isl_union_map * isl_union_map_range_factor_range(__isl_take isl_union_map *umap)
isl_bool isl_union_map_isa_map(__isl_keep isl_union_map *umap)
__isl_give isl_union_set * isl_union_set_union(__isl_take isl_union_set *uset1, __isl_take isl_union_set *uset2)
isl_bool isl_union_set_space_has_equal_params(__isl_keep isl_union_set *uset, __isl_keep isl_space *space)
static isl_stat reset_range_space(__isl_take isl_map *map, void *user)
static int set_match(__isl_keep isl_map *map, __isl_keep isl_space *space)
__isl_give isl_union_map * isl_union_map_gist_range(__isl_take isl_union_map *umap, __isl_take isl_union_set *uset)
isl_size isl_union_set_n_set(__isl_keep isl_union_set *uset)
__isl_give isl_union_map * isl_union_map_intersect_domain(__isl_take isl_union_map *umap, __isl_take isl_union_set *uset)
__isl_give isl_union_map * isl_union_map_range_reverse(__isl_take isl_union_map *umap)
static isl_stat map_plain_is_not_identity(__isl_take isl_map *map, void *user)
static isl_stat copy_map(void **entry, void *user)
isl_bool isl_union_map_every_map(__isl_keep isl_union_map *umap, isl_bool(*test)(__isl_keep isl_map *map, void *user), void *user)
int isl_union_map_find_dim_by_name(__isl_keep isl_union_map *umap, enum isl_dim_type type, const char *name)
__isl_give isl_union_set * isl_union_set_plain_gist(__isl_take isl_union_set *uset, __isl_take isl_union_set *context)
static void free_isl_fixed_map_array(struct isl_fixed_map *v, int n)
__isl_give isl_union_set * isl_union_set_lexmax(__isl_take isl_union_set *uset)
isl_ctx * isl_union_set_get_ctx(__isl_keep isl_union_set *uset)
__isl_give isl_union_map * isl_union_map_intersect_domain_factor_domain(__isl_take isl_union_map *umap, __isl_take isl_union_map *factor)
__isl_give isl_union_map * isl_union_map_gist_domain(__isl_take isl_union_map *umap, __isl_take isl_union_set *uset)
isl_ctx * isl_union_map_get_ctx(__isl_keep isl_union_map *umap)
static isl_stat domain_product_entry(void **entry, void *user)
__isl_give isl_union_map * isl_union_map_coalesce(__isl_take isl_union_map *umap)
__isl_give isl_union_set * isl_union_set_preimage_union_pw_multi_aff(__isl_take isl_union_set *uset, __isl_take isl_union_pw_multi_aff *upma)
__isl_give isl_union_map * isl_union_map_curry(__isl_take isl_union_map *umap)
__isl_give isl_union_set * isl_union_set_gist(__isl_take isl_union_set *uset, __isl_take isl_union_set *context)
__isl_give isl_union_map * isl_union_map_project_out(__isl_take isl_union_map *umap, enum isl_dim_type type, unsigned first, unsigned n)
static static isl_size isl_union_map_dim(__isl_keep isl_union_map *umap, enum isl_dim_type type)
__isl_give isl_union_set * isl_union_map_deltas(__isl_take isl_union_map *umap)
__isl_give isl_union_map * isl_map_to_union_map(__isl_take isl_map *map)
static __isl_give isl_union_map * union_map_intersect_params(__isl_take isl_union_map *umap, __isl_take isl_union_set *uset)
static isl_bool union_map_forall_user(__isl_keep isl_union_map *umap, isl_bool(*fn)(__isl_keep isl_map *map, void *user), void *user)
static isl_stat solutions_entry(void **entry, void *user)
static __isl_give isl_map * lex_lt_set(__isl_take isl_map *set1, __isl_take isl_map *set2)
__isl_give isl_union_map * isl_union_map_intersect_range_wrapped_domain_union_set(__isl_take isl_union_map *umap, __isl_take isl_union_set *domain)
isl_bool isl_union_map_is_bijective(__isl_keep isl_union_map *umap)
static isl_stat gen_bin_entry(void **entry, void *user)
__isl_give isl_union_map * isl_union_map_preimage_range_pw_multi_aff(__isl_take isl_union_map *umap, __isl_take isl_pw_multi_aff *pma)
__isl_give isl_union_map * isl_union_map_plain_gist(__isl_take isl_union_map *umap, __isl_take isl_union_map *context)
static isl_stat apply_range_entry(void **entry, void *user)
__isl_give isl_union_map * isl_union_map_uncurry(__isl_take isl_union_map *umap)
static isl_stat single_valued_on_domain(__isl_take isl_set *set, void *user)
__isl_give isl_basic_set_list * isl_union_set_get_basic_set_list(__isl_keep isl_union_set *uset)
static isl_stat add_list_map(__isl_take isl_map *map, void *user)
isl_stat isl_union_set_foreach_set(__isl_keep isl_union_set *uset, isl_stat(*fn)(__isl_take isl_set *set, void *user), void *user)
__isl_give isl_union_map * isl_union_map_from_range(__isl_take isl_union_set *uset)
__isl_give isl_union_set * isl_union_set_preimage_pw_multi_aff(__isl_take isl_union_set *uset, __isl_take isl_pw_multi_aff *pma)
__isl_give isl_union_map * isl_union_map_preimage_domain_multi_aff(__isl_take isl_union_map *umap, __isl_take isl_multi_aff *ma)
__isl_give isl_union_map * isl_union_set_lex_le_union_set(__isl_take isl_union_set *uset1, __isl_take isl_union_set *uset2)
isl_bool isl_union_set_isa_set(__isl_keep isl_union_set *uset)
__isl_give isl_union_map * isl_union_map_lexmax(__isl_take isl_union_map *umap)
static isl_stat reset_params(__isl_take isl_map *map, void *user)
isl_bool isl_union_map_is_equal(__isl_keep isl_union_map *umap1, __isl_keep isl_union_map *umap2)
static __isl_give isl_map * isl_map_simple_hull_map(__isl_take isl_map *map)
__isl_give isl_union_map * isl_union_map_range_curry(__isl_take isl_union_map *umap)
__isl_give isl_union_map * isl_union_map_remove_map_if(__isl_take isl_union_map *umap, isl_bool(*fn)(__isl_keep isl_map *map, void *user), void *user)
static __isl_give isl_union_map * gen_bin_op(__isl_take isl_union_map *umap1, __isl_take isl_union_map *umap2, struct isl_bin_op_control *control)
__isl_give isl_union_map * isl_union_map_polyhedral_hull(__isl_take isl_union_map *umap)
isl_bool isl_union_map_is_single_valued(__isl_keep isl_union_map *umap)
static isl_stat map_is_identity(__isl_take isl_map *map, void *user)
isl_bool isl_union_set_is_strict_subset(__isl_keep isl_union_set *uset1, __isl_keep isl_union_set *uset2)
__isl_give isl_union_map * isl_union_map_empty_space(__isl_take isl_space *space)
__isl_give isl_map * isl_union_map_as_map(__isl_take isl_union_map *umap)
__isl_give isl_union_map * isl_union_map_empty_ctx(isl_ctx *ctx)
__isl_give isl_union_set * isl_union_set_remove_redundancies(__isl_take isl_union_set *uset)
__isl_give isl_union_map * isl_union_set_lex_lt_union_set(__isl_take isl_union_set *uset1, __isl_take isl_union_set *uset2)
__isl_give isl_union_map * isl_union_map_reset_equal_dim_space(__isl_take isl_union_map *umap, __isl_take isl_space *space)
__isl_give isl_union_map * isl_union_set_lex_ge_union_set(__isl_take isl_union_set *uset1, __isl_take isl_union_set *uset2)
__isl_give isl_union_set * isl_union_set_copy(__isl_keep isl_union_set *uset)
__isl_give isl_union_set * isl_union_set_affine_hull(__isl_take isl_union_set *uset)
static isl_bool equal_tuples(__isl_keep isl_map *map, void *user)
static __isl_give isl_union_map * union_map_gist_domain(__isl_take isl_union_map *umap, __isl_take isl_union_set *uset)
isl_bool isl_union_set_is_empty(__isl_keep isl_union_set *uset)
static __isl_give isl_union_map * bin_add_pair(__isl_take isl_union_map *res, __isl_keep isl_map *map1, __isl_keep isl_map *map2, struct isl_union_map_gen_bin_data *data)
isl_bool isl_union_set_is_subset(__isl_keep isl_union_set *uset1, __isl_keep isl_union_set *uset2)
__isl_give isl_union_set * isl_union_set_combined_lineality_space(__isl_take isl_union_set *uset)
static isl_stat order_at(__isl_take isl_map *map, void *user)
static __isl_give isl_map * isl_map_affine_hull_map(__isl_take isl_map *map)
static isl_stat preimage_entry(void **entry, void *user)
static isl_stat coefficients_entry(void **entry, void *user)
__isl_give isl_union_map * isl_union_map_intersect_range_space(__isl_take isl_union_map *umap, __isl_take isl_space *space)
__isl_give isl_union_map * isl_union_map_domain_factor_range(__isl_take isl_union_map *umap)
static isl_stat free_umap_entry(void **entry, void *user)
static isl_stat align_entry(void **entry, void *user)
static isl_stat identity_upma(__isl_take isl_set *set, void *user)
__isl_give isl_union_set * isl_union_map_range(__isl_take isl_union_map *umap)
isl_bool isl_union_map_is_injective(__isl_keep isl_union_map *umap)
__isl_give isl_union_map * isl_union_map_preimage_domain_pw_multi_aff(__isl_take isl_union_map *umap, __isl_take isl_pw_multi_aff *pma)
__isl_give isl_set * isl_union_map_params(__isl_take isl_union_map *umap)
__isl_give isl_union_map * isl_union_map_product(__isl_take isl_union_map *umap1, __isl_take isl_union_map *umap2)
isl_size isl_union_map_n_map(__isl_keep isl_union_map *umap)
__isl_give isl_union_map * isl_union_map_range_factor_domain(__isl_take isl_union_map *umap)
__isl_give isl_union_map * isl_union_map_lex_gt_union_map(__isl_take isl_union_map *umap1, __isl_take isl_union_map *umap2)
__isl_give isl_union_map * isl_union_map_gist(__isl_take isl_union_map *umap, __isl_take isl_union_map *context)
__isl_give isl_union_map * isl_union_map_domain_factor_domain(__isl_take isl_union_map *umap)
static isl_stat flat_domain_product_entry(void **entry, void *user)
__isl_give isl_union_set * isl_union_set_detect_equalities(__isl_take isl_union_set *uset)
static isl_stat bin_entry(void **entry, void *user)
isl_bool isl_union_map_is_disjoint(__isl_keep isl_union_map *umap1, __isl_keep isl_union_map *umap2)
isl_bool isl_union_map_contains(__isl_keep isl_union_map *umap, __isl_keep isl_space *space)
__isl_give isl_union_map * isl_union_map_union(__isl_take isl_union_map *umap1, __isl_take isl_union_map *umap2)
struct isl_hash_table_entry * isl_union_set_find_entry(__isl_keep isl_union_set *uset, __isl_keep isl_space *space, int reserve)
isl_bool isl_union_set_is_disjoint(__isl_keep isl_union_set *uset1, __isl_keep isl_union_set *uset2)
uint32_t isl_union_map_get_hash(__isl_keep isl_union_map *umap)
__isl_give isl_union_map * isl_union_map_apply_domain(__isl_take isl_union_map *umap1, __isl_take isl_union_map *umap2)
isl_bool isl_union_map_is_params(__isl_keep isl_union_map *umap)
__isl_give isl_union_map * isl_union_map_eq_at_multi_union_pw_aff(__isl_take isl_union_map *umap, __isl_take isl_multi_union_pw_aff *mupa)
__isl_null isl_union_set * isl_union_set_free(__isl_take isl_union_set *uset)
__isl_give isl_id * isl_union_map_get_dim_id(__isl_keep isl_union_map *umap, enum isl_dim_type type, unsigned pos)
__isl_give isl_union_set * isl_union_set_lift(__isl_take isl_union_set *uset)
static __isl_give isl_union_map * match_bin_op(__isl_take isl_union_map *umap1, __isl_take isl_union_map *umap2, __isl_give isl_map *(*fn)(__isl_take isl_map *, __isl_take isl_map *))
int isl_union_set_n_basic_set(__isl_keep isl_union_set *uset)
__isl_give isl_union_map * isl_union_map_universe(__isl_take isl_union_map *umap)
__isl_give isl_union_map * isl_union_map_remove_divs(__isl_take isl_union_map *umap)
__isl_give isl_union_set * isl_union_set_simple_hull(__isl_take isl_union_set *uset)
static __isl_give isl_union_map * isl_union_map_alloc(__isl_take isl_space *space, int size)
static isl_stat flat_range_product_entry(void **entry, void *user)
__isl_give isl_union_set * isl_union_set_compute_divs(__isl_take isl_union_set *uset)
isl_bool isl_union_set_contains(__isl_keep isl_union_set *uset, __isl_keep isl_space *space)
static isl_stat add_hash(__isl_take isl_map *map, void *user)
__isl_give isl_union_set * isl_union_set_universe(__isl_take isl_union_set *uset)
__isl_give isl_union_map * isl_union_map_subtract_domain(__isl_take isl_union_map *umap, __isl_take isl_union_set *dom)
__isl_give isl_union_set * isl_union_set_coefficients(__isl_take isl_union_set *uset)
static __isl_give isl_union_map * intersect_explicit_domain(__isl_take isl_union_map *umap, __isl_keep isl_multi_union_pw_aff *mupa)
static isl_bool isl_union_map_plain_is_not_identity(__isl_keep isl_union_map *umap)
__isl_give isl_union_map * isl_union_map_domain_map(__isl_take isl_union_map *umap)
__isl_give isl_union_map * isl_union_map_reset_user(__isl_take isl_union_map *umap)
static isl_stat call_every(void **entry, void *user)
__isl_give isl_union_map * isl_union_map_intersect_domain_wrapped_domain_union_set(__isl_take isl_union_map *umap, __isl_take isl_union_set *domain)
isl_bool isl_union_set_is_equal(__isl_keep isl_union_set *uset1, __isl_keep isl_union_set *uset2)
__isl_give isl_union_set * isl_union_set_project_out_all_params(__isl_take isl_union_set *uset)
__isl_give isl_union_set * isl_union_set_polyhedral_hull(__isl_take isl_union_set *uset)
__isl_give isl_union_set * isl_union_map_bind_range(__isl_take isl_union_map *umap, __isl_take isl_multi_id *tuple)
static __isl_give isl_union_map * union_map_gist_params(__isl_take isl_union_map *umap, __isl_take isl_union_set *uset)
static int isl_union_map_find_dim_by_id(__isl_keep isl_union_map *umap, enum isl_dim_type type, __isl_keep isl_id *id)
__isl_give isl_union_map * isl_union_map_subtract_range(__isl_take isl_union_map *umap, __isl_take isl_union_set *dom)
__isl_give isl_union_map * isl_union_map_intersect_range(__isl_take isl_union_map *umap, __isl_take isl_union_set *uset)
__isl_give isl_union_pw_multi_aff * isl_union_set_identity_union_pw_multi_aff(__isl_take isl_union_set *uset)
static isl_stat gist_params_entry(void **entry, void *user)
isl_bool isl_union_map_plain_is_empty(__isl_keep isl_union_map *umap)
#define isl_union_set_list
__isl_give isl_map * isl_map_flat_domain_product(__isl_take isl_map *map1, __isl_take isl_map *map2)
__isl_export __isl_give isl_map * isl_map_detect_equalities(__isl_take isl_map *map)
__isl_export __isl_give isl_map * isl_map_domain_product(__isl_take isl_map *map1, __isl_take isl_map *map2)
__isl_export __isl_give isl_map * isl_map_intersect_range(__isl_take isl_map *map, __isl_take isl_set *set)
isl_bool isl_map_is_identity(__isl_keep isl_map *map)
__isl_export __isl_give isl_set * isl_map_domain(__isl_take isl_map *bmap)
__isl_export __isl_give isl_map * isl_map_union(__isl_take isl_map *map1, __isl_take isl_map *map2)
__isl_give isl_map * isl_map_subtract_range(__isl_take isl_map *map, __isl_take isl_set *dom)
__isl_export isl_bool isl_map_is_single_valued(__isl_keep isl_map *map)
isl_bool isl_map_involves_dims(__isl_keep isl_map *map, enum isl_dim_type type, unsigned first, unsigned n)
__isl_export __isl_give isl_map * isl_map_range_factor_range(__isl_take isl_map *map)
__isl_export __isl_give isl_map * isl_map_subtract(__isl_take isl_map *map1, __isl_take isl_map *map2)
__isl_export __isl_give isl_map * isl_map_range_reverse(__isl_take isl_map *map)
__isl_export __isl_give isl_map * isl_map_intersect_params(__isl_take isl_map *map, __isl_take isl_set *params)
__isl_export __isl_give isl_map * isl_map_intersect(__isl_take isl_map *map1, __isl_take isl_map *map2)
__isl_export isl_bool isl_map_is_empty(__isl_keep isl_map *map)
__isl_export __isl_give isl_map * isl_map_universe(__isl_take isl_space *space)
__isl_export __isl_give isl_map * isl_map_zip(__isl_take isl_map *map)
__isl_export __isl_give isl_map * isl_map_gist(__isl_take isl_map *map, __isl_take isl_map *context)
__isl_export __isl_give isl_map * isl_map_apply_range(__isl_take isl_map *map1, __isl_take isl_map *map2)
__isl_export __isl_give isl_basic_map * isl_map_sample(__isl_take isl_map *map)
isl_bool isl_basic_map_plain_is_empty(__isl_keep isl_basic_map *bmap)
__isl_export __isl_give isl_map * isl_map_factor_domain(__isl_take isl_map *map)
__isl_overload __isl_give isl_map * isl_map_preimage_domain_pw_multi_aff(__isl_take isl_map *map, __isl_take isl_pw_multi_aff *pma)
__isl_give isl_map * isl_map_copy(__isl_keep isl_map *map)
__isl_export __isl_give isl_map * isl_set_identity(__isl_take isl_set *set)
__isl_export __isl_give isl_map * isl_map_domain_factor_domain(__isl_take isl_map *map)
__isl_export __isl_give isl_map * isl_map_intersect_range_factor_domain(__isl_take isl_map *map, __isl_take isl_map *factor)
__isl_export __isl_give isl_space * isl_map_get_space(__isl_keep isl_map *map)
__isl_export __isl_give isl_map * isl_map_intersect_domain_wrapped_domain(__isl_take isl_map *map, __isl_take isl_set *domain)
__isl_export __isl_give isl_map * isl_map_uncurry(__isl_take isl_map *map)
__isl_export __isl_give isl_map * isl_map_intersect_domain(__isl_take isl_map *map, __isl_take isl_set *set)
__isl_give isl_map * isl_map_lex_le_map(__isl_take isl_map *map1, __isl_take isl_map *map2)
isl_bool isl_map_plain_is_injective(__isl_keep isl_map *map)
isl_bool isl_map_can_zip(__isl_keep isl_map *map)
isl_bool isl_map_domain_is_wrapping(__isl_keep isl_map *map)
__isl_export isl_bool isl_set_is_wrapping(__isl_keep isl_set *set)
isl_bool isl_map_can_range_curry(__isl_keep isl_map *map)
__isl_export __isl_give isl_set * isl_map_deltas(__isl_take isl_map *map)
__isl_export __isl_give isl_map * isl_map_lexmin(__isl_take isl_map *map)
__isl_overload __isl_give isl_map * isl_map_preimage_domain_multi_pw_aff(__isl_take isl_map *map, __isl_take isl_multi_pw_aff *mpa)
isl_bool isl_map_plain_is_empty(__isl_keep isl_map *map)
isl_bool isl_map_can_uncurry(__isl_keep isl_map *map)
__isl_give isl_map * isl_map_range_map(__isl_take isl_map *map)
__isl_export __isl_give isl_map * isl_map_intersect_domain_factor_domain(__isl_take isl_map *map, __isl_take isl_map *factor)
__isl_export __isl_give isl_map * isl_map_intersect_domain_factor_range(__isl_take isl_map *map, __isl_take isl_map *factor)
uint32_t isl_map_get_hash(__isl_keep isl_map *map)
__isl_export __isl_give isl_map * isl_map_empty(__isl_take isl_space *space)
__isl_export __isl_give isl_map * isl_set_unwrap(__isl_take isl_set *set)
__isl_give isl_map * isl_map_flat_range_product(__isl_take isl_map *map1, __isl_take isl_map *map2)
__isl_export __isl_give isl_basic_map * isl_map_affine_hull(__isl_take isl_map *map)
__isl_give isl_set * isl_map_params(__isl_take isl_map *map)
isl_bool isl_map_can_curry(__isl_keep isl_map *map)
__isl_export __isl_give isl_set * isl_map_wrap(__isl_take isl_map *map)
__isl_export __isl_give isl_map * isl_map_factor_range(__isl_take isl_map *map)
__isl_export __isl_give isl_map * isl_map_curry(__isl_take isl_map *map)
__isl_give isl_map * isl_map_align_params(__isl_take isl_map *map, __isl_take isl_space *model)
__isl_export __isl_give isl_map * isl_map_domain_factor_range(__isl_take isl_map *map)
__isl_give isl_map * isl_map_reset_user(__isl_take isl_map *map)
__isl_export __isl_give isl_map * isl_map_lexmax(__isl_take isl_map *map)
__isl_export __isl_give isl_map * isl_map_intersect_range_wrapped_domain(__isl_take isl_map *map, __isl_take isl_set *domain)
__isl_export __isl_give isl_map * isl_map_reverse(__isl_take isl_map *map)
__isl_give isl_map * isl_map_deltas_map(__isl_take isl_map *map)
__isl_export __isl_give isl_map * isl_map_gist_params(__isl_take isl_map *map, __isl_take isl_set *context)
__isl_give isl_map * isl_map_subtract_domain(__isl_take isl_map *map, __isl_take isl_set *dom)
__isl_export __isl_give isl_map * isl_map_range_product(__isl_take isl_map *map1, __isl_take isl_map *map2)
__isl_give isl_map * isl_map_from_range(__isl_take isl_set *set)
__isl_give isl_map * isl_map_domain_map(__isl_take isl_map *map)
__isl_give isl_map * isl_map_gist_range(__isl_take isl_map *map, __isl_take isl_set *context)
__isl_export __isl_give isl_map * isl_map_product(__isl_take isl_map *map1, __isl_take isl_map *map2)
__isl_give isl_map * isl_map_remove_divs(__isl_take isl_map *map)
__isl_export isl_bool isl_map_is_disjoint(__isl_keep isl_map *map1, __isl_keep isl_map *map2)
__isl_give isl_map * isl_map_remove_redundancies(__isl_take isl_map *map)
__isl_export __isl_give isl_map * isl_map_range_factor_domain(__isl_take isl_map *map)
__isl_give isl_map * isl_map_range_curry(__isl_take isl_map *map)
isl_bool isl_map_range_is_wrapping(__isl_keep isl_map *map)
__isl_overload __isl_give isl_map * isl_map_preimage_range_pw_multi_aff(__isl_take isl_map *map, __isl_take isl_pw_multi_aff *pma)
__isl_give isl_basic_map * isl_basic_map_empty(__isl_take isl_space *space)
__isl_export __isl_give isl_map * isl_map_coalesce(__isl_take isl_map *map)
__isl_give isl_map * isl_map_identity(__isl_take isl_space *space)
__isl_give isl_map * isl_set_wrapped_domain_map(__isl_take isl_set *set)
__isl_null isl_map * isl_map_free(__isl_take isl_map *map)
__isl_export __isl_give isl_map * isl_map_gist_domain(__isl_take isl_map *map, __isl_take isl_set *context)
__isl_constructor __isl_give isl_map * isl_map_from_basic_map(__isl_take isl_basic_map *bmap)
__isl_give isl_map * isl_map_project_out(__isl_take isl_map *map, enum isl_dim_type type, unsigned first, unsigned n)
__isl_give isl_map * isl_map_lex_lt_map(__isl_take isl_map *map1, __isl_take isl_map *map2)
__isl_export __isl_give isl_map * isl_map_intersect_range_factor_range(__isl_take isl_map *map, __isl_take isl_map *factor)
__isl_export __isl_give isl_basic_map * isl_map_polyhedral_hull(__isl_take isl_map *map)
__isl_give isl_map * isl_map_compute_divs(__isl_take isl_map *map)
__isl_give isl_basic_map * isl_map_simple_hull(__isl_take isl_map *map)
__isl_export __isl_give isl_set * isl_map_bind_range(__isl_take isl_map *map, __isl_take isl_multi_id *tuple)
__isl_export __isl_give isl_set * isl_map_range(__isl_take isl_map *map)
__isl_export isl_bool isl_map_is_subset(__isl_keep isl_map *map1, __isl_keep isl_map *map2)
isl_bool isl_map_is_product(__isl_keep isl_map *map)
struct isl_basic_set isl_basic_set
__isl_give isl_map * isl_set_lex_lt_set(__isl_take isl_set *set1, __isl_take isl_set *set2)
__isl_give isl_map * isl_set_lex_le_set(__isl_take isl_set *set1, __isl_take isl_set *set2)
__isl_export __isl_give isl_set * isl_set_product(__isl_take isl_set *set1, __isl_take isl_set *set2)
__isl_give isl_set * isl_set_lift(__isl_take isl_set *set)
__isl_export __isl_give isl_space * isl_set_get_space(__isl_keep isl_set *set)
__isl_null isl_set * isl_set_free(__isl_take isl_set *set)
__isl_overload __isl_give isl_set * isl_set_preimage_pw_multi_aff(__isl_take isl_set *set, __isl_take isl_pw_multi_aff *pma)
__isl_give isl_set * isl_set_copy(__isl_keep isl_set *set)
__isl_give isl_basic_set_list * isl_set_get_basic_set_list(__isl_keep isl_set *set)
__isl_export isl_stat isl_set_foreach_point(__isl_keep isl_set *set, isl_stat(*fn)(__isl_take isl_point *pnt, void *user), void *user)
isl_bool isl_set_is_params(__isl_keep isl_set *set)
__isl_give isl_basic_set * isl_set_coefficients(__isl_take isl_set *set)
isl_size isl_set_dim(__isl_keep isl_set *set, enum isl_dim_type type)
__isl_give isl_set * isl_set_align_params(__isl_take isl_set *set, __isl_take isl_space *model)
isl_bool isl_set_plain_is_universe(__isl_keep isl_set *set)
__isl_export isl_size isl_set_n_basic_set(__isl_keep isl_set *set)
__isl_export __isl_give isl_set * isl_set_empty(__isl_take isl_space *space)
__isl_constructor __isl_give isl_set * isl_set_from_basic_set(__isl_take isl_basic_set *bset)
__isl_export __isl_give isl_point * isl_basic_set_sample_point(__isl_take isl_basic_set *bset)
__isl_give isl_basic_set * isl_set_solutions(__isl_take isl_set *set)
static __isl_give isl_set * set_from_map(__isl_take isl_map *map)
static __isl_give isl_set_list * set_list_from_map_list(__isl_take isl_map_list *list)
isl_bool isl_space_has_equal_params(__isl_keep isl_space *space1, __isl_keep isl_space *space2)
__isl_null isl_space * isl_space_free(__isl_take isl_space *space)
__isl_give isl_space * isl_space_range_factor_range(__isl_take isl_space *space)
__isl_give isl_space * isl_space_domain_wrapped_domain(__isl_take isl_space *space)
__isl_export __isl_give isl_space * isl_space_params(__isl_take isl_space *space)
__isl_give isl_space * isl_space_copy(__isl_keep isl_space *space)
__isl_give isl_space * isl_space_align_params(__isl_take isl_space *space1, __isl_take isl_space *space2)
__isl_export __isl_give isl_space * isl_space_unit(isl_ctx *ctx)
__isl_give isl_space * isl_space_domain_factor_domain(__isl_take isl_space *space)
__isl_give isl_space * isl_space_range_wrapped_domain(__isl_take isl_space *space)
__isl_export __isl_give isl_space * isl_space_range(__isl_take isl_space *space)
__isl_give isl_space * isl_space_set_alloc(isl_ctx *ctx, unsigned nparam, unsigned dim)
__isl_export __isl_give isl_space * isl_space_map_from_set(__isl_take isl_space *space)
int isl_space_find_dim_by_id(__isl_keep isl_space *space, enum isl_dim_type type, __isl_keep isl_id *id)
__isl_give isl_space * isl_space_drop_all_params(__isl_take isl_space *space)
__isl_export isl_bool isl_space_is_equal(__isl_keep isl_space *space1, __isl_keep isl_space *space2)
__isl_give isl_space * isl_space_range_factor_domain(__isl_take isl_space *space)
__isl_give isl_space * isl_space_drop_dims(__isl_take isl_space *space, enum isl_dim_type type, unsigned first, unsigned num)
__isl_give isl_id * isl_space_get_dim_id(__isl_keep isl_space *space, enum isl_dim_type type, unsigned pos)
isl_size isl_space_dim(__isl_keep isl_space *space, enum isl_dim_type type)
__isl_give isl_space * isl_space_domain_factor_range(__isl_take isl_space *space)
__isl_give isl_space * isl_space_reset_user(__isl_take isl_space *space)
int isl_space_find_dim_by_name(__isl_keep isl_space *space, enum isl_dim_type type, const char *name)
__isl_give isl_space * isl_space_params_alloc(isl_ctx *ctx, unsigned nparam)
__isl_export __isl_give isl_space * isl_space_domain(__isl_take isl_space *space)
isl_bool(* filter)(__isl_keep isl_map *map)
__isl_give isl_map *(* fn_map)(__isl_take isl_map *map1, __isl_take isl_map *map2)
__isl_give isl_space *(* match_space)(__isl_take isl_space *space)
isl_bool(* fn)(__isl_keep isl_map *map)
isl_bool(* fn)(__isl_keep isl_map *map, void *user)
isl_bool(* test)(__isl_keep isl_set *set, void *user)
__isl_give isl_map *(* fn_map2)(__isl_take isl_map *map, void *user)
isl_bool(* filter)(__isl_keep isl_map *map, void *user)
__isl_give isl_map *(* fn_map)(__isl_take isl_map *map)
isl_bool(* filter)(__isl_keep isl_map *map)
isl_stat(* fn)(void **entry, void *user)
isl_bool(* test)(__isl_keep isl_schedule_node *node, void *user)
isl_stat(* fn)(__isl_take isl_map *map, void *user)
struct isl_bin_op_control * control
int(* match)(__isl_keep isl_map *map, __isl_keep isl_space *space)
__isl_give isl_map *(* fn)(__isl_take isl_map *map, __isl_take isl_pw_multi_aff *pma)
int(* match)(__isl_keep isl_map *map, __isl_keep isl_space *space)
__isl_give isl_map *(* fn)(__isl_take isl_map *map, __isl_take isl_multi_pw_aff *mpa)
__isl_give isl_union_map *(* fn)(__isl_take isl_union_map *umap, __isl_take isl_pw_multi_aff *pma)
isl_bool(* fn)(__isl_keep isl_map *map, void *user)
struct isl_un_op_control * control
struct isl_hash_table table
isl_multi_union_pw_aff * mupa
__isl_give isl_map *(* order)(__isl_take isl_multi_pw_aff *mpa1, __isl_take isl_multi_pw_aff *mpa2)
isl_stat(* fn)(__isl_take isl_point *pnt, void *user)
static std::vector< Signature > bin_op
static std::vector< Signature > un_op
static Signature set_to_map
static Signature bind_range
__isl_export __isl_give isl_union_map * isl_union_map_project_out_all_params(__isl_take isl_union_map *umap)
struct isl_union_set isl_union_set
static __isl_give isl_union_set * uset_from_umap(__isl_take isl_union_map *umap)
static __isl_give isl_union_map * uset_to_umap(__isl_take isl_union_set *uset)