|
|
J.M. Spivey
ISBN: 9780135360477
Format: Paperback
Publisher:Pearson Education Limited
Edition: 03241997
Write a review
Logic programming has increasing significance in computer science beyond the current fashion for expert systems. This book takes a software engineering rather than an expert systems/AI approach and covers logical theory, practical programming and PROLOG implementation.
This is one of the few texts that combines three essential theses in the study of logic programming: the logic that gives logic programs their unique character: the practice of programming effectively using the logic; and the efficient implementation of logic programming on computers. The book begins with a gentle introduction to logic programming using a number of simple examples, followed by a concise and self-contained account of the logic behind Prolog programming. This leads to a discussion of methods of writing programs so that the process of deriving anwers from them is as efficient as possible. The techniques are illustrated by practical examples and the final part of the book explains how logic programming can be implented efficiently. It includes source code for a small but Complete Prolog implementation written in Pascal. The implementation is capable of running all the programs presented in the book, and is available via the Internet.
| ISBN | 0135360471 | | Pages | 264 | | ISBN13 | 9780135360477 (What's this?) | | Volumes | 001 | | Publisher | Pearson Education Limited | | Weight (grammes) | 391 | | Imprint | Prentice-Hall | | Published in | Harlow | | Format | Paperback | | Series editor | Hoare, C.A.R., Hoare, C.A.R., Hoare, C.A.R. | | Publication date | 01 Apr 1994 | | Series title | Prentice Hall International Series in Computer Science | | Non-book description | x, 251 p. : | | Height (mm) | 235 | | Library of Congress | QA76.63.S6 | | Width (mm) | 174 | | DEWEY | 005.133 | | Spine width (mm) | 13 | | DEWEY edition | DC20 | | Academic level | Professional / Scholarly |
|
| |
| | | Preface | | | | 1 | | Introduction | | 1 | | 2 | | Programming with relations | | 13 | | 3 | | Recursive structures | | 21 | | 4 | | The meaning of logic programs | | 35 | | 5 | | Inference rules | | 47 | | 6 | | Unification and resolution | | 55 | | 7 | | SLD-resolution and answer substitutions | | 69 | | 8 | | Negation as failure | | 85 | | 9 | | Searching problems | | 91 | | 10 | | Parsing | | 99 | | 11 | | Evaluating and simplifying expressions | | 107 | | 12 | | Hardware simulation | | 115 | | 13 | | Program transformation | | 122 | | 14 | | About picoProlog | | 130 | | 15 | | Implementing depth-first search | | 139 | | 16 | | Representing terms and substitutions | | 153 | | 17 | | Implementation notes | | 164 | | 18 | | Interpreter optimizations | | 178 | | 19 | | In conclusion | | 185 | | | | Further reading | | 187 | | | | App. A Answers to the exercises | | 189 | | | | App. B Using an ordinary Prolog system | | 203 | | | | App. C PicoProlog source code | | 205 | | | | App. D Cross-reference listing | | 244 | | | | Index | | 249 |
|
|
|
|
|