Programming with constraints : - Marriott, Kim (MIT Press, 1998)