Die logische Schlussregel "modus ponens"
A → B
A
B
|
Bemerkungen:
A, B sind aussagenlogische Variablen.
A, B, ¬A, ¬B, A ∧ B, A ∨ B, A → B, A ↔ B sind aussagenlogische
Formeln.
In nebenstehender Inferenzregel werden die Formeln A → B und A
mit dem Wahrheitswert 1 (W, wahr, true) belegt. Der Wahrheitswert 1 für B folgt
dann aus der Regel.
Die Belegung gewisser Formeln mit Wahrheitswerten heißt auch
Interpretation.
Eine Interpretation, die eine aussagenlogischer Formel φ (z.B. φ = (A→B)∧A)
wahr macht, heißt Modell von φ.
|
Umsetzung an einem Prolog-Beispiel:
(1) A → B = Wenn Peter cool ist, dann ist auch Norman cool.
(2) A = Peter ist cool.
(3) B = Norman ist cool.
Wir teilen (2) und (1) der
Wissensbasis mit:
%Fakten
cool(peter).
%Regeln
cool(norman) :- cool(peter).
|
Die
Anfrage an das System, ob Norman cool ist, wird mit
yes beantwortet.
Das System überprüft zunächst, ob "cool(norman)" schon unter den Fakten vorkommt. Dabei wird
in der Reihe der Eingaben vorgegangen. Klappt das nicht, dann werden die Regeln von oben nach
unten nach einem passenden
Regelkopf durchsucht. Wird ein passender Regelkopf gefunden,
so wird nach dem gleichen Prinzip versucht, die
Voraussetzungen (Prämissen) wahr zu
machen.
Fragt man nach allen ?, die cool sind, so wird die Variable X nacheinander an die möglichen
Kandidaten (aus Fakten oder Regelköpfen) gebunden und versucht, das
Ziel wahr zu
machen.
?- cool(X).
X = peter ;
X = norman ;
No
|
Aufgabe:
Ändere die Reihenfolge in der Wissensbasis und beobachte die Auswirkungen.