There are still some things that could be done to improve the implementation.
- For summing up paths, 64 bit integers could be used to avoid all possible overflows in practice.
- By introducing an epsilon, real valued constraints can be made to work with strict semantics, too.
- Some kind of preprocessing on the difference constraints might be interesting.
- Operators and operations in difference constraints should be made more flexible.