Logic, programming and Prolog - Nilsson, Ulf (John Wiley, 1995)