Bramer | Logic Programming with Prolog | E-Book | www.sack.de
E-Book

E-Book, Englisch, 236 Seiten

Bramer Logic Programming with Prolog


1. Auflage 2005
ISBN: 978-1-84628-212-6
Verlag: Springer
Format: PDF
Kopierschutz: 1 - PDF Watermark

E-Book, Englisch, 236 Seiten

ISBN: 978-1-84628-212-6
Verlag: Springer
Format: PDF
Kopierschutz: 1 - PDF Watermark



This book teaches the techniques of Logic Programming through the Prolog language. The name stands for Programming in Logic. Prolog has been used for a wide variety of applications, including as the basis for a standard knowledge representation language for the Semantic Web - the next generation of internet technology; it is one of the principal languages used by researchers in Artificial Intelligence.Logic Programming with Prolog does not assume that the reader is an experienced programmer with a strong background in Mathematics, Logic or Artificial Intelligence.

It starts from scratch and aims to take the reader to a point where they can soon write powerful programs in the language. Suitable both as an introductory textbook and for independent study, the programs in this book are written using the standard Edinburgh syntax and should run unchanged in virtually any version of Prolog. A full glossary of the technical terms used is included and each chapter has self-assessment exercises.

Bramer Logic Programming with Prolog jetzt bestellen!

Autoren/Hrsg.


Weitere Infos & Material


1;Introduction;5
1.1;Some Technical Details;9
2;Contents;11
3;1 Getting Started;14
3.1;1.1 Starting Prolog;14
3.2;1.2 Prolog Programs;16
3.3;1.3 Data Objects in Prolog: Prolog Terms;21
3.4;Practical Exercise 1;25
4;2 Clauses and Predicates;26
4.1;2.1 Clauses;26
4.2;2.2 Predicates;28
4.3;2.3 Loading Clauses;32
4.4;2.4 Variables;34
4.5;Practical Exercise 2;40
5;3 Satisfying Goals;42
5.1;Introduction;42
5.2;3.1 Unification;44
5.3;3.2 Evaluating Goals;48
5.4;3.3 Backtracking;52
5.5;3.4 Satisfying Goals: A Summary;63
5.6;3.5 Removing Common Variables;65
5.7;3.6 A Note on Declarative Programming;65
5.8;Practical Exercise 3;68
6;4 Operators and Arithmetic;70
6.1;4.1 Operators;70
6.2;4.2 Arithmetic;72
6.3;4.3 Equality Operators;76
6.4;4.4 Logical Operators;79
6.5;Practical Exercise 4;81
7;5 Input and Output;82
7.1;Introduction;82
7.2;5.1 Outputting Terms;82
7.3;5.2 Inputting Terms;84
7.4;5.3 Input and Output Using Characters;85
7.5;5.4 Outputting Characters;86
7.6;5.5 Inputting Characters;86
7.7;5.6 Using Characters: Examples;87
7.8;5.7 Input and Output Using Files;90
7.9;5.8 File Output: Changing the Current Output Stream;90
7.10;5.9 File Input: Changing the Current Input Stream;91
7.11;5.10 Using Files: Examples;92
7.12;Practical Exercise 5;95
8;6 Loops;98
8.1;Introduction;98
8.2;6.1 Looping a Fixed Number of Times;98
8.3;6.2 Looping Until a Condition Is Satisfied;102
8.4;6.3 Backtracking with Failure;107
8.5;Practical Exercise 6;110
9;7 Preventing Backtracking;112
9.1;Introduction;112
9.2;7.1 The Cut Predicate;112
9.3;7.2 Cut with Failure;119
9.4;Practical Exercise 7;121
10;8 Changing the Prolog Database;122
10.1;8.1 Changing the Database: Adding and Deleting Clauses;122
10.2;8.2 Adding Clauses;123
10.3;8.3 Deleting Clauses;124
10.4;8.4 Changing the Database: Example;125
10.5;8.5 Maintaining a Database of Facts;127
10.6;Practical Exercise 8;131
11;9 List Processing;132
11.1;9.1 Representing Data as Lists;132
11.2;9.2 Notation for Lists;133
11.3;9.3 Decomposing a List;135
11.4;9.4 Built-in Predicate: member;138
11.5;9.5 Built-in Predicate: length;139
11.6;9.6 Built-in Predicate: reverse;139
11.7;9.7 Built-in Predicate: append;140
11.8;9.8 List Processing: Examples;142
11.9;9.9 Using findall/3 to Create a List;146
11.10;Practical Exercise 9;149
12;10 String Processing;150
12.1;10.1 Converting Strings of Characters To and From Lists;150
12.2;10.2 Joining Two Strings;152
12.3;10.3 Trimming a String;152
12.4;10.4 Inputting a String of Characters;154
12.5;10.5 Searching a String;155
12.6;10.6 Dividing a String into Its Component Parts;157
12.7;Practical Exercise 10;160
13;11 More Advanced Features;162
13.1;Introduction;162
13.2;11.1 Extending Prolog: Arithmetic;162
13.3;11.2 Extending Prolog: Operations on Strings;168
13.4;11.3 Extending Prolog: Sets;170
13.5;11.4 Processing Terms;173
13.6;Practical Exercise 11;179
14;Appendix 1 Built- in Predicates;180
15;Appendix 2 Built- in Operators;192
16;Appendix 3 Specimen Solutions to Practical Exercises;198
17;Appendix 4 Glossary;222
18;Index;234
19;More eBook at www.ciando.com;0



Ihre Fragen, Wünsche oder Anmerkungen
Vorname*
Nachname*
Ihre E-Mail-Adresse*
Kundennr.
Ihre Nachricht*
Lediglich mit * gekennzeichnete Felder sind Pflichtfelder.
Wenn Sie die im Kontaktformular eingegebenen Daten durch Klick auf den nachfolgenden Button übersenden, erklären Sie sich damit einverstanden, dass wir Ihr Angaben für die Beantwortung Ihrer Anfrage verwenden. Selbstverständlich werden Ihre Daten vertraulich behandelt und nicht an Dritte weitergegeben. Sie können der Verwendung Ihrer Daten jederzeit widersprechen. Das Datenhandling bei Sack Fachmedien erklären wir Ihnen in unserer Datenschutzerklärung.