Wissensbasierte Systeme – Logik – Jan Hladik DHBW Stuttgart Sommersemester 2017 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 1 / 138 Inhalt 1 Einführung 2 Aussagenlogik 3 Prädikatenlogik 4 Beschreibungslogiken Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 2 / 138 Dozent Jan Hladik Dipl.-Inform.: RWTH Aachen, 2001 Dr. rer. nat.: TU Dresden, 2007 Industrieerfahrung: SAP Research Öffentlich geförderte Forschungsprojekte Zusammenarbeit mit Produktgruppen Betreuung von Studenten und Doktoranden Professor: DHBW Stuttgart, 2014 Forschung Semantic Web, Semantische Technologien, Schlussfolgerungsverfahren Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 3 / 138 Literatur Vorlesungsmaterial http://wwwlehre.dhbw-stuttgart.de/~hladik/WBS/ Logik Dirk W. Hoffmann: Theoretische Informatik Karl Stroetmann: Theoretische Informatik I - Logik und Mengenlehre http://wwwlehre.dhbw-stuttgart.de/~stroetma/Logic/ Beschreibungslogik Franz Baader et al.: An Introduction to Description Logic Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 4 / 138 Inhalt 1 Einführung 2 Aussagenlogik Syntax Semantik Schlussfolgerungsverfahren 3 Prädikatenlogik 4 Beschreibungslogiken Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 5 / 138 Inhalt 1 Einführung 2 Aussagenlogik Syntax Semantik Schlussfolgerungsverfahren 3 Prädikatenlogik 4 Beschreibungslogiken Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 6 / 138 Aussagenlogik Einfachste in dieser Vorlesung betrachtete Logik begrenzte Ausdrucksstärke einfach zu verstehen und anzuwenden enthält verschiedene Konzepte, die auch in ausdrucksstärkeren Logiken vorkommen Aussagenvariablen repräsentieren atomare Aussagen Beispiel A ; „Es regnet.“ Junktoren repräsentieren Zusammenhänge zwischen Aussagen Beispiel A→B ; „Wenn es regnet, wird die Erde nass.“ Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 7 / 138 Syntax der Aussagenlogik Definition (Aussagenlogische Formel) Sei V eine Menge von Aussagenvariablen. Jedes X ∈ V ist eine aussagenlogische Formel. > und ⊥ sind aussagenlogische Formeln. Wenn ϕ und ψ aussagenlogische Formeln sind, dann auch ¬ϕ (Negation) ϕ → ψ (materiale Implikation) ϕ ∧ ψ (Konjunktion) ϕ ↔ ψ (materiale Äquivalenz) ϕ ∨ ψ (Disjunktion) (ϕ) (Klammern) Beispiele A∧B A ∧ (B ∨ C ) A → (B ∧ (C ↔ D) ∨ (D → E)) ⊥∨A ¬(A ∨ B) A ↔ (A ↔ D) ¬> C → (B ∨ D) ((A ↔ B) ↔ (C ↔ D)) → E Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 8 / 138 Vorrang und Assoziativität der Junktoren Vorrang der Junktoren: ¬ ∧ ∨ → ↔ Beispiel A ∧ ¬B → B ∨ C bedeutet (A ∧ (¬B)) → (B ∨ C ) Gleiche Junktoren werden links-assoziativ gelesen. Beispiel A→B→C Jan Hladik (DHBW Stuttgart) bedeutet (A → B) → C Wissensbasierte Systeme – Logik – Sommersemester 2017 9 / 138 Inhalt 1 Einführung 2 Aussagenlogik Syntax Semantik Schlussfolgerungsverfahren 3 Prädikatenlogik 4 Beschreibungslogiken Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 10 / 138 Semantik der Aussagenlogik Aussagevariablen erhalten Wert 0 oder 1 Formel wird wahr oder falsch Definition (Interpretation in der Aussagenlogik) Eine Interpretation ist eine Funktion I : V → B mit einer Menge von Aussagevariablen V der binären Menge B = {0, 1} Beispiel A 7→ 0 ; „es regnet nicht“ Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 11 / 138 Interpretation komplexer Formeln ⊥I 0 >I 1 (ϕ ∧ ψ)I ϕI 0 ϕI (¬ϕ)I 1 ψI 0 1 0 0 ψI 0 1 0 1 (ϕ → ψ)I ϕI 0 1 ψI 0 1 Jan Hladik (DHBW Stuttgart) 1 1 0 1 1 0 (ϕ ∨ ψ)I ϕI 0 1 0 1 1 1 (ϕ ↔ ψ)I ϕI 0 1 ψI 0 1 0 1 Wissensbasierte Systeme – Logik – 1 0 0 1 Sommersemester 2017 12 / 138 Beispiele: Interpretationen Die Interpretation I = {A 7→ 1, B 7→ 1, C 7→ 0} macht die Formel . . . B wahr; A ∧ B wahr; A ∧ C falsch; (A ∧ B) ∨ (A ∧ C ) wahr; ((A ∧ B) ∨ (A ∧ C )) → C falsch. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 13 / 138 Äquivalenz Definition (Äquivalenz) Zwei aussagenlogische Formeln ϕ und ψ sind (logisch) äquivalent, wenn jede Interpretation beiden Formeln denselben Wahrheitswert zuordnet, d. h.: ϕI = ψ I für jedes I Manche Operatoren lassen sich durch äquivalente Ausdrücke ersetzen: Satz (Äquivalenzen) ϕ ↔ ψ ist äquivalent zu (ϕ → ψ) ∧ (ψ → ϕ) oder (ϕ ∧ ψ) ∨ (¬ϕ ∧ ¬ψ) ϕ → ψ ist äquivalent zu ¬ϕ ∨ ψ ϕ ∧ ψ ist äquivalent zu ¬(¬ϕ ∨ ¬ψ) ϕ ∨ ψ ist äquivalent zu ¬(¬ϕ ∧ ¬ψ) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 14 / 138 Tautologien Definition (Tautologie) Eine Tautologie ist eine Formel, die in jeder Interpretation wahr ist. Beispiele (Tautologien) A ↔ A (Identität) ¬(A ∧ ¬A) (Ausgeschlossener Widerspruch) A ∨ ¬A (Ausgeschlossenes Drittes) A → B ↔ ¬B → ¬A (Kontraposition, Umkehrschluss) (A → B) ∧ (A → ¬B) → ¬A (Reductio ad Absurdum, Widerspruchsbeweis) (A → B) ∧ A → B (Modus Ponens) (A → B) ∧ ¬B → ¬A (Modus Tollens) (A ∨ B) ∧ (A → C ) ∧ (B → C ) → C (Fallunterscheidung) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 15 / 138 Weitere Tautologien: Rechenregeln A ∧ B ↔ B ∧ A (Kommutativität) (A ∧ B) ∧ C ↔ A ∧ (B ∧ C ) (Assoziativität) (A ∧ B) ∨ C ↔ (A ∨ C ) ∧ (B ∨ C ) (Distributivität) ¬(A ∧ B) ↔ ¬A ∨ ¬B (Gesetz von De Morgan) A ∧ > ↔ A; A ∨ ⊥ ↔ A (Neutrales Element) A ∧ ¬A ↔ ⊥; A ∨ ¬A ↔ > (Inverses Element) A ∧ ⊥ ↔ ⊥; A ∨ > ↔ > (Absorbierendes Element) A ∧ A ↔ A; A ∨ A ↔ A (Idempotenz) ¬¬A ↔ A (Doppelte Negation) Kommutativität, Assoziativität, Distributivität und das Gesetz von de Morgan gelten auch, wenn ∧ und ∨ gegeneinander ausgetauscht werden. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 16 / 138 Modelle, Gültigkeit, Erfüllbarkeit Definition (Modell) Ein Modell für eine Formel ϕ ist eine Interpretation I, die ϕ wahr macht. (I |= ϕ). I = {A 7→ 1, B 7→ 0} ist Modell für A ∨ B, aber nicht für A ∧ B. Definition (Erfüllbarkeit, Gültigkeit) Eine Formel ϕ ist erfüllbar, wenn sie ein Modell hat. Eine Formel ϕ ist gültig ( |= ϕ) wenn jede Interpretation ein Modell ist (d. h. wenn ϕ eine Tautologie ist). erfüllbar A, A ∨ B, gültig A ∨ ¬A, Jan Hladik (DHBW Stuttgart) A ∧ ¬B, A → A, A↔B A ↔ ¬(¬A) Wissensbasierte Systeme – Logik – Sommersemester 2017 17 / 138 Inhalt 1 Einführung 2 Aussagenlogik Syntax Semantik Schlussfolgerungsverfahren Resolution Tableaus 3 Prädikatenlogik 4 Beschreibungslogiken Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 18 / 138 Schlussfolgerung in der Aussagenlogik Bestimmung der Eigenschaften einer Formel ϕ gültig (ϕ ist eine Tautologie; jede Interpretation ist ein Modell) erfüllbar (Es gibt ein Modell für ϕ) falsifizierbar (Es gibt eine Interpretation, die kein Modell für ϕ ist) unerfüllbar (Es gibt keine Modelle für ϕ) Bestimmung, ob die Formel ϕ die Formel ψ (logisch) impliziert (ϕ |= ψ), d. h. ob jedes Modell für ϕ auch Modell für ψ ist Anmerkung: Formeln, die erfüllbar und falsifizierbar (also weder gültig noch unerfüllbar) sind, werden auch kontingent genannt. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 19 / 138 Beweis der Gültigkeit: Äquivalenzumformungen Beispiel (Reductio ad Absurdum) (A → B) ∧ (A → ¬B) → ¬A (¬A ∨ B) ∧ (¬A ∨ ¬B) → ¬A ¬((¬A ∨ B) ∧ (¬A ∨ ¬B)) ∨ ¬A ¬(¬A ∨ B) ∨ ¬(¬A ∨ ¬B) ∨ ¬A (A ∧ ¬B) ∨ (A ∧ B) ∨ ¬A (A ∧ (¬B ∨ B)) ∨ ¬A (A ∧ >) ∨ ¬A A ∨ ¬A > Ersetzung von → (zweimal) Ersetzung von → De Morgan De Morgan (zweimal) Distributivität Ausgeschlossenes Drittes > ist neutrales Element für ∧ Ausgeschlossenes Drittes Nachteile: Transformationen müssen geraten werden. Wenn ϕ nicht gezeigt werden kann, folgt nicht, dass ϕ nicht gültig ist. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 20 / 138 Beweis der Gültigkeit: Wahrheitstabelle Beispiel (Reductio ad Absurdum) A B 0 0 0 1 1 0 1 1 C := A → B 1 1 0 1 D := A → ¬B 1 1 1 0 C ∧ D ¬A 1 1 1 1 0 0 0 0 C ∧ D → ¬A 1 1 1 1 Nachteile: ineffizient, besonders bei vielen Variablen („exponentielle Komplexität“) redundant, da viele Varianten keinen Einfluss auf das Ergebnis haben Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 21 / 138 Inhalt 1 Einführung 2 Aussagenlogik Syntax Semantik Schlussfolgerungsverfahren Resolution Tableaus 3 Prädikatenlogik 4 Beschreibungslogiken Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 22 / 138 Resolution John Alan Robinson: A machine-oriented logic based on the resolution principle (1965) Erfüllbarkeitstest für Formel ϕ Erfüllbarkeitstest entscheidet auch Gültigkeit |= ϕ gilt gdw. ¬ϕ unerfüllbar ist. (logische) Implikation ϕ |= ψ gilt gdw. ϕ ∧ ¬ψ unerfüllbar ist. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – J. A. Robinson (1930–2016) Sommersemester 2017 23 / 138 Resolutionsprinzip Finde Widerspruch in ϕ betrachte ϕ als Menge von Disjunktionen (Klauseln) suche Paare von Klauseln C1 , C2 mit gegensätzlichen Literalen L, ¬L erzeuge Resolvente C3 durch Vereinigen der Elternklauseln C1 und C2 und Entfernen von L und ¬L C3 ist nicht äquivalent zu C1 ∧ C2 ! C1 ∧ C2 erfüllbar ; C3 erfüllbar C3 unerfüllbar ; C1 ∧ C2 unerfüllbar leere Klausel 2: Widerspruch Beispiel (ϕ = (X ∨ Y ) ∧ (¬Y ∨ Z ) ∧ ¬Z ∧ ¬X ) X ∨Y ¬Y ∨ Z ¬Z ¬X X ∨Z X 2 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 24 / 138 Literale Definition (Literal) Ein Literal ist eine (möglicherweise negierte) Aussagenvariable. Beispiel Für die Variablenmenge {A, B} ist die Menge der möglichen Literale {A, ¬A, B, ¬B}. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 25 / 138 Konjunktive Normalform Definition (Konjunktive Normalform) Eine aussagenlogische Formel ϕ ist in konjunktiver Normalform (KNF), wenn ϕ eine Konjunktion von Disjunktionen von Literalen ist. Beispiele (X ∨ Y ) ∧ (¬Y ∨ Z ) ∧ ¬Z ∧ ¬X ist in KNF; (X ∧ Y ) ∨ ¬(¬Y ∨ Z ) ist nicht in KNF. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 26 / 138 Transformation in KNF Satz Jede aussagenlogische Formel kann in eine äquivalente Formel in KNF transformiert werden. Ziel: (L1 ∨ L2 ∨ L3 ) ∧ (L4 ∨ L5 ) ∧ L6 . . . Methode: 1. eliminiere materiale Implikation ϕ→ψ 1. und materiale Äquivalenz ϕ↔ψ 2. Gesetze von De Morgan ¬(ϕ ∨ ψ) 3. eliminiere doppelte Negation ¬¬ϕ 4. Distributivgesetz ϕ ∨ (ψ ∧ χ) 5. Assoziativgesetz ϕ ∨ (ψ ∨ χ) ; ; ; ; ; ; ¬ϕ ∨ ψ ϕ ∧ ψ ∨ ¬ϕ ∧ ¬ψ ¬ϕ ∧ ¬ψ ϕ (ϕ ∨ ψ) ∧ (ϕ ∨ χ) ϕ∨ψ∨χ Beispiel (X ∧ Y ) ∨ ¬(¬Y ∨ Z ) Jan Hladik (DHBW Stuttgart) ; (X ∨ Y ) ∧ (Y ∨ Y ) ∧ (X ∨ ¬Z ) ∧ (Y ∨ ¬Z ) Wissensbasierte Systeme – Logik – Sommersemester 2017 27 / 138 Übung: Konjunktive Normalform Transformieren Sie die folgenden Formeln in KNF: 1 (X ∨ Y ) ∧ (A ∧ B) 2 (X ∨ Y ) → (A ∨ B) 3 X ∨ (¬A ∧ ¬(B ∧ ¬C )) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 28 / 138 Klauseln Definition (Klausel) Eine Klausel ist eine als Menge geschriebene Disjunktion von Literalen. Aufgrund von Idempotenz und Kommutativität ist es möglich und sinnvoll, Disjunktionen als Mengen zu betrachten. Beispiel (X ∨ ¬Y ∨ Z ) ; {X , ¬Y , Z } Jede AL-Formel (in KNF) kann als Menge von Klauseln betrachtet werden. Beispiel ϕ = (X ∨ Y ) ∧ (¬Y ∨ Z ) ∧ ¬Z ∧ ¬X K(ϕ) = {{X , Y }, {¬Y , Z }, {¬Z }, {¬X }} Intuitiv: ∧ zwischen Mengen; ∨ zwischen Elementen der einzelnen Mengen Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 29 / 138 Resolution von Klauseln Gegeben: zwei Klauseln C1 = {X , Y } und C2 = {¬Y , Z }. Gesucht: Modell für C1 ∧ C2 . In einer Interpretation I ist Y I entweder 0 oder 1. wenn Y I = 1 gilt, folgt C1I = 1, und C2I = 1 gilt gdw. Z I = 1; wenn Y I = 0 gilt, folgt C2I = 1, und C1I = 1 gilt gdw. X I = 1. Jedes Modell für C1 und C2 ist auch Modell für C3 = {X , Z }. Wenn {C1 , C2 } erfüllbar ist, dann auch {C1 , C2 , C3 }. Definition (Resolvente) Seien C1 = {L1 , L2 , L3 , . . .} und C2 = {¬L1 , L6 , L7 , . . .} AL-Klauseln. Dann ist C3 = {L2 , L3 , . . . , L6 , L7 , . . .} eine Resolvente von C1 und C2 ({C1 , C2 } ` C3 ). Kann eine Klausel C aus einer Klauselmenge S durch (mehrere) Resolutionsschritte hergeleitet werden, schreiben wir S `∗ C . Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 30 / 138 Erfüllbarkeitstest mit Resolution Sei S ` C . Jedes Modell für S ist auch Modell für C . Ist S erfüllbar, dann auch S ∪ {C }. Umgekehrt: Ist S ∪ {C } unerfüllbar, dann auch S. Die leere Klausel 2 ist unerfüllbar. Satz (Korrektheit der Resolution) Sei S eine Klauselmenge. Wenn 2 aus S durch Resolution hergeleitet werden kann, ist S unerfüllbar. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 31 / 138 Resolutions-Algorithmus für Aussagenlogik Eingabe: Ausgabe: 1: 2: 3: 4: 5: 6: 7: 8: AL-Formel ϕ „erfüllbar“ oder „unerfüllbar“ transformiere ϕ in KNF initialisiere S mit Disjunktionen von ϕ while es existiert C3 = res(C1 , C2 ) mit C3 ∈ / S do if C3 = 2 then Ausgabe „unerfüllbar“ else S := S ∪ {C3 } Ausgabe „erfüllbar“ Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 32 / 138 Eigenschaften des Resolutions-Algorithmus Satz (Korrektheit) Aus K(ϕ) `∗ C folgt ϕ |= C . Satz (Widerlegungsvollständigkeit) Ist ϕ unerfüllbar, gilt K(ϕ) `∗ 2. Satz (Terminierung) Der Resolutions-Algorithmus terminiert für jede Eingabe. Beweis. Neue Klauseln enthalten nur Literale der Eingabe. (Endliches Vokabular) Nur neue Klauseln werden hinzugefügt. Klauseln werden nie entfernt. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 33 / 138 Resolution und Nichtdeterminismus Wenn mehrere Resolventen möglich sind: terminiert der Algorithmus für jede Variante . . . aber manche Varianten sind schneller als andere. Definition (Don’t-care-Nichtdeterminismus) Ein Algorithmus heißt don’t-care-nichtdeterministisch, wenn jede von mehreren möglichen nichtdeterministischen Entscheidungen zum korrekten Ergebnis führt. In don’t-care-nichtdeterministischen Algorithmen müssen einmal getroffene Entscheidungen nie rückgängig gemacht werden (Backtracking). Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 34 / 138 Übersetzung natürlicher Sprache in Aussagenlogik 1 Wenn Hans zum Meeting eingeladen wird und nicht auf Dienstreise ist, nimmt er am Meeting teil. ¬R ∧ E → M ; R ∨ ¬E ∨ M 3 Wenn der Chef Hans beim Meeting sehen will, lädt er ihn auch ein. C → E ; ¬C ∨ E 4 Wenn der Chef Hans nicht beim Meeting sehen will, wird Hans bald gekündigt. ¬C → K ; C ∨ K Hans hat nicht am Meeting teilgenommen. ¬M 5 Hans ist nicht auf einer Dienstreise. ¬R 6 Konklusion: Hans wird bald gekündigt. 2 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – K Sommersemester 2017 35 / 138 Logische Implikation und Erfüllbarkeit Implizieren die Prämissen 1–5 die Konklusion 6? Logisch: Ist jedes Modell von 1–5 auch ein Modell von 6? {1, 2, 3, 4, 5} |= 6? Umgekehrt: Existiert ein Modell von 1–5, im dem 6 nicht gilt? Logisch: Ist {1, 2, 3, 4, 5, ¬6} erfüllbar? Wenn ja, gilt die Implikation nicht. Ist {1, 2, 3, 4, 5, ¬6} unerfüllbar, gilt die Implikation. Teste mittels Resolution die Erfüllbarkeit von {{R, ¬E, M }, {¬C , E}, {C , K }, {¬M }, {¬R}, {¬K }} Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 36 / 138 Bestimmung des Schicksals von Hans durch Resolution {{R, ¬E, M }, {¬C , E}, {C , K }, {¬M }, {¬R}, {¬K }} R, ¬E, M ¬C , E ¬M R, ¬E C, K E, K R, K ¬R ¬K K 2 Die Folgerung gilt, d. h. Hans wird leider entlassen. . . Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 37 / 138 Optimierung des Resolutionsverfahrens Auswahl der Elternklauseln ist entscheidend für Effizienz Heuristiken: Priorisiere kleine Klauseln Priorisiere Klauseln mit hoher Ableitungstiefe ; Depth-first-Suche Ignoriere Tautologien {X , ¬X , . . .} Ignoriere C1 , wenn ein C2 ⊆ C1 existiert Resolviere mehr als zwei Klauseln (Hyperresolution) Einschränkung auf Spezialfälle, z. B. Horn-Formeln Horn-Formel: Höchstens ein positives Literal X ∧ Y ∧ Z ... → W nützlich für Formalisierung von Regeln (Prolog) Polynomielle Laufzeit Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 38 / 138 Übung: Resolution Formalisieren Sie die folgenden Aussagen in der Aussagenlogik und testen Sie die Folgerung mittels Resolution. 1 Meine Gitarre ist gestimmt, hat aber eine kaputte E-Saite. 2 Der Verzerrer meines Verstärkers funktioniert nicht. 3 Für einen Flamenco braucht man keinen Verzerrer. 4 Punk kann man auch mit einer verstimmten Gitarre spielen. 5 Die Nachbarn werden sich beschweren, wenn ich Punk spiele, aber nicht, wenn ich weder Punk noch Flamenco spiele. 6 Für Punk braucht man einen Verzerrer. 7 Ein Flamenco benötigt die E-Saite. 8 Konklusion: Die Nachbarn werden sich nicht beschweren. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 39 / 138 Inhalt 1 Einführung 2 Aussagenlogik Syntax Semantik Schlussfolgerungsverfahren Resolution Tableaus 3 Prädikatenlogik 4 Beschreibungslogiken Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 40 / 138 Tableau-Algorithmen Erfüllbarkeitstest für aussagenlogische Formeln Evert Willem Beth: Semantic entailment and formal derivability (1955) E. W. Beth (1908–1964) Anderer Ansatz für Erfüllbarkeitstest Resolution: suche einen Widerspruch Tableau: suche ein Modell erzeugt Tabellen-artige Struktur, bei der Spalten aufgeteilt werden ; „Tableau“ andere Sichtweise: Baumstruktur Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 41 / 138 Merkmale von Tableau-Algorithmen Beginne mit der Ausgangsformel χ und einer Spalte Regeln brechen komplexe Formeln auf einfachere herunter „Wenn ϕ ∧ ψ vorhanden ist, aber nicht ϕ und ψ, füge ϕ und ψ hinzu.“ Bei mehreren Möglichkeiten: Teile Spalte auf Clash beschreibt Situation, in denen ein Widerspruch vorliegt „ϕ und ¬ϕ sind vorhanden.“ Clashes gibt es zwischen Formeln in der aktuellen Spalte und den darüberliegenden Ergebnis: Wenn jede Spalte einen Clash enthält, gibt es kein Modell ; χ ist unerfüllbar Wenn keine Regel mehr anwendbar ist (Tableau ist vollständig) und mindestens eine Spalte Clash-frei ist, gibt es ein Modell ; χ ist erfüllbar Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 42 / 138 Tableau-Algorithmen: Regeln Vorbedingung „Wenn ϕ ∧ ψ vorhanden ist. . . “ Welche Formel ist zu verarbeiten? Anwendbarkeitsbedingung „. . . aber nicht ϕ und ψ, . . . “ Wann ist Regel nicht mehr anwendbar? (; Terminierung) bezieht sich auf aktuelle Spalte und darüberliegende Nachbedingung „. . . füge ϕ und ψ hinzu.“ Wie ist Formel zu verarbeiten? Regeln können nicht-deterministisch sein: „Wenn ϕ ∨ ψ enthalten ist. . . , füge ϕ oder ψ hinzu“ Teile aktuelle Spalte, teste ϕ in einer Spalte, ψ in der anderen Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 43 / 138 Tableau-Regeln und Negations-Normalform Definition (Negations-Normalform) Eine aussagenlogische Formel ist in Negations-Normalform (NNF) wenn als binäre Junktoren nur ∧ und ∨ enthalten sind und Negation nur direkt vor Aussagevariablen vorkommt. Satz Jede AL-Formel kann in NNF transformiert werden. Beweis. Verfahren: 1 Elimination von → und ↔ 2 Anwendung der Gesetze von De Morgan 3 Entfernung doppelter Negation (Wie für KNF.) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 44 / 138 Tableau-Regeln für Aussagenlogik ∧-Regel Wenn ϕ ∧ ψ ∈ S und {ϕ, ψ} * S dann S := S ∪ {ϕ, ψ} ∨-Regel Wenn ϕ ∨ ψ ∈ S und {ϕ, ψ} ∩ S = ∅ dann S := S ∪ {ϕ} oder S := S ∪ {ψ} Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 45 / 138 Tableau-Algorithmus für Aussagenlogik Eingabe: Ausgabe: 1: 2: 3: 4: 5: 6: 7: 8: AL-Formel ϕ „erfüllbar“ oder „unerfüllbar“ ϕ0 = nnf(ϕ) initialisiere S mit {ϕ0 } while eine Regel R ist auf ein ψ ∈ S anwendbar do wende R auf ψ an if jede Spalte enthält einen Clash then Ausgabe „unerfüllbar“ else Ausgabe „erfüllbar“ Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 46 / 138 Beispiel: Bestimmung des Schicksals von Hans mit Tableau Prämissen: (R ∨ ¬E ∨ M ) ∧ (¬C ∨ E) ∧ (C ∨ K ) ∧ ¬M ∧ ¬R Konklusion: K Zeile 1 2 3 4 5 6 7 8 9 10 (R ∨ ¬E ∨ M ) ∧ (¬C ∨ E) ∧ (C ∨ K ) ∧ ¬M ∧ ¬R ∧ ¬K R ∨ ¬E ∨ M ¬C ∨ E C ∨K ¬M ¬R ¬K C K 7 ¬C 8 E R 6 ¬E 9 M 5 Jede Spalte enthält einen Clash ; Formel 1 ∧ 2 ∧ 3 ∧ 4 ∧ 5 ∧ ¬6 ist unerfüllbar ; Prämissen 1–5 implizieren die Konklusion 6 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Regel Eingabe 1: ∧ 4: ∨ 3: ∨ 2: ∨ Sommersemester 2017 47 / 138 Durchführung des Tableau-Algorithmus Vorrang beachten: Formeln von „außen“ nach „innen“ abarbeiten Clash: nur zwischen aktueller Spalte und den darüberliegenden Spalte steht logisch für Menge aller Formeln, die in ihr und den darüberliegenden Spalten enthalten sind Effizienz: Wenn mehrere Regeln anwendbar sind: ∧-Regel zuerst sonst: ∧-Regel in jeder neuen Spalte anwendbar ; Ineffizienz Beispiel: {A ∧ B, ¬C ∧ ¬D, ¬A ∨ ¬B ∨ C ∨ D} Transformation von NNF in KNF ist kontraproduktiv nach erstem Schritt wird nur ∨-Regel angewendet ; Ineffizienz Beispiel: vergleiche NNF ¬A ∨ B ∧ ¬C ∨ ¬B ∧ C (3 Spalten) mit KNF (¬A ∨ B ∨ C ) ∧ (¬A ∨ ¬B ∨ ¬C ) (7 Spalten) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 48 / 138 Übung: Tableau-Algorithmus Zeigen Sie mit einem Tableau, dass die Nachbarn sich nicht beschweren. S ∧ ¬E ∧ ¬V ∧ (¬P ∨ N ) ∧ (P ∨ F ∨ ¬N ) (¬P ∨ V ) ∧ (¬F ∨ E) ∧ N Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – ∧ Sommersemester 2017 49 / 138 Korrektheit des Tableau-Algorithmus Satz (Korrektheit) Wenn das vollständige Tableau für ϕ eine Clash-freie Spalte enthält, ist ϕ erfüllbar. Beweis. Idee: Literale der Clash-freien Spalte bilden Modell M. Wenn X ∈ S, dann X M = 1; sonst X M = 0 Clash-frei: für keine Variable X ist X und ¬X enthalten Vollständig: für jede Konjunktion χ ∧ ψ ∈ S gilt auch {χ, ψ} ⊆ S für jede Disjunktion χ ∨ ψ ∈ S gilt auch {χ, ψ} ∩ S 6= ∅ Induktion: Für jedes ψ ∈ S gilt: M |= ψ Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 50 / 138 Vollständigkeit des Tableau-Algorithmus Satz (Vollständigkeit) Wenn ϕ erfüllbar ist, enthält das vollständige Tableau für ϕ eine Clash-freie Spalte. Beweis. Idee: „Regelanwendung erhält Erfüllbarkeit.“ Wenn eine Formelmenge S vor Regelanwendung erfüllbar war, kann die Regel so angewendet werden, dass S auch nach der Anwendung noch erfüllbar ist. ∧-Regel Wenn M |= ψ ∧ χ gilt, gilt auch M |= ψ und M |= χ. ∨-Regel Wenn M |= ψ ∨ χ gilt, gilt auch M |= ψ oder M |= χ. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 51 / 138 Teilformeln Definition (Teilformel) Sei ϕ eine aussagenlogische Formel. Die Formel ψ ist Teilformel von ϕ, wenn eine der folgenden Bedingungen erfüllt ist: ϕ=ψ ϕ = ¬χ und ψ ist Teilformel von χ ϕ = χ1 ◦ χ2 und ψ ist Teilformel von χ1 oder χ2 (mit ◦ ∈ {∧, ∨, →, ↔}) Beispiel (ϕ = A ∧ ¬(B ∨ ¬A) ∨ (A → ¬C )) Die Menge der Teilformeln von ϕ ist {ϕ, A ∧ ¬(B ∨ ¬A), A → ¬C , A, ¬(B ∨ ¬A), B ∨ ¬A, B, ¬A, ¬C , C }. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 52 / 138 Terminierung des Tableau-Algorithmus Satz (Terminierung) Der Tableau-Algorithmus terminiert für jede Formel ϕ nach endlich vielen Schritten. Beweis. Es gibt nur endlich viele Teilformeln von ϕ (endliches Vokabular). Jede Regelanwendung fügt nur Teilformeln zu Formelmenge hinzu. Auf jede Teilformel wird in jeder Spalte höchstens einmal eine Regel angewendet. Die Anzahl der Spalten ist beschränkt durch die Anzahl der Disjunktionen in ϕ. Formeln werden nie entfernt. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 53 / 138 Tableaus und Nichtdeterminismus sind mehrere Regeln anwendbar, ist die Auswahl der nächsten Regel don’t-care-nichtdeterministisch Jede Auswahl führt zur Lösung die Auswahl der Alternative durch die ∨-Regel ist don’t-know-nichtdeterministisch Finden der Lösung kann von „richtiger“ Alternative abhängen Jede Alternative muss getestet werden Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 54 / 138 Tableaus in der Praxis Anzahl der Spalten kann exponentiell in der Größe von ϕ sein Beispiel: ϕ = (A ∨ B) ∧ (C ∨ D) ∧ (E ∨ F ) Für Zeit- und Platz-Effizienz: Erzeuge Tableau depth-first Halte nur eine Spalte gleichzeitig im Speicher Wende dort alle möglichen Regeln an Spalte ist Clash-frei und vollständig: Ausgabe „erfüllbar“ Spalte enthält Clash: Versuche nächste Spalte (oder Ausgabe „unerfüllbar“) Overhead: Backtracking-Information for jede Anwendung der ∨-Regel aus Effizienzgründen auch hier zuerst ∧-Regel anwenden Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 55 / 138 Vergleich: Tableaus und Resolution Gemeinsamkeiten Erfüllbarkeitstests Können auch Gültigkeit und Implikation testen Entscheidungsverfahren Effizienter als Wahrheitstabelle Vorteile von Tableaus Effizient für erfüllbare Eingaben Erzeugt Modell für erfüllbare Eingaben Vorteile der Resolution Effizient für unerfüllbare Eingaben Gesamtes Verfahren ist don’t-care-nichtdeterministisch (kein Backtracking) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 56 / 138 Zusammenfassung: Aussagenlogik Aussagenvariable repräsentiert Elementaraussage kann wahr oder falsch sein Junktoren verbinden Aussagenvariablen zu komplexen Formeln Auswertung über Wahrheitstabelle Interpretation belegt Variablen mit 0 oder 1 macht Formel wahr oder falsch Modell macht Formel wahr Erfüllbar es gibt ein Modell Gültig jede Interpretation ist Modell (Tautologie) Schlussfolgerung Erfüllbarkeit, Gültigkeit, Implikation entscheidbar (korrekt, vollständig, terminierend) Resolution sucht Widerspruch KNF, Klausel, Resolvente Tableau sucht Modell NNF, Regel, Clash Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 57 / 138 Inhalt 1 Einführung 2 Aussagenlogik 3 Prädikatenlogik Syntax Semantik Schlussfolgerungsverfahren 4 Beschreibungslogiken Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 58 / 138 Inhalt 1 Einführung 2 Aussagenlogik 3 Prädikatenlogik Syntax Semantik Schlussfolgerungsverfahren 4 Beschreibungslogiken Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 59 / 138 Syntax der Prädikatenlogik Konstruktoren Definitionen Variablen x, y Konstantensymbole Terme Variablen, Funktionssymbole c, x, f (c), g(x, y) c (0) d (0) Funktionssymbole Atome Prädikate, Terme R(x, f (x)), S(c) f (1) g (2) Prädikate Formeln Atome, Quantoren, Junktoren ∃y(R(x, y) ∧ P(y)) P (1) R(2) Sätze Formeln ohne freie Variablen ∀x∃yR(x, y) Quantoren ∀, ∃ Junktoren ∧, ∨, ¬ →, ↔ Grund. . . Terme/Atome ohne Variablen f (c), g(c, d); R(c, g(c, d)) Im Folgenden betrachten wir nur Sätze, keine offenen Formeln. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 60 / 138 Vorrang der Operatoren f P ∀, ∃ ¬ ∧ ∨ → ↔ Quantoren binden stärker als alle Junktoren ∀xR(x, y) ∧ S(x) bedeutet (∀xR(x, y)) ∧ S(x) Funktionssymbole und Prädikate binden stärker als Quantoren ∀x∀yx + y = y + x bedeutet ∀x∀y(x + y = y + x) Funktionssymbole binden stärker als Prädikate x + y > c + d bedeutet (x + y) > (c + d) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 61 / 138 Gefahren der PL-Syntax Stelligkeit von Funktionssymbolen und Prädikaten f einstellig ; f (x, y) ist nicht korrekt Nullstellige Funktionssymbole sind Konstantensymbole Nullstellige Prädikate sind Aussagenvariablen Quantoren binden nur nächstes Atom ∀xP(x) → Q(x) ist eine offene Formel Keine Prädikate in Prädikaten ∃xHat(anna, Katze(x)) ist nicht korrekt Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 62 / 138 Inhalt 1 Einführung 2 Aussagenlogik 3 Prädikatenlogik Syntax Semantik Schlussfolgerungsverfahren 4 Beschreibungslogiken Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 63 / 138 Semantik in der Prädikatenlogik: Interpretationen Erinnerung: Interpretation in der Aussagenlogik weist Aussagenvariablen Wert 1 oder 0 zu macht Formel wahr oder falsch Interpretation in der Prädikatenlogik bestimmt das Universum (auch Domäne genannt) weist jedem n-stelligen Funktionssymbol f eine n-stellige Funktion f I über dem Universum zu weist jedem n-stelligen Prädikat R eine n-stellige Relation RI über dem Universum zu macht Formel wahr oder falsch der Einfachheit halber: nur Sätze ; keine freien Variablen Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 64 / 138 Interpretation 1 ϕ = ∀xR(x, f (x)) Beispiel (Interpretation I mit Menschen als Domäne) Universum ∆I : M = {Anna,Bob,Clara,Dirk} Funktion f I : ehepartnerM = {Anna 7→ Bob, Bob 7→ Anna, Clara 7→ Dirk, Dirk 7→ Clara} Relation RI : MagM = {(Anna,Bob), (Anna,Clara), (Bob,Anna), (Bob,Dirk), (Clara,Dirk), (Dirk,Anna), (Dirk,Bob)} I macht ϕ falsch (weil Dirk Clara nicht mag) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 65 / 138 Interpretation 2 ϕ = ∀xR(x, f (x)) Beispiel (Interpretation J mit Zahlen als Domäne) Universum ∆J : N = {0, 1, 2, . . .} Funktion f J : sN (Nachfolger) = {0 7→ 1, 1 7→ 2, . . .} Relation RJ : <N (kleiner als) = {(0, 1), (0, 2), . . . , (1, 2), (1, 3), . . .} J macht ϕ wahr (weil jede Zahl kleiner ist als ihr Nachfolger) Wahrheitswert hängt von der Interpretation ab der Interpretation der Funktionssymbole und Prädikate 0 Wenn J 0 R als >N interpretiert, ist ϕJ falsch dem Universum ∀x∃y(y < x) ist wahr in Z, aber falsch in N. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 66 / 138 Interpretation: Formale Definition Definition (Interpretation in der Prädikatenlogik) Für einen Satz ϕ mit Funktionssymbolen F und Prädikaten P ist eine Interpretation I ein Paar (∆I , ·I ) mit ∆I ist eine nichtleere Menge, ·I weist jedem n-stelligen f ∈ F eine n-stellige Funktion f I über ∆I zu, jedem n-stelligen R ∈ P eine n-stellige Relation RI über ∆I zu. Domäne darf nicht leer sein. Nullstellige Funktionssymbole (Konstantensymbole) werden auf Elemente der Domäne abgebildet. Nullstellige Prädikate werden auf {2} oder ∅ abgebildet. Aussagenvariablen: {2} ; 1; ∅ ; 0 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 67 / 138 Interpretation komplexer Formeln Der Wahrheitswert komplexer Formeln wird rekursiv bestimmt: Für einen komplexen Term t = f (t1 , . . . , tn ), t I werden die Terme t1 , . . . , tn rekursiv ausgewertet als (t1 )I , . . . , (tn )I ; die Funktion f I für diese Ergebnisse ausgewertet t I = f I ((t1 )I , . . . , (tn )I ). Für ein Atom ϕ = P(t1 , . . . , tn ) werden die Terme t1 , . . . , tn rekursiv ausgewertet; geprüft, ob das sich ergebende Tupel in P I enthalten ist. Für gebundene Variablen ∀xϕ(x)/∃xϕ(x) wird geprüft, ob ϕ(x) für jedes/ein Element der Domäne wahr ist. Formeln mit Junktoren werden wie in der Aussagenlogik ausgewertet. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 68 / 138 Beispiel: Interpretation komplexer Formeln ϕ = ¬P(c) ∧ ∃yR(c, f (y)) ∆I = N Bestimmung von ϕI : Funktionssymbole Prädikate Quantor: Wähle y = 20N Funktion auswerten Relationen auswerten Junktoren auswerten Jan Hladik (DHBW Stuttgart) PI RI = PrimN = ≤N fI cI = nachfolgerN = 15N ¬P I (15N ) ∧ ∃yRI (15N , nachfolgerN (y)) ¬PrimN (15N ) ∧ ∃y ≤N (15N , nachfolgerN (y)) ¬PrimN (15N ) ∧ ≤N (15N , nachfolgerN (20N )) ¬PrimN (15N ) ∧ ≤N (15N , 21N ) ¬0B ∧ 1B 1B Wissensbasierte Systeme – Logik – Sommersemester 2017 69 / 138 Modelle in der Prädikatenlogik Definition (Modell) Eine Interpretation I = (∆I , ·I ) erfüllt eine Formel ϕ (ist ein Modell für ϕ, I |= ϕ), wenn ϕ = P(t1 , . . . , tn ) ein Atom ist und ((t1 )I , . . . , (tn )I ) ∈ P I gilt; ϕ = ∀xψ(x) gilt und für jedes x ∈ ∆I ψ(x) gilt; ϕ = ∃xψ(x) gilt und für ein x ∈ ∆I ψ(x) gilt; ϕ einen Junktor enthält (z. B., ϕ = ¬ϕ1 , ϕ = ϕ1 ∧ ϕ2 ) und entsprechend der Wahrheitstabelle als wahr ausgewertet wird. Definition (Logische Implikation) Eine Formelmenge Φ impliziert logisch eine Formel ϕ (Φ |= ϕ), wenn jedes Modell von Φ auch Modell von ϕ ist. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 70 / 138 Inhalt 1 Einführung 2 Aussagenlogik 3 Prädikatenlogik Syntax Semantik Schlussfolgerungsverfahren Resolution Tableaus 4 Beschreibungslogiken Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 71 / 138 Inhalt 1 Einführung 2 Aussagenlogik 3 Prädikatenlogik Syntax Semantik Schlussfolgerungsverfahren Resolution Tableaus 4 Beschreibungslogiken Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 72 / 138 Resolution in der Prädikatenlogik Wie kann das Resolutionsprinzip auf PL übertragen werden? Beispiel (naive Resolution in PL) ∀x(H (x) → ∃yM (x, y)) H (c) ? Probleme: Interaktion von Quantoren: ∀xϕ(x), ∀x¬ϕ(x) vs. ∃xϕ(x), ∃x¬ϕ(x) Interaktion von Variablen und Konstanten Erzeugung von KNF in Formeln mit Quantoren Ansatz: Elimination des Existenz-Quantors Ersetzung von Variablen durch Terme, um Atome gleich zu machen Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 73 / 138 Schritt 1: Negations-Normalform Ähnlich wie in AL: Negation nur vor Atomen 1 Elimination von → und ↔ ϕ→ψ ϕ↔ψ 2 3 ¬ϕ ∨ ψ (ϕ ∧ ψ) ∨ (¬ϕ ∧ ¬ψ) ; ; Anwendung der de-Morgan-Gesetze und ihrer Entsprechungen für Quantoren ¬(ϕ ∧ ψ) ; ¬ϕ ∨ ¬ψ ¬(ϕ ∨ ψ) ; ¬ϕ ∧ ¬ψ ¬∀xϕ ; ∃x¬ϕ ¬∃xϕ ; ∀x¬ϕ Elimination doppelter Negation ¬¬ϕ ; Jan Hladik (DHBW Stuttgart) ϕ Wissensbasierte Systeme – Logik – Sommersemester 2017 74 / 138 Schritt 2: Pränex-Normalform Definition (Pränex-Normalform) Eine Formel ist in PNF, wenn sie die Gestalt Q1 x1 . . . Qn xn ϕ(x1 , . . . , xn ) hat, wobei die Teile der Formel wie folgt benannt werden: Präfix Q1 x1 . . . Qn xn mit Qi ∈ {∀, ∃} Matrix Quantoren-freie Formel ϕ mit Variablen x1 . . . xn . Algorithmus zur Transformation in PNF: 1 benenne mehrfach quantifizierte Variablen um 2 ziehe Quantoren nach vorne (unter Beibehaltung der Reihenfolge) Beispiel (PNF) „Jeder Mensch hat Mutter und Vater.“ Transformiere in NNF Ersetze zweites y durch z Ziehe Quantoren nach vorne Jan Hladik (DHBW Stuttgart) ∀x(H (x) → ∃yM (x, y) ∧ ∃yF (x, y)) ∀x(¬H (x) ∨ ∃yM (x, y) ∧ ∃yF (x, y)) ∀x(¬H (x) ∨ ∃yM (x, y) ∧ ∃zF (x, z)) ∀x∃y∃z(¬H (x) ∨ M (x, y) ∧ F (x, z)) Wissensbasierte Systeme – Logik – Sommersemester 2017 75 / 138 Schritt 3: Skolem-Normalform Definition (Skolem-Normalform) Eine prädikatenlogische Formel ϕ ist in Skolem-Normalform (SNF), wenn sie in PNF ist und das Präfix keine Existenzquantoren enthält. Transformation in SNF: Ersetze existentiell quantifizierte Variablen durch Terme Thoralf Skolem (1887–1963) Beispiel (Skolemisierung) „Es gibt einen Präsidenten.“ ∃xP(x) ; P(c) „Jeder Mensch hat eine Mutter.“ ∀x∃y(H (x) → M (x, y)) ; ∀x(H (x) → M (x, f (x))) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – c ist neu! f ist neu! Sommersemester 2017 76 / 138 Skolemisierungs-Algorithmus Eingabe: Formel ϕ = ∀x1 . . . ∀xn ∃yψ(x1 , . . . , xn , y) in PNF Ausgabe: Skolemisierte Formel snf(ϕ) 1 ersetze y durch durch ein neues n-stelliges Funktionssymbol f : ∀x1 . . . ∀xn ψ(x1 , . . . , xn , f (x1 , . . . , xn )) 2 fahre mit Existenzquantoren in ψ fort, bis alle existentiell quantifizierten Variablen ersetzt sind Beachte: Bearbeite Existenzquantoren von vorne nach hinten Das neue Funktionssymbol f heißt Skolem-Funktionssymbol Existentiell quantifizierte Variablen, die nicht im Gültigkeitsbereich eines Allquantors stehen, werden durch Konstanten ersetzt. Optimierungspotential durch Umformung der Ausgangsformel Eine Formel ϕ und ihre SNF sind nicht äquivalent, aber erfüllbarkeitsäquivalent. Alle verbleibenden Variablen sind universell quantifiziert ; ∀x wird nicht mehr benötigt. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 77 / 138 Übung: Skolem-Normalform Transformieren Sie die folgenden Formeln in SNF: a) ∀x(∃yR(x, y) ∧ ∃y¬R(x, y)) ∧ ∀xR(x, x) ∧ ∃y∃z¬R(y, z) b) ∃x∀y(R(x, y)∨R(y, x))∧¬∀y¬(R(y, y)∧¬R(y, f (y)))∨¬(∀xR(x, x) → ∃xR(x, x)) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 78 / 138 Resolution und Variablen Beispiel (PL-Resolution) Formel ∃zH (z) ∧ ∀x(H (x) → ∃yM (x, y)) NNF ∃zH (z) ∧ ∀x(¬H (x) ∨ ∃yM (x, y)) → eliminiert SNF ∀x(H (c) ∧ (¬H (x) ∨ M (x, f (x)))) ∃ eliminiert KNF H (c) ∧ (¬H (x) ∨ M (x, f (x))) PL-Atome statt Aussagenvariablen ¬H (x), M (x, f (x)) H (c) M (c, f (c)) [x/c] Finde Variablenbelegung, die zwei Atome syntaktisch gleich macht Ersetze Variablen in gesamter Klausel Erzeuge Resolvente Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 79 / 138 Substitutionen Definition (Substitution) Eine Substition ist eine Abbildung von Variablen auf Terme. Beispiel (Substitution) Die Substitution σ = ([x/f (y)], [y/m(c, d)]) bildet x auf f (y) und y auf m(c, d) ab. Reihenfolge ist wichtig: ([x/y], [y/z]) ist nicht gleich ([y/z], [x/y]) σ(g(x)) = g(f (m(c, d))) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 80 / 138 Unifikatoren Definition (Unifikator) Ein Unifikator ist eine Substitution, die zwei Formeln auf dieselbe Formel abbildet. Beispiel (Unifikator von R(a, y) und R(x, f (a))) ϕ = R(a, y) ψ = R(x, f (a)) σ(ϕ) = R(a, f (a)) = σ(ψ) σ = ([x/a], [y/f (a)]) Resolution von C1 und C2 ist möglich, wenn es zwei Atome ϕ, ψ und eine Substitution σ gibt mit ϕ ∈ C1 und ¬ψ ∈ C2 σ ist Unifikator von ϕ und ψ. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 81 / 138 Unifikation: Variablenumbenennung und Occurs-Check Beispiel (gleiche Variable in mehreren Klauseln) Problem Unifikator für P(x, c) und P(d, x) wird nicht gefunden Lösung Disjunkte Umbenennung der Variablen P(x, c), P(d, y), σ = ([x/d], [y/c]) Beispiel (Abbildung von x auf f (x)) Problem Unifikation von P(x) und P(f (x)) resultiert in σ = [x/f (x)] Lösung Occurs-Check: x kann nicht auf Term abgebildet werden, der x enthält Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 82 / 138 Allgemeinste Unifikatoren Beispiel (Mehrere mögliche Unifikatoren) ¬P(y) P(x), R(x) [x/d] R(x) ¬R(c) [y/d] [y/x] R(d) [x/c] 2 Problem manche Unifikatoren verhindern Resolution Lösung Allgemeinster Unifikator (MGU): ersetze so wenig wie möglich Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 83 / 138 Unifikations-Algorithmus Input: Atome s, t Output: au(s, t), wenn s und t unifizierbar sind; „nicht unifizierbar“, sonst 1: σ := () 2: while σ(s) 6= σ(t) do 3: sei i die erste Position, an der sich σ(s) und σ(t) unterscheiden 4: if σ(s)|i oder σ(t)|i ist Prädikat then 5: return „nicht unifizierbar“ 6: else if weder σ(s)|i noch σ(t)|i ist Variable then 7: return „nicht unifizierbar“ 8: else 9: sei x die Variable, y der andere Term 10: if x ist echter Subterm von y then 11: return „nicht unifizierbar“ 12: else 13: σ := σ · ([x/y]) 14: return σ Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 84 / 138 Unifikation: Beispiel Beispiel ϕ = R(f (c), z, g(f (c), f (g(z, f (c))))) ψ = R(f (c), z, g(f (c), f (g(z, f (c))))) x u w y / / / / f (c) z f (c) g(z, f (c)) Jan Hladik (DHBW Stuttgart) Occurs-Check AU Wissensbasierte Systeme – Logik – Sommersemester 2017 85 / 138 Übung: Unifikations-Algorithmus Seien x, y, z Variablen, c, d Konstanten, f einstelliges, g ein zweistelliges und h ein dreistelliges Funktionssymbol, S und T dreistellige Prädikate. Wenden Sie den Unifikations-Algorithmus an, um allgemeinste Unifikatoren für die folgenden Paare von Termen zu finden: a) S(x, f (y), g(z, d)) und S(c, f (x), g(f (z), z)) b) T (x, f (x), h(f (y), z, d)) und T (c, f (y), h(z, f (x), c)) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 86 / 138 Beispiel: Halloween 1 Tim kauft einen Kürbis. ∃x(Kauft(tim, x) ∧ Kürbis(x)) 2 Wer einen Kürbis kauft, isst ihn oder schnitzt eine Laterne daraus. ∀x∀y(Kauft(x, y) ∧ Kürbis(y) → Isst(x, y) ∨ Schnitzt(x, y)) 3 Kinder essen keine Kürbisse. ∀x(Kind(x) → ∀y(Kürbis(y) → ¬Isst(x, y))) 4 Konklusion: Wenn Tim ein Kind ist, schnitzt er eine Laterne. Kind(tim) → ∃xSchnitzt(tim, x) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 87 / 138 Schritt 1: Syntaktische Vorverarbeitung 1 Konjunktion der Prämissen und der Negation der Konklusion 2 Variablen-Umbenennung 3 Ersetzung von ϕ → ψ durch ¬ϕ ∨ ψ 4 Gesetze von De Morgan 5 Entfernung doppelter Negation 6 Pränex-Normalform . . . (∃x(Kauft(tim, x) ∧ Kürbis(x)) ∧ (∀y∀z(¬(¬Kauft(y, z) ∨ ¬Kürbis(z)) ∨ Isst(y, z) ∨ Schnitzt(y, z))) (∀u(¬Kind(u) ∨ ∀w(¬Kürbis(w) ∨ ¬Isst(u, w)))) ∧ ¬(¬¬Kind(tim) ∧ ¬∀t¬Schnitzt(tim, t)) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 ∧ 88 / 138 Schritt 2: Skolem-Normalform und KNF 1 Pränex-Normalform 2 Skolem-Normalform 3 Entfernung der Allquantoren 4 Konjunktive Normalform ∃x∀y∀z∀u∀w∀t (Kauft(tim, k) ∧ Kürbis(k) ∧ (¬Kauft(y, z) ∨ ¬Kürbis(z) ∨ Isst(y, z) ∨ Schnitzt(y, z)) ∧ (¬Kind(u) ∨ ¬Kürbis(w) ∨ ¬Isst(u, w)) ∧ Kind(tim) ∧ ¬Schnitzt(tim, t)) ¬Schnitzt(tim, t) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 89 / 138 Schritt 3: Resolution ¬Kind(u), ¬Kürbis(w), ¬Isst(u, w) Kind(tim) ¬Kürbis(w), ¬Isst(tim, w) Kürbis(k) ¬Isst(tim, k) ¬Kauft(y, z), ¬Kürbis(z), Isst(y, z), Schnitzt(y, z) ¬Kauft(tim, k), ¬Kürbis(k), Schnitzt(tim, k) ¬Kauft(tim, k), Schnitzt(tim, k) Kauft(tim, k) ¬Schnitzt(tim, t) Schnitzt(tim, k) 2 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 90 / 138 Übung: Resolution in der Prädikatenlogik Zeigen Sie mittels Resolution die Folgerung: 1 Jeder Junge und jedes Mädchen ist ein Kind. 2 Jedes Kind erhält ein Auto, eine Puppe oder eine Rute. 3 Kein Junge erhält eine Puppe. 4 Kein braves Kind erhält eine Rute. 5 Kein Kind erhält ein Auto. 6 Konklusion: Kein Junge ist brav. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 91 / 138 Eigenschaften der PL-Resolution Satz (Korrektheit der PL-Resolution) K(ϕ) `∗ 2 impliziert Unerfüllbarkeit von ϕ. Satz (Widerlegungsvollständigkeit der PL-Resolution) Wenn ϕ unerfüllbar ist, gilt K(ϕ) `∗ 2. Terminierung? Terminiert der Resolutionsalgorithmus für jede Eingabe? Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 92 / 138 PL-Resolution und Terminierung Beispiel P(x), ¬Q(f (x)) ¬P(f (y)), Q(f (y)) [x/f(y)] ¬Q(f (f (y))), Q(f (y)) [y/x] P(x), ¬Q(f (f (x))) [y/x] [x/f(y)] ¬Q(f (f (f (y)))), Q(f (y)) P(x), ¬Q(f (f (f (x)))) .. . PL-Erfüllbarkeit unentscheidbar ; Terminierung nicht erreichbar. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 93 / 138 Inhalt 1 Einführung 2 Aussagenlogik 3 Prädikatenlogik Syntax Semantik Schlussfolgerungsverfahren Resolution Tableaus 4 Beschreibungslogiken Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 94 / 138 Tableau-Algorithmus für PL Gleiches Grundprinzip Regeln Clashes Vorverarbeitung: NNF Negation nur vor Atomen Zusätzliche Regeln für Quantoren ∀-Regel ∃-Regel Definition von Clash auf PL-Formeln erweitert Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 95 / 138 Zusätzliche Regeln für PL ∃ Wenn ∃xϕ(x) ∈ S gilt und kein Grundterm t existiert mit ϕ(t) ∈ S dann S := S ∪ ϕ(c) für ein neues Konstantensymbol c eliminiere ∃ durch Skolemisierung Konstanten können immer verwendet werden ∀-werden vorher durch ∀-Regel bearbeitet keine komplexen Skolem-Funktionen nötig ∀ Wenn ∀xϕ(x) ∈ S gilt und t ein beliebiger Grundterm ist dann S := S ∪ ϕ(t) t kann auch neues Konstantensymbol sein anwendbar auf unendliche Menge von Termen Keine Anwendbarkeitsbedingung ; immer anwendbar! Terminierung ist nicht garantiert Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 96 / 138 Beispiel: Halloween-Tableau ϕ = ∃x(Kauft(tim, x) ∧ Kürbis(x)) ∧ ∀x∀y(¬Kauft(x, y) ∨ ¬Kürbis(y) ∨ Isst(x, y) ∨ Schnitzt(x, y)) ∀x(¬Kind(x) ∨ ∀y(¬Kürbis(y) ∨ ¬Isst(x, y))) ∧ ∧ Kind(tim) ∧ ∀x¬Schnitzt(tim, x) 1 2 3 4 5 6 7 8 9 10 11 12 ϕ ∃x(Kauft(tim, x) ∧ Kürbis(x)) ∀x∀y(¬Kauft(x, y) ∨ ¬Kürbis(y) ∨ Isst(x, y) ∨ Schnitzt(x, y)) ∀x(¬Kind(x) ∨ ∀y(¬Kürbis(y) ∨ ¬Isst(x, y))) Kind(tim) ∀x¬Schnitzt(tim, x)) Kauft(tim, k) ∧ Kürbis(k) Kauft(tim, k) Kürbis(k) ¬Schnitzt(tim, k) ¬Kauft(tim, k) ∨ ¬Kürbis(k) ∨ Isst(tim, k) ∨ Schnitzt(tim, k) ¬Kind(tim) ∨ ∀y(¬Kürbis(y) ∨ ¬Isst(tim, y)) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – 1: ∧ 2: ∃(x/k) 7: ∧ 6: ∀(x/k) 3: ∀(x/tim, y/k) 4: ∀(x/tim) Sommersemester 2017 97 / 138 Beispiel: Halloween-Tableau (Fortsetzung) 5 8 9 10 11 12 13 14 15 16 ¬Kind(tim) 5 Kind(tim) Kauft(tim, k) Kürbis(k) ¬Schnitzt(tim, k) ¬Kauft(tim, k) ∨ ¬Kürbis(k) ∨ Isst(tim, k) ∨ Schnitzt(tim, k) ¬Kind(tim) ∨ ∀y(¬Kürbis(y) ∨ ¬Isst(tim, y)) ∀y(¬Kürbis(y) ∨ ¬Isst(tim, y)) ¬Kürbis(k) ∨ ¬Isst(tim, k) ¬Kürbis(k) ¬Isst(tim, k) 9 ¬Kauft(tim, k) ¬Kürbis(k) Isst(tim, k) 8 9 15 Schnitzt(tim, k) 10 12: 13: 14: 11: ∨ ∀(y/k) ∨ ∨ Jede Spalte enthält einen Clash ϕ ist unerfüllbar Prämissen implizieren Konklusion Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 98 / 138 Übung: Tableau in der Prädikatenlogik Verwenden Sie ein Tableau, um zu zeigen, dass kein Junge brav ist. ϕ = ∀x(¬J (x) ∧ ¬M (x) ∨ K (x)) ∧ ∀x(¬K (x) ∨ ∃y(E(x, y) ∧ (A(y) ∨ P(y) ∨ R(y)))) ∀x(¬J (x) ∨ ∀y(¬E(x, y) ∨ ¬P(y))) ∧ ∀x(¬K (x) ∨ ¬B(x) ∨ ∀y(¬E(x, y) ∨ ¬R(y))) ∀x(¬K (x) ∨ ∀y(¬E(x, y) ∨ ¬A(y))) ∧ ∧ ∧ ∃z(J (z) ∧ B(z)) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 99 / 138 Zusammenfassung: Prädikatenlogik Syntax Variablen, Prädikate, Funktionssymbole, Quantoren Terme, Atome, komplexe Formeln Modellierung der inneren Struktur von Aussagen Interpretation Domäne, Funktionen, Relationen Schlussfolgerung korrekt, vollständig nicht terminierend ; unentscheidbar Resolution PNF, SNF, Unifikation Tableau ∃/∀-Regel, Anwendbarkeit Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 100 / 138 Inhalt 1 Einführung 2 Aussagenlogik 3 Prädikatenlogik 4 Beschreibungslogiken Wissensrepräsentation Frühe Wissensrepräsentations-Systeme Eigenschaften von Beschreibungslogiken Syntax Semantik Schlussfolgerungsprobleme Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 101 / 138 Inhalt 1 Einführung 2 Aussagenlogik 3 Prädikatenlogik 4 Beschreibungslogiken Wissensrepräsentation Frühe Wissensrepräsentations-Systeme Eigenschaften von Beschreibungslogiken Syntax Semantik Schlussfolgerungsprobleme Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 102 / 138 Wissensrepräsentations-Systeme Wissensrepräsentations-Hypothese (Smith, 1982): 1 Wissen ist in einer Form gespeichert, die für äußeren Beobachter verständlich ist. 2 Gespeichertes Wissen spielt wesentliche kausale Rolle im Verhalten des Systems. Brian C. Smith ohne 1: Jedes Programm ist WR-System Wissen zum Erfüllen der Aufgabe implizit enthalten ohne 2: Gespeichertes Wissen ist nur Dekoration Mind-Map Kommentare Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 103 / 138 WR-Systeme und Datenbanken Datenbank 1 speichert Informationen in verständlicher Form 2 beantwortet Anfragen abhängig vom Inhalt Zusätzliche Forderung für WRS (Baader, 1999): 3 System macht implizites Wissen explizit. nicht nur zuvor gespeicherte Fakten sondern alles, was aus den Axiomen folgt Logisch: {ϕ | Ax |= ϕ} Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 104 / 138 Komponenten von WR-Systemen Wissensbank speichert formalisiertes Wissen (knowledge base, KB) WR-Sprache mit Syntax und Semantik Inferenzmaschine leitet implizites Wissen ab (inference engine, IE) Schlussfolgerungsverfahren Ziele für Wissensrepräsentation: Ausdrucksstärke ausreichend für Domäne Schlussfolgerungsprobleme (effizient) entscheidbar Syntax leicht erlernbar Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 105 / 138 Logik als WR-System Bisher behandelte Systeme: Aussagen-/ Prädikatenlogik Wissensbank: Formel in Syntax der AL/PL Inferenzmaschine: Erfüllbarkeitstest mit Resolution / Tableau Prolog Wissensbank: Prolog-KB Inferenzmaschine: Prolog-Interpreter mit Horn-Resolution Nachteile: AL kann innere Struktur von Aussagen nicht abbilden Erfüllbarkeit für PL/Prolog ist unentscheidbar Syntax ungeeignet für Anwender ohne mathematische Vorkenntnisse Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 106 / 138 Inhalt 1 Einführung 2 Aussagenlogik 3 Prädikatenlogik 4 Beschreibungslogiken Wissensrepräsentation Frühe Wissensrepräsentations-Systeme Eigenschaften von Beschreibungslogiken Syntax Semantik Schlussfolgerungsprobleme Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 107 / 138 Semantische Netze früher Ansatz zur grafischen Wissensrepräsentation entwickelt 1960 von M. Ross Quillian WR-Sprache: beschrifteter Graph Knoten: Individuen, Klassen, Eigenschaften Kanten: is-a, has-prop Schlussfolgerungsverfahren Vererbung entlang is-a-Kanten ererbte Eigenschaften sind Default Default kann überschrieben werden Spreading Activation: Pfad zwischen Knoten interpretiert als Beziehung zwischen Entitäten („semantischer Abstand“) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – M. Ross Quillian Sommersemester 2017 108 / 138 Beispiel: Semantisches Netz Lebewesen Schlussfolgerungen is-a is-a Mensch Fleisch hat isst Tier is-a Tom ist ein Tier Tom isst eine Maus is-a Katze Maus is-a is-a Tom isst Jerry Katzen und Mäuse haben gemeinsam, dass sie Tiere sind Menschen und Mäuse haben gemeinsam, dass sie Lebewesen sind Fragen Ist Jerry Fleisch? Hat jeder Mensch eine Katze? Gehört jede Katze einem Menschen? Essen Katzen nur Fleisch, auch Fleisch, normalerweise Fleisch? Was bedeutet „is-a“? Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 109 / 138 Probleme Semantischer Netze Mehrdeutigkeit von is-a Individuum → Klasse: Element Klasse → Klasse: Teilmenge Vererbung als Default Jede Eigenschaft kann überschrieben werden „Viereck ist Dreieck mit vier Ecken“ keine terminologische Information „Semantischer Abstand“ abhängig von syntaktischen Details Tom → Katze → Tier: Tom ist eng verwandt mit Tier Tom → Perserkatze → Katze → Katzenartige → Raubtier → Wirbeltier → Tier: Tom ist entfernt verwandt mit Tier keine formale Semantik! Netzwerk bedeutet, was der Ersteller meint Konflikte zwischen Benutzer und Programmierer nicht entscheidbar Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 110 / 138 Frames - Ursprung und Intention WR-Formalismus zur Beschreibung von Entitäten entwickelt 1975 von Marvin Minsky Ziel: Imitation von menschlichem Kategorisieren Ablehnung von logischem Schließen „nicht vital und kreativ“ „nicht flexibel“ keine Möglichkeit, „normalerweise“ auszudrücken „Monotonität“: Einmal ableitbare Folgerungen können nicht durch neue Informationen verhindert werden Trennung von repräsentiertem Wissen und Schlussfolgerungsverfahren „zu radikal“ Bestehen auf Korrektheit (Verhinderung falscher Folgerungen) „unglaublich zerstörerisch“ Marvin Minsky (1927-2016) KI als „Sammlung von Heuristiken“ Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 111 / 138 Frames - Syntax und Inferenzen Syntax: Class Frame beschreibt Klasse von Entitäten Instance Frame beschreibt spezifische Entität Frame enthält slots für bestimmte Attribute Wert eines slots wird filler genannt Defaults für filler sind möglich Sub-frames für Spezialisierung (; is-a) Schlussfolgerungsverfahren Vererbung: Sub-frames ererben Default-Filler Kriterialität: Wenn ein Instance Frame I für alle Slots eines Class Frame C passende Filler hat, ist I eine Instanz C Matching: Test, ob Instanz eines Frames C1 auch Instanz eines anderen Frames C2 ist Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 112 / 138 Frames - Probleme Frame-Inferenzen lassen sich in PL ausdrücken (Hayes 1979) Wie bei Semantischen Netzen Keine Taxonomie, wenn alle Eigenschaften nur Defaults sind Ohne formale Semantik kein „richtig“ und „falsch“ KI als Sammlung von Heuristiken keine Wissenschaft, nur Programmiertechnik Frames wichtiger für Objekt-orientiertes Programmieren als für WBS Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 113 / 138 Probleme früher WR-Systeme fehlende formale Semantik unklare Bedeutung des Netzwerks unzuverlässige Schlussfolgerungsverfahren Inkompatibilität Graph-basierte Algorithmen Ergebnis abhängig von irrelevanter Information Konsequenz: Logik-basierte WR-Systeme formale Semantik angelehnt an mathematische Logik entscheidbare Fragmente der PL einfachere, intuitiv verständliche Syntax, z.B. keine Variablen Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 114 / 138 Inhalt 1 Einführung 2 Aussagenlogik 3 Prädikatenlogik 4 Beschreibungslogiken Wissensrepräsentation Frühe Wissensrepräsentations-Systeme Eigenschaften von Beschreibungslogiken Syntax Semantik Schlussfolgerungsprobleme Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 115 / 138 Beschreibungslogiken: Ursprung Familie von WR-Sprachen (Logiken) entscheidbare Schlussfolgerungsprobleme Komplexität von P bis 2-NExpTime auch ausdrucksstarke Logiken effizient „in der Praxis“ Ursprung: KL-One (Brachman et al., 1985) Ron Brachman Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 116 / 138 Inhalt 1 Einführung 2 Aussagenlogik 3 Prädikatenlogik 4 Beschreibungslogiken Wissensrepräsentation Frühe Wissensrepräsentations-Systeme Eigenschaften von Beschreibungslogiken Syntax Semantik Schlussfolgerungsprobleme Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 117 / 138 BL-Bausteine Konzeptnamen Mensch, Universität, Stadt, usw. ; einstellige Prädikate in PL Rollennamen hatMutter, besucht, arbeitetMit, usw. ; zweistellige Prädikate in PL Individuen john, dhbw, stuttgart, usw. ; Konstanten in PL nicht immer Teil der Sprache Die Menge aller Konzeptnamen, Rollennamen und Individuen eines Systems heißt Signatur oder Vokabular. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 118 / 138 Konzept-Konstruktoren Konstruktion komplexer Konzepte aus Konzept- und Rollennamen jeder Konzeptname ist ein Konzept; > und ⊥ sind Konzepte; Boole’sche Operatoren: Für Konzepte C und D sind auch ¬C , C u D, und C t D Konzepte; Quantoren: Für einen Rollennamen r und ein Konzept C sind auch ∃r.C und ∀r.C Konzepte. Vorrang: (, ) ∀, ∃ ¬ u t Weitere Konstruktoren für komplexe Konzepte und Rollen existieren. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 119 / 138 Beschreibungslogiken und Konstruktoren Quelle: http://www.cs.man.ac.uk/~ezolin/dl/ Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 120 / 138 Inhalt 1 Einführung 2 Aussagenlogik 3 Prädikatenlogik 4 Beschreibungslogiken Wissensrepräsentation Frühe Wissensrepräsentations-Systeme Eigenschaften von Beschreibungslogiken Syntax Semantik Schlussfolgerungsprobleme Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 121 / 138 Die Beschreibungslogik ALC „Attributive Language with Complement“ Boole’sche Operatoren ¬, u, t Quantoren ∀, ∃ Name hat historische Gründe: AL erlaubt ∀, u und eingeschränkt ¬ und ∃ C Uneingeschränkt ¬, damit auch t und ∃ uneingeschränkt Beispiel (ALC-Konzept) Student u ∀besucht.BachelorVorlesung Klasse der Studenten, die nur Bachelor-Vorlesungen besuchen Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 122 / 138 Semantik von ALC Definition (Interpretation für ALC) Sei C ein ALC-Konzept mit Konzeptnamen N und und Rollennamen R. Eine Interpretation I ist ein Paar (∆I , ·I ) mit ∆I ist eine nichtleere Menge; die Funktion ·I weist jedem Konzeptnamen n ∈ N eine einstellige Relation n I über ∆I und jedem Rollennamen r ∈ R eine zweistellige Relation r I über ∆I zu. Beispiel (ALC-Interpretation) Student u ∀besucht.BachelorVorlesung I = ({Peter, Paul, Maria, Logik, WBS}, {Student 7→ {Peter, Maria}, Bachelorvorlesung 7→ {Logik}, besucht 7→ {(Peter, Logik), (Peter, WBS), (Maria, Logik)}}) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 123 / 138 Schematische Darstellung einer Interpretation Konzeptnamen ...C ... Rollennamen ...r ... ·I ∆I CI rI Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 124 / 138 Interpretation komplexer Konzepte Die Interpretation komplexer Konzepte ist induktiv definiert: Name Top Bottom Negation Konjunktion Disjunktion Allquantor Existenzquantor Jan Hladik (DHBW Stuttgart) Syntax > ⊥ ¬C C uD C tD ∀r.C ∃r.C Semantik ∆I ∅ ∆I \ C I C I ∩ DI C I ∪ DI {x ∈ ∆I | (x, y) ∈ r I impliziert y ∈ C I } {x ∈ ∆I | es gibt ein y ∈ ∆I , so dass (x, y) ∈ r I und y ∈ C I gilt } Wissensbasierte Systeme – Logik – Sommersemester 2017 125 / 138 Übung: ALC-Konzepte Verwenden Sie die Konzeptnamen Mensch, Weiblich, Architekt, Ingenieur und den Rollennamen hat-kind, um Konzepte für die folgenden Klassen zu formulieren: 1 Ein Mensch, der nicht weiblich ist. 2 Jemand, der nur weibliche Kinder hat. 3 Ein Mensch, der ein Kind hat, das Architekt oder Ingenieur ist. 4 Großeltern. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 126 / 138 Inhalt 1 Einführung 2 Aussagenlogik 3 Prädikatenlogik 4 Beschreibungslogiken Wissensrepräsentation Frühe Wissensrepräsentations-Systeme Eigenschaften von Beschreibungslogiken Syntax Semantik Schlussfolgerungsprobleme Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 127 / 138 Grundlegende BL-Schlussfolgerungsprobleme Konsistenz Ist ein Konzept C widersprüchlich? ; Ist C erfüllbar? Subsumtion Ist jede Instanz von C auch Instanz von D? ; Ist C u ¬D erfüllbar? liefert Konzepthierarchie englisch: subsumption Erfüllbarkeitstest kann beide Schlussfolgerungsprobleme entscheiden. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 128 / 138 Tableau-Algorithmus für ALC-Konzepte arbeitet auf ALC-Konzepten in Negations-Normalform (NNF) Negation nur direkt vor Konzeptnamen ¬(C u D) ; ¬C t ¬D ¬∀r.C ; ∃r.¬C ¬¬C ; C ¬(C t D) ; ¬C u ¬D ¬∃r.C ; ∀r.¬C erzeugt Tableau für Konzept C Baum, der Modell für C repräsentiert (wenn Clash-frei und vollständig) Knoten beschriftet mit Mengen von Subkonzepten von C Kanten beschriftet mit Rollennamen Wurzel beschriftet mit C Weitere Knoten von ∃-Regel erzeugt Keine Tabellenstruktur für Disjunktionen, sondern depth-first-Expansion mit Backtracking Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 129 / 138 ALC-Tableau: Formale Definition Definition (ALC-Tableau) Sei C ein ALC-Konzept, SC(C ) die Menge aller Subkonzepte von C und Rol(C ) die Menge aller in C vorkommenden Rollennamen. Ein Tableau für C ist ein Baum G = (V , E, L) mit einer Knotenmenge V , einer Kantenmenge E ⊆ V × V und einer Beschriftungsfunktion L mit L : V → 2SC(C ) und L : V × V → Rol(C ). Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 130 / 138 ALC-Tableau-Algorithmus 4 Regeln (wegen NNF) brechen komplexe Formeln in einfachere auf Anwendungsreihenfolge don’t-care-nichtdeterministisch t-Regel don’t-know-nichtdeterministisch Wenn keine Regel anwendbar ist, heißt das Tableau vollständig. Clash: Knotenlabel enthält C und ¬C für ein Konzept C Wenn kein Knoten einen Clash enthält, heißt das Tableau Clash-frei. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 131 / 138 Tableau-Regeln für ALC-Konzepte Definition (r-Nachfolger) Wenn (v, v 0 ) ∈ E und L(v, v 0 ) = r gelten, heißt v 0 r-Nachfolger von v. u Wenn es ein v ∈ V gibt mit C u D ∈ L(v) und {C , D} 6⊆ L(v), dann L(v) := L(v) ∪ {C , D}. t Wenn es ein v ∈ V gibt mit C t D ∈ L(v) und {C , D} ∩ L(v) = ∅, dann wähle X ∈ {C , D} und setze L(v) := L(v) ∪ {X }. ∃ Wenn es ein v ∈ V gibt mit ∃r.C ∈ L(v) und kein r-Nachfolger v 0 von v existiert mit C ∈ L(v), dann V := V ∪ {v 0 }, E := E ∪ {(v, v 0 )}, L(v 0 ) := {C } und L(v, v 0 ) := r für einen neuen Knoten v 0 . ∀ Wenn es ein v ∈ V gibt mit ∀r.C ∈ L(v) und ein r-Nachfolger v 0 von v existiert mit C ∈ / L(v 0 ), dann L(v 0 ) := L(v 0 ) ∪ {C }. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 132 / 138 Beispiel: ALC-Tableau-Algorithmus C = ∃r.(A t ∃r.B) u ∃r.¬A u ∀r.(¬A u ∀r.(¬B t A)) u r v L(u) = {C }, ∃r.(A t ∃r.B), r w ∃r.¬A, ∀r.(¬A u ∀r.(¬B t A))} L(v) = {A t ∃r.B}, ¬A, ∀r.(¬B t A)}, A}, ∃r.B} r L(w) = {¬A}, ∀r.(¬B t A)} x Jan Hladik (DHBW Stuttgart) L(x) = {B}, ¬B t A}, ¬B}, A} Wissensbasierte Systeme – Logik – Sommersemester 2017 133 / 138 ALC-Tableau und Modell Das vollständige und Clash-freie Tableau liefert ein Modell I: ∆I AI BI rI = {u, v, w, x} (alle Knoten) = {x} (alle Knoten, deren Beschriftung A enthält) = {x} (alle Knoten, deren Beschriftung B enthält) = {(u, v), (u, w), (v, x)} (alle Kanten, die mit r beschriftet sind) Aus der Semantik von ALC folgt u ∈ C I , also ist C erfüllbar. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 134 / 138 Übung: ALC-Tableaualgorithmus Testen Sie die Erfüllbarkeit des Konzepts ∃r.C u ∃r.¬C u ∀r.(¬C t D) u ∀r.(¬D t ∃s.C ) mit Hilfe des ALC-Tableau-Algorithmus. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 135 / 138 Korrektheit und Vollständigkeit Satz (Korrektheit des ALC-Tableau-Algorithmus) Wenn der Algorithmus für ein Konzept C ein Clash-freies und vollständiges Tableau erzeugt, ist C erfüllbar. Beweis. Aus dem Tableau kann ein Modell abgeleitet werden. Satz (Vollständigkeit des ALC-Tableau-Algorithmus) Wenn das Konzept C erfüllbar ist, kann die t-Regel so angewendet werden, dass der Algorithmus ein Clash-freies und vollständiges Tableau erzeugt. Beweis. Das Modell kann genutzt werden, um eine erfolgreiche Folge von Regelanwendungen zu finden. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 136 / 138 Terminierung Satz (Terminierung des ALC-Tableau-Algorithmus) Der Algorithmus terminiert für jedes Eingabekonzept C . Beweis. Quantorentiefe sinkt mit jeder Ebene des Baums. Jeder Knoten ist nur mit Subkonzepten von C beschriftet. C hat endlich viele Subkonzepte. Die ∃-Regel ist in jedem Knoten für jedes Konzept höchstens einmal anwendbar. Satz (Modelleigenschaft von ALC) Für ALC-Konzepte gilt die Endliches-Baum-Modell-Eigenschaft: Jedes erfüllbare Konzept C hat ein endliches Baum-Modell. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 137 / 138 Zusammenfassung: ALC ausdrucksstärker als Aussagenlogik ausdrucksschwächer als Prädikatenlogik ∀ und ∃ nur eingeschränkt nur ein- und zweistellige Prädikate keine Funktionen keine Variablen Tableau-Algorithmus erzeugt endliches Baum-Modell korrekt, vollständig, terminierend Schlussfolgerungsprobleme entscheidbar Konsistenz Subsumtion Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 138 / 138