[FIXED]: when compacting dimensions in apron domains the order was not preserved. When compacting dimensions we identify the dimensions to be removed and then we rename the rest starting from 0. The renaming was done by iterating over variable names and giving increasingly a new number to each one. However, this can produce wrong results as observed in tests/inter/inter. For instance, consider the map x->0,y->2,z->1 and assume we remove x. Then, the new map if iterating over variables rather than dimension ids is y->0, z->1 so everything gets messed up. The solution is to iterate over dimensions ids so we always preserve the order between them. In our example we now produce y->1, z->0.
[FIXED]: when compacting dimensions in apron domains the order was not preserved.
When compacting dimensions we identify the dimensions to be removed
and then we rename the rest starting from 0. The renaming was done by
iterating over variable names and giving increasingly a new number to
each one. However, this can produce wrong results as observed in
tests/inter/inter. For instance, consider the map x->0,y->2,z->1 and
assume we remove x. Then, the new map if iterating over variables
rather than dimension ids is y->0, z->1 so everything gets messed
up. The solution is to iterate over dimensions ids so we always
preserve the order between them. In our example we now produce y->1,
z->0.

seahorn/crab,seahorn/crab,caballa/crab