Atjaunināt sīkdatņu piekrišanu

Logic Programming with Prolog 2nd ed. 2013 [Mīkstie vāki]

3.59/5 (24 ratings by Goodreads)
  • Formāts: Paperback / softback, 253 pages, height x width: 235x155 mm, weight: 4102 g, 44 Illustrations, black and white; XIII, 253 p. 44 illus., 1 Paperback / softback
  • Izdošanas datums: 20-Nov-2013
  • Izdevniecība: Springer London Ltd
  • ISBN-10: 144715486X
  • ISBN-13: 9781447154860
  • Mīkstie vāki
  • Cena: 37,98 €*
  • * ši ir gala cena, t.i., netiek piemērotas nekādas papildus atlaides
  • Standarta cena: 44,69 €
  • Ietaupiet 15%
  • Grāmatu piegādes laiks ir 3-4 nedēļas, ja grāmata ir uz vietas izdevniecības noliktavā. Ja izdevējam nepieciešams publicēt jaunu tirāžu, grāmatas piegāde var aizkavēties.
  • Daudzums:
  • Ielikt grozā
  • Piegādes laiks - 4-6 nedēļas
  • Pievienot vēlmju sarakstam
  • Formāts: Paperback / softback, 253 pages, height x width: 235x155 mm, weight: 4102 g, 44 Illustrations, black and white; XIII, 253 p. 44 illus., 1 Paperback / softback
  • Izdošanas datums: 20-Nov-2013
  • Izdevniecība: Springer London Ltd
  • ISBN-10: 144715486X
  • ISBN-13: 9781447154860

Logic Programming is the name given to a distinctive style of programming, very different from that of conventional programming languages such as C++ and Java. By far the most widely used Logic Programming language is Prolog. Prolog is a good choice for developing complex applications, especially in the field of Artificial Intelligence.

Logic Programming with Prolog does not assume that the reader is an experienced programmer or has a background in Mathematics, Logic or Artificial Intelligence. It starts from scratch and aims to arrive at the point where quite powerful programs can be written in the language. It is intended both as a textbook for an introductory course and as a self-study book. On completion readers will know enough to use Prolog in their own research or practical projects.

Each chapter has self-assessment exercises so that readers may check their own progress. A glossary of the technical terms used completes the book.

This second edition has been revised to be fully compatible with SWI-Prolog, a popular multi-platform public domain implementation of the language. Additional chapters have been added covering the use of Prolog to analyse English sentences and to illustrate how Prolog can be used to implement applications of an 'Artificial Intelligence' kind.

Max Bramer is Emeritus Professor of Information Technology at the University of Portsmouth, England. He has taught Prolog to undergraduate computer science students and used Prolog in his own work for many years.



Assuming no programming experience on the reader's part, this book starts from scratch and aims to arrive at the point where quite powerful programs can be written in the Prolog language. This second edition is revised to be fully compatible with SWI-Prolog.

Recenzijas

From the book reviews:

This book is a very practical introduction to the Prolog programming language. It would be good for students in a classroom setting or for a professional working at his or her desk. A job well done. (Anthony J. Duben, Computing Reviews, June, 2014)

