Skip to main content

1988 | Buch | 2. Auflage

Prolog

Grundlagen und Anwendungen

verfasst von: Dr. rer. nat. Hans Kleine Büning, Dipl.-Wi.-Ing. Stefan Schmitgen

Verlag: Vieweg+Teubner Verlag

Buchreihe : Leitfäden der angewandten Informatik

insite
SUCHEN

Inhaltsverzeichnis

Frontmatter
1. Einführung
Zusammenfassung
Es gibt sicherlich nicht nur einen Grund für die immer größer werdende Popularität der Programmiersprache Prolog, die um 1970 entwickelt worden ist. Dazu gehört wohl der zunehmende Anteil nichtnumerischer Problemstellungen, sowie die Bereiche der Expertensysteme und der natürlichsprachlichen Verarbeitung, an die viele Hoffnungen geknüpft werden und die sich in Prolog relativ gut realisieren lassen. Die Nähe zu relationalen Datenbanken mag ein weiterer Grund sein. Nicht zuletzt als eine der Sprachen im Forschungsbereich der “Künstlichen Intelligenz” findet Prolog immer mehr Verbreitung. Dies äußert sich auch darin, daß heutzutage für fast alle Computersysteme Interpreter zur Verfügung stehen und für einige auch schon Compiler existieren.
Hans Kleine Büning, Stefan Schmitgen
2. Einfache Konstrukte und Programme in Prolog
Zusammenfassung
In Prolog werden Probleme beschrieben. In diesem Kapitel werden wir darstellen, welches die wichtigsten Konstrukte bei der Beschreibung der Probleme sowie der gewünschten Lösungen sind. Dabei werden wir hier weniger auf formale Feinheiten eingehen, sondern mehr ein Gefühl dafür schaffen, was Programmieren in Prolog beinhaltet.
Hans Kleine Büning, Stefan Schmitgen
3. Elementare Prädikatenlogik
Zusammenfassung
Vom Ansatz und der Idee ist Prolog eine Programmiersprache, in der die vorliegenden Probleme in der Sprache der Logik beschrieben werden. Die positive Beantwortung einer Frage ist dann nichts anderes als die Feststellung, daß der gefragte Sachverhalt aus der Programmformel folgt. Diese Idee spiegelt sich wieder in dem Namen PROLOG als eine Abkürzung für PROgramming in LOGic.
Hans Kleine Büning, Stefan Schmitgen
4. Die Syntax von Prolog
Zusammenfassung
Zur Zeit gibt es noch keine standardisierte Syntax von Prolog, trotzdem wollen wir an dieser Stelle die Beschreibung einer Syntax vornehmen. Wir beziehen uns dabei auf C-Prolog, einem Dialekt von Prolog, der weitgehend mit anderen Dialekten wie z.B. Arity-Prolog für PC kompatibel ist.
Hans Kleine Büning, Stefan Schmitgen
5. Einfache Built-in-Prädikate
Zusammenfassung
Wie schon in Kapitel 2 erwähnt, können wir bei der Programmierung mit Prolog auf vorgegebene Ausdrucksmittel, die Built-in-Prädikate, zurückgreifen. Diese Prädikate stellen einen wesentlichen Bestandteil der Programmiersprache dar.
Hans Kleine Büning, Stefan Schmitgen
6. Ablauf der Lösungssuche in Prolog
Zusammenfassung
In Prolog programmieren wir im Gegensatz zu prozeduralen Sprachen keinen Algorithmus, mit dem ein Problem gelöst werden soll. Wir beschreiben lediglich das Problem an sich, wobei das System den Lösungsalgorithmus zur Verfügung stellt. Mit diesem Algorithmus haben wir ein allgemeines Verfahren, mit dem versucht wird, alle in Prolog beschriebene Probleme zu lösen.
Hans Kleine Büning, Stefan Schmitgen
7. Listen und Listenmanipulation
Zusammenfassung
Im Kapitel über die Syntax von Prolog haben wir schon kurz den Datentyp list kennengelernt. In Prolog kommt diesem Datentyp eine besondere Bedeutung zu, da er in einer Vielzahl von Problemstellungen zur Repräsentierung der Daten verwendet wird.
Hans Kleine Büning, Stefan Schmitgen
8. Terme, Strukturen und Operatoren
Zusammenfassung
Oftmals zeigt ein Prädikat nur die gewünschte Wirkung, wenn ein oder mehrere Argumente einem bestimmten Typ genügen. Ansonsten liefert es vielleicht auch ein Ergebnis, welches aber keinen Sinn macht, oder es besteht die Gefahr einer Endlosschleife. Beispielsweise durfte beim Prädikat permutation/2 im vorigen Abschnitt das erste Argument keine ungebundene Variable sein.
Hans Kleine Büning, Stefan Schmitgen
9. Programmkontrolle
Zusammenfassung
Die in diesem Abschnitt zusammengestellten Built-in-Prädikate sind ausführlich schon im Kapitel 6 erläutert worden und werden lediglich der Vollständigkeit halber hier nochmals aufgeführt. Entsprechend findet sich in diesem Abschnitt nur eine kurze Erklärung und keine Beispiele.
Hans Kleine Büning, Stefan Schmitgen
10. Filehandling
Zusammenfassung
In diesem Kapitel werden die Möglichkeiten behandelt, Dateien von Prolog aus zu bearbeiten. Dazu können wir alle Prädikate verwenden, die wir im Abschnitt über Input und Output kennengelernt haben. Das Schreiben auf den Bildschirm und Lesen von der Tastatur ist nämlich nichts anderes als das Bearbeiten einer vordefinierten Datei. Diese hat den Namen user.
Hans Kleine Büning, Stefan Schmitgen
11. Manipulieren der Datensammlung
Zusammenfassung
Zwei Built-in-Prädikate, mit denen wir die Datensammlung verändern können, haben wir im einführenden Kapitel 2 schon kennengelernt, nämlich consult/1 und reconsult/1. Diese wollen wir nochmal kurz wiederholen.
Hans Kleine Büning, Stefan Schmitgen
12. Sonstige Built-in-Prädikate
Zusammenfassung
Oftmals gibt es zu einer Anfrage mehrere Lösungen, die wir durch Eingabe des Semikolons nacheinander erhalten. Wünschenswert ist ein Prädikat, mit dem wir alle möglichen Lösungen beispielsweise in einer Liste sammeln, um sie anschließend dann weiterverarbeiten zu können. Dadurch entfällt die künstliche Initiierung eines Backtracking, um alle Antworten zur Weiterverarbeitung zu erhalten, wie sie beispielsweise notwendig war, um alle Permutationen einer Liste zu erhalten. Für diesen Zweck gibt es zwei Built-in-Prädikate.
Hans Kleine Büning, Stefan Schmitgen
13. Anwendungen
Zusammenfassung
In diesem Kapitel wollen wir zu einigen Gebieten Problembeschreibungen in Prolog vorstellen. Um den Rahmen dieses Buches nicht zu sprengen, sind alle Beispiele bis auf das Kartenspiel “Siebzehn und Vier” relativ kurz gehalten. In diesem Kapitel setzen wir ein gewisses Verständnis von Prolog voraus. Entsprechend sind auch die Erklärungen zur Lösungsfindung etwas kürzer als in den bisherigen Kapiteln. Den wichtigen Anwendungsbereich der Expertensysteme werden wir dabei wegen seiner besonderen Bedeutung in Kapitel 14 gesondert vorstellen.
Hans Kleine Büning, Stefan Schmitgen
14. Expertensysteme
Zusammenfassung
Bevor wir einen Lösungsansatz für die Implementation eines Expertensystems angeben, wollen wir den Begriff Expertensystem, oder besser wissensbasiertes System, erläutern und die generelle Struktur solcher Systeme kurz darstellen.
Hans Kleine Büning, Stefan Schmitgen
Backmatter
Metadaten
Titel
Prolog
verfasst von
Dr. rer. nat. Hans Kleine Büning
Dipl.-Wi.-Ing. Stefan Schmitgen
Copyright-Jahr
1988
Verlag
Vieweg+Teubner Verlag
Electronic ISBN
978-3-322-89542-4
Print ISBN
978-3-519-12484-9
DOI
https://doi.org/10.1007/978-3-322-89542-4