Merge may not be done if you merge Domain "lower on lattice" into Domain "upper on lattice" . For example, you don't need to merge interval [0-1] into [0-2] -> [0, 2] already contains [0-1].
This is the implementation of Domain::operator<(const Domain& value) const in domains. Currently, the method exists but contain "CANAL_NOT_IMPLEMENTED()" everywhere.
Merge may not be done if you merge Domain "lower on lattice" into Domain "upper on lattice" . For example, you don't need to merge interval [0-1] into [0-2] -> [0, 2] already contains [0-1].