Introduction ix
1 Getting Started
1(12)
1.1 Starting Prolog
1(2)
1.2 Prolog Programs
3(5)
1.3 Data Objects in Prolog: Prolog Terms
8(5)
Practical Exercise 1
11(2)
2 Clauses and Predicates
13(16)
2.1 Clauses
13(2)
2.2 Predicates
15(3)
2.3 Loading Clauses
18(4)
2.4 Variables
22(7)
Practical Exercise 2
27(2)
3 Satisfying Goals
29(26)
3.1 Introduction
29(2)
3.2 Unification
31(4)
3.2.1 Unifying Call Terms
31(4)
3.3 Evaluating Goals
35(4)
3.4 Backtracking
39
3.5 Satisfying Goals: A Summary
38(12)
3.6 Removing Common Variables
50(1)
3.7 A Note on Declarative Programming
51(1)
3.8 Important Note on User-Controlled Backtracking
52(3)
Practical Exercise 3
53(2)
4 Operators and Arithmetic
55(14)
4.1 Operators
55(3)
4.2 Arithmetic
58(3)
4.3 Equality Operators
61(3)
4.4 Logical Operators
64(1)
4.5 More About Operator Precedence
65(4)
Practical Exercise 4
68(1)
5 Input and Output
69(16)
5.1 Introduction
69(1)
5.2 Outputting Terms
69(2)
5.3 Inputting Terms
71(1)
5.4 Input and Output Using Characters
72(1)
5.5 Outputting Characters
72(1)
5.6 Inputting Characters
73(1)
5.7 Using Characters: Examples
74(2)
5.8 Input and Output Using Files
76(1)
5.9 File Output: Changing the Current Output Stream
77(1)
5.10 File Input: Changing the Current Input Stream
77(2)
5.10.1 Reading from Files: End of File
78(1)
5.10.2 Reading from Files: End of Record
78(1)
5.11 Using Files: Examples
79(6)
Practical Exercise 5
81(4)
6 Loops
85(14)
6.1 Introduction
85(1)
6.2 Looping a Fixed Number of Times
85(4)
6.3 Looping Until a Condition Is Satisfied
89(5)
6.3.1 Recursion
89(2)
6.3.2 Using the `repeat' Predicate
91(3)
6.4 Backtracking with Failure
94(5)
6.4.1 Searching the Prolog Database
94(2)
6.4.2 Finding Multiple Solutions
96(1)
Practical Exercise 6
97(2)
7 Preventing Backtracking
99(10)
7.1 Introduction
99(1)
7.2 The Cut Predicate
99(6)
7.3 Cut with Failure
105(4)
Practical Exercise 7
107(2)
8 Changing the Prolog Database
109(10)
8.1 Changing the Database: Adding and Deleting Clauses
109(1)
8.2 Adding Clauses
110(1)
8.3 Deleting Clauses
111(1)
8.4 Changing the Database: Example
112(2)
8.5 Maintaining a Database of Facts
114(5)
Practical Exercise 8
117(2)
9 List Processing
119(18)
9.1 Representing Data as Lists
119(1)
9.2 Notation for Lists
120(2)
9.3 Decomposing a List
122(2)
9.4 Built-in Predicate: member
124(1)
9.5 Built-in Predicate: length
125(1)
9.6 Built-in Predicate: reverse
126(1)
9.7 Built-in Predicate: append
127(1)
9.8 List Processing: Examples
128(4)
9.9 Using findall/3 to Create a List
132(5)
Practical Exercise 9
134(3)
10 String Processing
137(10)
10.1 Converting Strings of Characters To and From Lists
137(1)
10.2 Joining Two Strings
138(1)
10.3 Trimming a String
139(2)
10.4 Inputting a String of Characters
141(1)
10.5 Searching a String
142(2)
10.6 Dividing a String into Its Component Parts
144(3)
Practical Exercise 10
146(1)
11 More Advanced Features
147(18)
11.1 Introduction
147(1)
11.2 Extending Prolog: Arithmetic
147(6)
11.3 Extending Prolog: Operations on Strings
153(2)
11.4 Extending Prolog: Sets
155(2)
11.5 Processing Terms
157(8)
Practical Exercise 11
163(2)
12 Using Grammar Rules to Analyse English Sentences
165(22)
12.1 Introduction
165(1)
12.2 Parsing English Sentences
165(16)
12.3 Converting Sentences to List Form
181(6)
Practical Exercise 12
186(1)
13 Prolog in Action
187(24)
13.1 Implementing an Artificial Language
187(13)
13.2 Developing an Expert System Shell
200(11)
Practical Exercise 13
210(1)
Appendix 1 Built-in Predicates 211(6)
Appendix 2 Built-in Operators 217(4)
Appendix 3 Specimen Solutions to Practical Exercises 221(22)
Appendix 4 Glossary 243(8)
Index 251
Max Bramer is Emeritus Professor of Information Technology at the University of Portsmouth, England. He has taught Prolog to undergraduate computer science students and used Prolog in his own work for many years. Some of Max Bramers other Springer publications include:





Principles of Data Mining, 2nd Edition Research and Development in Intelligent Systems Artificial Intelligence in Theory and Practice