2.2 Einführung in Prolog Flashcards

1
Q

Prolog - allgemein

A
  • von französischen Informatikern Alain Colmerauer und Philippe Roussel entwickelt
  • vom Logiker Robert Kowalski weiterentwickelt
  • erstmals in den frühen 1970er-Jahren implementiert
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Prolog - Hauptmotivation

A

Einsatz bei der Entwicklung von Systemen zur Verarbeitung natürlicher Sprache und Künstlicher Intelligenz

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Datenverarbeitung - allgemein

A
  • Auf unterster Ebene verarbeitet Computer Informationen in Form der Werte 0 und 1 (Bits)
  • nicht besonders gut für die menschliche Interpretation und Handhabung geeignet
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Programmiersprachen - allgemein

A

abstrahieren von der grundlegenden technischen Ebene
-> kommen Denken, der algorithmischen Beschreibung und den logischen Denkmustern von Menschen näher

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Programmiersprachen - Unterscheidungsmerkmale

A

Grad und der Art der Abstraktionen

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

die meisten Programmiersprachen zur Zeit von Prolog

A

imperative Sprachen

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

imperative Programmiersprachen

A
  • Programm enthält eine Reihe von Anweisungen
  • Maschine muss diesen auf dem Weg zu einem gewünschten Ergebnis oder einer Lösung folgen
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Prolog - Besonderheit

A

deklarativer Programmieransatz

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

deklarativer Programmieransatz - Definition

A
  • Programmierstil
  • Programmierende legen Eigenschaften der gesuchten Lösung fest
  • nicht aber den Algorithmus - Abfolge der Operationen, die zu einer Lösung führen
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Deklarative Programmierung - Vorgehen

A
  • programmierende Person gibt die Merkmale der gewünschten Lösung vor
  • Interpreter erstellt dann Folge von Verarbeitungsschritten zur Erreichung des vorgegebenen Ziels
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Beispiel deklarativer Programmieransatz

A

SQL (Structured Query Language)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

SQL - allgemein

A

Abfragesprache für relationale Datenbanken

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

SQL - Bestandteile Abfrage

A
  • Anweisung mit Tabelle, aus der Datensätze abgerufen werden sollen
  • eine oder mehrere Bedingungen, welche Datensätze erfüllen müssen
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

SQL - Verarbeitung Abfrage

A

Datenbankmanagementsystem generiert automatisch Ausführungsplan (Abfolge von Verarbeitungsschritten), der das in der Abfrage angebene Ergebnis liefert

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Proglog - Bestandteile

A
  • Sammlung von Fakten und Regeln, welche Fakten zueinander in Beziehung setzt
  • Struktur besteht aus Prädikaten und Klauseln
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Prolog - Programmausführung

A

wird durch Suchanfrage (query) an Wissensbasis eingeleitet

17
Q

Analogie Mensch - Prolog - Wissenbasis

A
  • Mensch hat Gehirn
  • voll von Daten, Fakten, Zahlen und Wissensbrocken
  • im Laufe des Lebens angesammelt
18
Q

Analogie Mensch - Prolog - Regeln

A

Menschen kennen Regeln zu den Fakten, von denen sie viele im Laufe der Zeit beobachtet und angewendet haben
-> logische Regeln, deren Anwendung zu guten Entscheidungen führt

19
Q

Analogie Mensch - Prolog - Lösungen von Problemen

A
  • Mensch ist neugierig will lernen, wie er Umgebung zum Besseren verändern können
    -> stellen oft Fragen
  • Auf Grundlage von Fakten und Regelanwendung ergeben sich vernünftige, auf gesundem Menschenverstand beruhende Antworten
    -> Lösungen für die wahrgenommenen Probleme
20
Q

Prolog - Grund für Entwicklung

A

um Prozesse in Form von Logik erster Ordnung zu formalisieren

21
Q

Prolog - Prädikate

A

boolesche Funktion, die einem Objekt X einen Wahrheitswert zuweist
-> häufig verwendet, um Eigenschaften von Objekten zu beschreiben

22
Q

Prolog - Klauseln

A

logischer Ausdruck, der aus einer endlichen Anzahl von elementaren Aussagen gebildet wird

23
Q

Prolog-Programme - Erster Schritt

A

Deklaration von Fakten und Beziehungen (Zusammenhängen)

24
Q

Prolog-Programme - Beispiel Deklaration von Fakten und Beziehungen

A

A und B sind beide männlich.
A und B haben denselben Vater.
A und B haben dieselbe Mutter.
A und B sind nicht dasselbe.

„Joachim besitzt ein Buch“
-> Beziehung des Eigentums zwischen Joachim und dem Buch

25
Prolog-Programme - nach Erklärung der Beziehungen
können: * Fakten betrachtet * Fragen gestellt * Variablen einbezogen * Ziele formuliert * Muster abgeglichen werden
26
* Prolog-Sprachkonstrukt: Fakt * Prolog-Syntax: lectures (Fischer, DLMAIAI01)
* Beispiel für Prolog-Klausel * Stellt Tatsache fest, dass Dr. Fischer den Kurs DLMAIAI01 unterrichtet
27
* Prolog-Sprachkonstrukt: Prädikat * Prolog-Syntax: professor/1 professor(Fischer). professor(Schmidt). professor(Meier).
* Definiert Ein-Argument-Prädikat „professor“ durch drei Fakten * Fischer, Schmidt und Meier sind Professor:innen
28
* Prolog-Sprachkonstrukt: Regel * Prolog-Syntax: technicalCourse(X) :– engineeringCourse(X)
* Alle Ingenieurstudiengänge sind technische Studiengänge * Zu beachten ist die Verwendung der Variablen X
29
* Prolog-Sprachkonstrukt: Abfrage * Prolog-Syntax: ? – lectures(Fischer, DLMAIAI01)
Unterrichtet Dr. Fischer den Kurs DLMAIAI01?
30
* Prolog-Sprachkonstrukt: Ziel * Prolog-Syntax: ? – lectures(Fischer, X)
Welche Kurse unterrichtet Dr. Fischer? Zu beachten ist die Verwendung der Variablen X
31
Prolog - Bedeutung
* auf einzigartiger Weise für Umgang mit Logik geeignet * wurde für Abfrage von Wissensbasen in Vielzahl von kommerziellen Anwendungen eingesetzt
32
Prolog - Beispiele für Anwendungen
* Umweltstudien zur Modellierung von Wetterphänomenen -> Aufbau eines Systems für Wettervorhersage und Ausbreitung Luftverschmutzung * mehrere Systeme für Wasserversorgungsunternehmen -> für Wasserverteilung und -planung, insbesondere in Notfällen * Flugzeughersteller Boeing -> System namens CASEy, das Mitarbeitenden in Werkstätten beim Umgang mit elektrischen Teilen und in Einhaltung ordnungsgemäßer Betriebsabläufe anleitete