Zaslat SMS: An algebraic approach to multi-sorted constraints