Programming in Prolog Using the ISO Standard

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 Programmin...

Full description

Bibliographic Details
Main Authors: Clocksin, W. F., Mellish, C. S. (Author)
Format: eBook
Language:English
Published: Berlin, Heidelberg Springer Berlin Heidelberg 1984, 1984
Edition:2nd ed. 1984
Subjects:
Online Access:
Collection: Springer Book Archives -2004 - Collection details see MPG.ReNa
LEADER 05211nmm a2200325 u 4500
001 EB000683158
003 EBX01000000000000000536240
005 00000000000000.0
007 cr|||||||||||||||||||||
008 140122 ||| eng
020 |a 9783642968730 
100 1 |a Clocksin, W. F. 
245 0 0 |a Programming in Prolog  |h Elektronische Ressource  |b Using the ISO Standard  |c by W. F. Clocksin, C. S. Mellish 
250 |a 2nd ed. 1984 
260 |a Berlin, Heidelberg  |b Springer Berlin Heidelberg  |c 1984, 1984 
300 |a XV, 297 p  |b online resource 
505 0 |a 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 --  
505 0 |a 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 
505 0 |a 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 SpyPoints -- 8.5 Fixing Bugs -- 9. Using Prolog Grammar Rules -- 9.1 The Parsing Problem --  
653 |a Compilers (Computer programs) 
653 |a Compilers and Interpreters 
653 |a Artificial Intelligence 
653 |a Artificial intelligence 
700 1 |a Mellish, C. S.  |e [author] 
041 0 7 |a eng  |2 ISO 639-2 
989 |b SBA  |a Springer Book Archives -2004 
028 5 0 |a 10.1007/978-3-642-96873-0 
856 4 0 |u https://doi.org/10.1007/978-3-642-96873-0?nosfx=y  |x Verlag  |3 Volltext 
082 0 |a 005.45 
520 |a 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