keep track of effect of variable elimination on implicit equality constraints
Any manipulation that may make a constraint redundant
may also turn it into an implicit equality.
In particular, when a constraint gets scaled down
a sample value in the tableau that could originally
reach the next integer value could potentially no longer
reach this next integer value after the scaling.
The chances of this having any user visible effect are very small.
When the ISL_BASIC_MAP_NO_REDUNDANT flag is cleared, any later
call to isl_basic_map_remove_redundancies will already
look for implicit equality constraints as well,
independently of the ISL_BASIC_MAP_NO_IMPLICIT flag.
There are a couple of places that explicitly check
the ISL_BASIC_MAP_NO_IMPLICIT flag, but this is either only an optimization
or only in effect on rational sets.
Note that there are some situations where
the elimination is known not to have an effect
on redundant constraints or implicit equality constraints.
These will be considered in an upcoming commit.
Signed-off-by: Sven Verdoolaege <sven@cerebras.net>