implement isl_constraint on top of isl_vec
commit87904b9fa45bb9df690a840733c569d08e5ecb32
authorSven Verdoolaege <skimo@kotnet.org>
Mon, 29 Aug 2011 13:34:59 +0000 (29 15:34 +0200)
committerSven Verdoolaege <skimo@kotnet.org>
Sat, 3 Sep 2011 19:43:08 +0000 (3 21:43 +0200)
treee7cbb0eb71879976a82fa11b119e0df8239db19f
parent9c4ccee80f890122344a2d81c0d6447c688d919e
implement isl_constraint on top of isl_vec

In e2a2317 (reimplement isl_constraint in terms of isl_aff,
Fri Jul 1 17:20:52 2011 +0200), were reimplemented on top of isl_aff
because both objects share many features.
There are also some difference, however, and it is therefore better
to implement isl_constraint directly on top of isl_vec.
In particular, an isl_aff has a denominator, whereas an isl_constraint
does not.  Although the denominator of an isl_aff is usually 1, it may
not always be and could therefore lead to subtle bugs.

Moreover, the space of an isl_constraint may be either that of
a set or a map, whereas, in principle, the domain of isl_aff is always
a set.  We allowed the domain of an isl_aff to be a map when it was
used to implement an isl_constraint, but this was not very clean.
This would become even more dramatic when we change the space of an isl_aff
to be that of a map.

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
isl_constraint.c
isl_constraint_private.h