The art of Prolog advanced programming techniques - Sterling, Leon (The MIT Press, 1994)