From cc1bb40b525d065a091a68c72a7e58e40e609c1a Mon Sep 17 00:00:00 2001 From: Sven Verdoolaege Date: Fri, 11 Jun 2010 20:53:54 +0200 Subject: [PATCH] doc: document gist operations --- doc/user.pod | 28 ++++++++++++++++++++++++++++ include/isl_set.h | 4 ++-- 2 files changed, 30 insertions(+), 2 deletions(-) diff --git a/doc/user.pod b/doc/user.pod index 2833ef9e..a66b29cd 100644 --- a/doc/user.pod +++ b/doc/user.pod @@ -1073,6 +1073,25 @@ the same (number of) parameters. __isl_take isl_map *map1, __isl_take isl_map *map2); +=item * Simplification + + __isl_give isl_basic_set *isl_basic_set_gist( + __isl_take isl_basic_set *bset, + __isl_take isl_basic_set *context); + __isl_give isl_set *isl_set_gist(__isl_take isl_set *set, + __isl_take isl_set *context); + __isl_give isl_basic_map *isl_basic_map_gist( + __isl_take isl_basic_map *bmap, + __isl_take isl_basic_map *context); + __isl_give isl_map *isl_map_gist(__isl_take isl_map *map, + __isl_take isl_map *context); + +The gist operation returns a set or relation that has the +same intersection with the context as the input set or relation. +Any implicit equality in the intersection is made explicit in the result, +while all inequalities that are redundant with respect to the intersection +are removed. + =back =head3 Lexicographic Optimization @@ -1424,6 +1443,15 @@ are returned in C<*n> and C<*d>, respectively. __isl_take isl_pw_qpolynomial *pwpq, __isl_take isl_set *set); + __isl_give isl_pw_qpolynomial *isl_pw_qpolynomial_gist( + __isl_take isl_pw_qpolynomial *pwqp, + __isl_take isl_set *context); + +The gist operation applies the gist operation to each of +the cells in the domain of the input piecewise quasipolynomial. +In future, the operation will also exploit the context +to simplify the quasipolynomials associated to each cell. + =head2 Dependence Analysis C contains specialized functionality for performing diff --git a/include/isl_set.h b/include/isl_set.h index 735ca586..945f97dd 100644 --- a/include/isl_set.h +++ b/include/isl_set.h @@ -299,8 +299,8 @@ int isl_set_fast_dim_has_fixed_lower_bound(struct isl_set *set, int isl_set_dim_is_bounded(__isl_keep isl_set *set, enum isl_dim_type type, unsigned pos); -struct isl_basic_set *isl_basic_set_gist(struct isl_basic_set *bset, - struct isl_basic_set *context); +__isl_give isl_basic_set *isl_basic_set_gist(__isl_take isl_basic_set *bset, + __isl_take isl_basic_set *context); __isl_give isl_set *isl_set_gist_basic_set(__isl_take isl_set *set, __isl_take isl_basic_set *context); __isl_give isl_set *isl_set_gist(__isl_take isl_set *set, -- 2.11.4.GIT