The art of prolog advanced programming techniques - Sterling, Leon; Shapiro, Ehud (The MIT Pr., 1986)