int isl_map_is_single_valued(__isl_keep isl_map *map);
int isl_union_map_is_single_valued(__isl_keep isl_union_map *umap);
+=item * Injectivity
+
+ int isl_map_is_injective(__isl_keep isl_map *map);
+ int isl_union_map_is_injective(__isl_keep isl_union_map *umap);
+
=item * Bijectivity
int isl_map_is_bijective(__isl_keep isl_map *map);
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_injective(__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);
int isl_union_map_is_empty(__isl_keep isl_union_map *umap);
int isl_union_map_is_single_valued(__isl_keep isl_union_map *umap);
+int isl_union_map_is_injective(__isl_keep isl_union_map *umap);
int isl_union_map_is_bijective(__isl_keep isl_union_map *umap);
int isl_union_map_is_subset(__isl_keep isl_union_map *umap1,
return sv;
}
+int isl_map_is_injective(__isl_keep isl_map *map)
+{
+ int in;
+
+ map = isl_map_copy(map);
+ map = isl_map_reverse(map);
+ in = isl_map_is_single_valued(map);
+ isl_map_free(map);
+
+ return in;
+}
+
int isl_map_is_bijective(__isl_keep isl_map *map)
{
int sv;
if (sv < 0 || !sv)
return sv;
- map = isl_map_copy(map);
- map = isl_map_reverse(map);
- sv = isl_map_is_single_valued(map);
- isl_map_free(map);
-
- return sv;
+ return isl_map_is_injective(map);
}
int isl_set_is_singleton(__isl_keep isl_set *set)
return sv;
}
+int isl_union_map_is_injective(__isl_keep isl_union_map *umap)
+{
+ int in;
+
+ umap = isl_union_map_copy(umap);
+ umap = isl_union_map_reverse(umap);
+ in = isl_union_map_is_single_valued(umap);
+ isl_union_map_free(umap);
+
+ return in;
+}
+
int isl_union_map_is_bijective(__isl_keep isl_union_map *umap)
{
int sv;
if (sv < 0 || !sv)
return sv;
- umap = isl_union_map_copy(umap);
- umap = isl_union_map_reverse(umap);
- sv = isl_union_map_is_single_valued(umap);
- isl_union_map_free(umap);
-
- return sv;
+ return isl_union_map_is_injective(umap);
}
static int zip_entry(void **entry, void *user)