UID:
almahu_9948621330502882
Format:
XV, 297 p.
,
online resource.
Edition:
2nd ed. 1984.
ISBN:
9783642968730
Content:
Since the first publishing of Programming in Prolog in 1981, Pro log has continued to attract an unexpectedly great deal of interest in the computer science community and is now seen as a potential ba sis for an important new generation of programming languages and systems. We hope that Programming in Prolog has partially satisfied the increasing need for an easy, yet comprehensive introduction to the language as a tool for practical programming. In this second edition we have taken the opportunity to improve the presentation and to correct various minor errors in the original. We thank the many people who have given us suggestions for corrections and improvement. W. F. C. C. S. M. Cambridge, England August, 198-1 Preface to the First Edition The computer programming language Prolog is quickly gaining popularity throughout the world. Since its beginnings around 1970, Prolog has been chosen by many programmers for applications of symbolic computation, including: • relational databases • mathematical logic • abstract problem solving • understanding naturallangur~ge • design automation • symbolic equation solving • biochemical structure analysis • many areas of artificial intelligence Until now, there has been no textbook with the aim of teaching Prolog as a practical programming language. It is perhaps a tribute to Prolog that so many people have been motivated to learn it by referring to the necessarily concise reference manuals, a few published papers, and by the orally transmitted 'folklore' of the modern computing community.
Note:
1. Tutorial Introduction -- 1.1 Facts -- 1.2 Questions -- 1.3 Variables -- 1.4 Conjunctions -- 1.5 Rules -- 1.6 Summary and Exercises -- 2. A Closer Look -- 2.1 Syntax -- 2.2 Characters -- 2.3 Operators -- 2.4 Equality and Matching -- 2.5 Arithmetic -- 2.6 Summary of Satisfying Goals -- 3. Using Data Structures -- 3.1 Structures and Trees -- 3.2 Lists -- 3.3 Membership of a List -- 3.4 Example: Changing a Sentence into Another -- 3.5 Example: Comparing Alphabetic Order -- 3.6 Using append and a Parts Inventory -- 4. Backtracking and "Cut" -- 4.1 Generating Multiple Solutions -- 4.2 The "Cut" -- 4.3 Common Uses of the "Cut" -- 4.4 Problems with "Cut" -- 5. Input and Output -- 5.1 Reading and Writing Terms -- 5.2 Reading and Writing Characters -- 5.3 Reading English Sentences -- 5.4 Reading and Writing Files -- 5.5 Declaring Operators -- 6. Built-in Predicates -- 6.1 Entering New Clauses -- 6.2 Success and Failure -- 6.3 Classifying Terms -- 6.4 Treating Clauses as Terms -- 6.5 Constructing and Accessing Components of Terms -- 6.6 Affecting Backtracking -- 6.7 Constructing Compound Goals -- 6.8 Equality -- 6.9 Input and Output -- 6.10 Handling Files -- 6.11 Evaluating Arithmetic Expressions -- 6.12 Comparing Numbers -- 6.13 Watching Prolog at Work -- 7. More Example Programs -- 7.1 A Sorted-Tree Dictionary -- 7.2 Searching A Maze -- 7.3 The Towers of Hanoi -- 7.4 Parts Inventory -- 7.5 List Processing -- 7.6 Representing and Manipulating Sets -- 7.7 Sorting -- 7.8 Using the Database: random, gensym, findall -- 7.9 Searching Graphs -- 7.10 Sift the Two's and Sift the Three's -- 7.11 Symbolic Differentiation -- 7.12 Mapping Structures and Transforming Trees -- 7.13 Using clause and retract -- 8. Debugging Prolog Programs -- 8.1 Laying out Programs -- 8.2 Common Errors -- 8.3 The Tracing Model -- 8.4 Tracing and Spy Points -- 8.5 Fixing Bugs -- 9. Using Prolog Grammar Rules -- 9.1 The Parsing Problem -- 9.2 Representing the Parsing Problem in Prolog -- 9.3 The Grammar Rule Notation -- 9.4 Adding Extra Arguments -- 9.5 Adding Extra Tests -- 9.6 Summary -- 10. The Relation of Prolog to Logic -- 10.1 Brief Introduction to Predicate Calculus -- 10.2 Clausal Form -- 10.3 A Notation for Clauses -- 10.4 Resolution and Proving Theorems -- 10.5 Horn Clauses -- 10.6 Prolog -- 10.7 Prolog and Logic Programming -- 11. Projects in Prolog -- 11.1 Easier Projects -- 11.2 Advanced Projects -- Appendices -- A. Answers to Selected Exercises -- B. Clausal Form Program Listings -- C. Different Versions of Prolog -- D. DECsystem-10 Prolog -- E. MicroProlog.
In:
Springer Nature eBook
Additional Edition:
Printed edition: ISBN 9783540150114
Additional Edition:
Printed edition: ISBN 9783642968747
Language:
English
DOI:
10.1007/978-3-642-96873-0
URL:
https://doi.org/10.1007/978-3-642-96873-0
Bookmarklink