unsigned isl_map_n_param(const struct isl_map *map);
unsigned isl_map_dim(const struct isl_map *map, enum isl_dim_type type);
+isl_ctx *isl_map_get_ctx(__isl_keep isl_map *map);
__isl_give isl_dim *isl_basic_map_get_dim(__isl_keep isl_basic_map *bmap);
__isl_give isl_dim *isl_map_get_dim(__isl_keep isl_map *map);
+__isl_give isl_basic_map *isl_basic_map_set_tuple_name(
+ __isl_take isl_basic_map *bmap, enum isl_dim_type type, const char *s);
+__isl_give isl_map *isl_map_set_tuple_name(__isl_take isl_map *map,
+ enum isl_dim_type type, const char *s);
__isl_give isl_basic_map *isl_basic_map_set_dim_name(
__isl_take isl_basic_map *bmap,
enum isl_dim_type type, unsigned pos, const char *s);
__isl_give isl_basic_map *isl_basic_map_universe(__isl_take isl_dim *dim);
__isl_give isl_basic_map *isl_basic_map_universe_like(
__isl_keep isl_basic_map *bmap);
-struct isl_basic_map *isl_basic_map_convex_hull(struct isl_basic_map *bmap);
+__isl_give isl_basic_map *isl_basic_map_remove_redundancies(
+ __isl_take isl_basic_map *bmap);
__isl_give isl_basic_map *isl_map_simple_hull(__isl_take isl_map *map);
__isl_give isl_basic_map *isl_basic_map_intersect_domain(
int isl_basic_map_fast_is_fixed(struct isl_basic_map *bmap,
enum isl_dim_type type, unsigned pos, isl_int *val);
+int isl_basic_map_image_is_bounded(__isl_keep isl_basic_map *bmap);
int isl_basic_map_is_universe(__isl_keep isl_basic_map *bmap);
int isl_basic_map_fast_is_empty(__isl_keep isl_basic_map *bmap);
int isl_basic_map_is_empty(__isl_keep isl_basic_map *bmap);
enum isl_dim_type type, unsigned n);
__isl_give isl_map *isl_map_insert(__isl_take isl_map *map,
enum isl_dim_type type, unsigned pos, unsigned n);
+__isl_give isl_basic_map *isl_basic_map_move_dims(
+ __isl_take isl_basic_map *bmap,
+ enum isl_dim_type dst_type, unsigned dst_pos,
+ enum isl_dim_type src_type, unsigned src_pos, unsigned n);
__isl_give isl_map *isl_map_move_dims(__isl_take isl_map *map,
enum isl_dim_type dst_type, unsigned dst_pos,
enum isl_dim_type src_type, unsigned src_pos, unsigned n);
int isl_map_is_strict_subset(__isl_keep isl_map *map1, __isl_keep isl_map *map2);
int isl_map_is_equal(__isl_keep isl_map *map1, __isl_keep isl_map *map2);
int isl_map_is_single_valued(__isl_keep isl_map *map);
+int isl_map_is_bijective(__isl_keep isl_map *map);
int isl_map_is_translation(__isl_keep isl_map *map);
+int isl_map_has_equal_dim(__isl_keep isl_map *map1, __isl_keep isl_map *map2);
__isl_give isl_map *isl_map_make_disjoint(__isl_take isl_map *map);
__isl_give isl_map *isl_basic_map_compute_divs(__isl_take isl_basic_map *bmap);
__isl_give isl_map *isl_map_power(__isl_take isl_map *map, unsigned param,
int *exact);
+__isl_give isl_map *isl_map_reaching_path_lengths(__isl_take isl_map *map,
+ int *exact);
__isl_give isl_map *isl_map_transitive_closure(__isl_take isl_map *map,
int *exact);