-1 if an error occurs. In the latter case, or if any other error
occurs, the above functions will return -1.
+It should be noted that C<isl> does not guarantee that
+the basic sets or maps passed to C<fn> are disjoint.
+If this is required, then the user should call one of
+the following functions first.
+
+ __isl_give isl_set *isl_set_make_disjoint(
+ __isl_take isl_set *set);
+ __isl_give isl_map *isl_map_make_disjoint(
+ __isl_take isl_map *map);
+
To iterate over the constraints of a basic set or map, use
#include <isl_constraint.h>
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);
+__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_compute_divs(__isl_take isl_map *map);
__isl_give isl_map *isl_map_align_divs(__isl_take isl_map *map);
int isl_set_is_strict_subset(__isl_keep isl_set *set1, __isl_keep isl_set *set2);
int isl_set_is_equal(__isl_keep isl_set *set1, __isl_keep isl_set *set2);
+__isl_give isl_set *isl_set_make_disjoint(__isl_take isl_set *set);
struct isl_set *isl_basic_set_compute_divs(struct isl_basic_set *bset);
__isl_give isl_set *isl_set_compute_divs(__isl_take isl_set *set);
__isl_give isl_set *isl_set_align_divs(__isl_take isl_set *set);
struct isl_mat *mat);
struct isl_set *isl_set_preimage(struct isl_set *set, struct isl_mat *mat);
-__isl_give isl_set *isl_set_make_disjoint(__isl_take isl_set *set);
-__isl_give isl_map *isl_map_make_disjoint(__isl_take isl_map *map);
-
isl_int *isl_set_wrap_facet(__isl_keep isl_set *set,
isl_int *facet, isl_int *ridge);