An introduction to logic programming through Prolog

Introduction. Programming with Relations. Recursive Structures. The Meaning of Logic Programs. Inference Rules. Unification and Resolution, SLD -Resolution. SLD-Resolution and Answer Substitutions. Negation as Failure. Searching Problems. Parsing Evaluating and Simplifying Expressions. Hardware simulations. Program Transformation. About PicoProlog. Implementing Depth-First Search, Representing Terms and Substitutions. Implementation Notes. Interpreter Optimizations. In Conclusion. Bibliography, Index.