|
|
|||
|
||||
OverviewDas Buch ist eine Einführung in die logische Programmierung in der Form eines Kurses, in dem die Grundlagen der logischen Programmierung, die logische Programmiersprache Prolog und ihre Programmierpraxis, sowie einige Anwendungen vorgestellt werden. Nach einer kurzen Begriffsbestimmung der logischen Programmierung wird das sogenannte reine Prolog als Programmiersprache anhand von Beispielen eingeführt. Die logischen Hintergründe werden dabei nur angedeutet. Anschließend werden die Erweiterungen vorgestellt, die Prolog zur vollen Programmiersprache machen. Es folgen etablierte Programmiertechniken, die Prolog wie jede andere Programmiersprache besitzt. Mit diesen Vorkenntnissen ist es nun leichter, die theoretischen Grundlagen der logischen Programmierung zu verstehen. Es wird gezeigt, wie Logik zur Wissensdarstellung und zur Ableitung von weiterem Wissen verwendet werden kann. Ferner wird der Weg von der Prädikatenlogik zur logischen Programmiersprache Prolog nachvollzogen. Den Schluß bilden Anwendungen aus den Gebieten wissensbasierte Systeme und Computerlinguistik. Full Product DetailsAuthor: Norbert E. FuchsPublisher: Springer Verlag GmbH Imprint: Springer Verlag GmbH Dimensions: Width: 17.00cm , Height: 1.30cm , Length: 24.40cm Weight: 0.490kg ISBN: 9783211822357ISBN 10: 3211822356 Pages: 224 Publication Date: 25 October 1990 Audience: Professional and scholarly , Professional & Vocational Format: Paperback Publisher's Status: Active Availability: In Print This item will be ordered in for you from one of our suppliers. Upon receipt, we will promptly dispatch it out to you. For in store availability, please contact us. Language: German Table of ContentsEinfuhrung.- 1 Was ist Logische Programmierung?.- 1.1 Logik als Programmiersprache.- 1.2 Logische Programmierung und Prolog.- 1.3 Prozedurale und deklarative Programmierung.- Prolog.- 2 Reines Prolog.- 2.1 Familienbeziehungen als Prolog-Datenbank.- 2.2 Konjunktive Fragen und Regeln.- 2.3 Prologs Beweisverfahren.- 2.4 Suchbaume.- 2.5 Tracing.- 2.6 Rekursive Regeln.- 2.7 Linksrekursion.- 2.8 Prologs Syntax.- 2.9 Listen.- 2.9.1 Listennotation.- 2.9.2 Operationen mit Listen.- 2.10 Operatoren.- 3 Volles Prolog.- 3.1 Arithmetik.- 3.2 Extralogische Pradikate.- 3.2.1 Ein- und Ausgabe.- 3.2.2 Laden von Prolog-Programmen.- 3.2.3 Zugriff auf Prolog-Programme.- 3.3 Strukturuntersuchungen.- 3.3.1 Typenbestimmung.- 3.3.2 Analyse und Synthese von Termen.- 3.4 Metalogische Pradikate.- 3.4.1 Test auf Instanzierung.- 3.4.2 Unifizierbarkeit.- 3.4.3 Identitat von Termen.- 3.4.4 Metavariablen, Systempradikat call/1.- 3.5 Cut.- 3.5.1 Beschneiden von Suchbaumen.- 3.5.2 Grune und rote Cuts.- 3.5.3 Prolog-Kontrollstrukturen.- 3.6 Negation.- 3.6.1 Closed World Assumption.- 3.6.2 Negation As Failure.- 3.6.3 Variablen in negierten Zielen.- 3.6.4 Anwendungen von Negation As Failure.- 3.6.5 Negation As Failure und logische Negation.- 3.7 Mengenpradikate.- 3.7.1 Alle Loesungen eines Ziels.- 3.7.2 Anwendungen der Mengenpradikate.- 4 Prolog-Programmiertechniken.- 4.1 Schleifen.- 4.1.1 Failure-Driven Loops.- 4.1.2 Schleifen durch implizites Backtracking.- 4.1.3 Generate and Test.- 4.1.4 Schleifen durch Rekursion.- 4.1.5 Zahlende Schleifen.- 4.2 Akkumulatoren.- 4.2.1 Iterative Algorithmen.- 4.2.2 Endrekursive Pradikate.- 4.3 Differenzlisten.- 4.3.1 Listen als Differenzen zweier Listen.- 4.3.2 Einfugen am Ende einer Liste.- 4.3.3 Verketten von Differenzlisten.- 4.3.4 Anwendungen von Differenzlisten.- Logische Grundlagen.- 5 Logik zur Wissensreprasentation.- 5.1 Konzeptualisierungen.- 5.1.1 Russische Puppen.- 5.1.2 Welche Konzeptualisierung?.- 5.2 Pradikatenlogik.- 5.2.1 Wissensdarstellung durch Pradikatenlogik.- 5.2.2 Syntax der Pradikatenlogik.- 5.3 Deklarative Semantik.- 5.3.1 Interpretationen.- 5.3.2 Relative Wahrheit.- 5.3.3 Modelle.- 5.3.4 Erfullbarkeit und Gultigkeit.- 5.3.5 Sokrates als sterblicher Mensch.- 5.3.6 Logische Konsequenz.- 5.3.7 Refutation.- 5.3.8 Herbrand Interpretationen.- 6 Logische Inferenz.- 6.1 Beweise.- 6.2 Korrektheit und Vollstandigkeit.- 6.3 Klauselform der Pradikatenlogik.- 6.3.1 Umwandlung in Klauselform.- 6.3.2 Klauseln als Implikationen.- 6.4 Resolution.- 6.4.1 Resolution als Beweismethode.- 6.4.2 Resolutionsbeispiele.- 6.5 Unifikation.- 6.6 Resolution und Refutation.- 6.7 Korrektheit und Vollstandigkeit der Resolution.- 6.8 Resolutionsstrategien.- 6.9 Horn-Klauseln.- 6.10 SLD-Resolution.- 6.11 Semantik von Prolog-Programmen.- 6.11.1 Deklarative und prozedurale Semantik.- 6.11.2 Deklarative Fehlersuche.- Anwendungen.- 7 Suchverfahren.- 7.1 Zustandsraume.- 7.2 Suchen mit Prologs Suchstrategie.- 7.3 Explizite Tiefensuche.- 7.4 Breitensuche.- 7.5 Tiefensuche in zyklischen Graphen.- 7.6 Breitensuche in zyklischen Graphen.- 7.7 Begrenzte Tiefensuche.- 7.8 Beispiele.- 8 Logische Grammatiken.- 8.1 Kontextfreie Sprachen.- 8.2 Axiomatisierung der kontextfreien Grammatik.- 8.3 Darstellung von Ausdrucken durch Listen.- 8.4 Weitere Argumente: Numerus.- 8.5 Definite Clause Grammars (DCGs).- 8.6 Grammatikregeln.- 8.7 Ableitungsbaume.- 8.8 Prolog-Ziele in Grammatikregeln.- 8.9 Systempradikat phrase/[2, 3].- 8.10 Beispiele.- 9 Metainterpreter.- 9.1 Interpreter fur problem-spezifische Sprachen.- 9.1.1 Endlicher Automat.- 9.1.2 Partielle Evaluation des endlichen Automaten.- 9.1.3 Vergleich endlicher Automat mit DCG.- 9.2 Der einfachste Metainterpreter fur Prolog.- 9.3 Simulation von Prologs Ablaufstrategie.- 9.4 Interpretation von Systempradikaten.- 9.4.1 Abfangen von Systempradikaten.- 9.4.2 Expliziter Beweis von Systempradikaten.- 9.4.3 Metainterpreter fur Cut.- 9.5 Erzeugung zusatzlicher Informationen.- 9.5.1 Zahlen der Inferenzschritte.- 9.5.2 Expliziter Beweisbaum.- 9.5.3 Ein einfacher partieller Evaluator.- 9.6 Andere Resolutionsstrategien.- 9.6.1 Metainterpreter mit Tiefenbegrenzung.- 9.6.2 Ein Metainterpreter, der Ziele aufschiebt.- 9.7 Metainterpreter fur Expertensysteme.- 9.7.1 Ein Metainterpreter, der Fragen stellt.- 9.7.2 Warum-Erklarungen.- 9.7.3 Wie-Erklarungen.- 9.7.4 Forward Chaining.- Kommentierte Literaturliste.ReviewsAuthor InformationTab Content 6Author Website:Countries AvailableAll regions |