Logic And Declarative Language by Michael Downward & Downward M.