The art of Prolog : advanced programming techniques - Sterling, Leon. (MIT Press, 1987)