Wissensbasierte Systeme – Logik – Jan Hladik DHBW Stuttgart Sommersemester 2017 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 1 / 139 Inhalt 1 Einführung 2 Aussagenlogik 3 Prädikatenlogik 4 Beschreibungslogiken Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 2 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 3 / 139 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 / 139 Literatur Vorlesungsmaterial Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 4 / 139 Literatur Vorlesungsmaterial http://wwwlehre.dhbw-stuttgart.de/~hladik/WBS/ Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 4 / 139 Literatur Vorlesungsmaterial http://wwwlehre.dhbw-stuttgart.de/~hladik/WBS/ Logik Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 4 / 139 Literatur Vorlesungsmaterial http://wwwlehre.dhbw-stuttgart.de/~hladik/WBS/ Logik Dirk W. Hoffmann: Theoretische Informatik Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 4 / 139 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/ Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 4 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 4 / 139 Inhalt 1 Einführung 2 Aussagenlogik Syntax Semantik Schlussfolgerungsverfahren 3 Prädikatenlogik 4 Beschreibungslogiken Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 5 / 139 Inhalt 1 Einführung 2 Aussagenlogik Syntax Semantik Schlussfolgerungsverfahren 3 Prädikatenlogik 4 Beschreibungslogiken Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 6 / 139 Aussagenlogik Einfachste in dieser Vorlesung betrachtete Logik begrenzte Ausdrucksstärke Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 7 / 139 Aussagenlogik Einfachste in dieser Vorlesung betrachtete Logik begrenzte Ausdrucksstärke einfach zu verstehen und anzuwenden Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 7 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 7 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 7 / 139 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.“ Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 7 / 139 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 / 139 Syntax der Aussagenlogik Definition (Aussagenlogische Formel) Sei V eine Menge von Aussagenvariablen. Jedes X ∈ V ist eine aussagenlogische Formel. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 8 / 139 Syntax der Aussagenlogik Definition (Aussagenlogische Formel) Sei V eine Menge von Aussagenvariablen. Jedes X ∈ V ist eine aussagenlogische Formel. > und ⊥ sind aussagenlogische Formeln. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 8 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 8 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 8 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 8 / 139 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) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 8 / 139 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) ϕ ∧ ψ (Konjunktion) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 8 / 139 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) ϕ ∧ ψ (Konjunktion) ϕ ∨ ψ (Disjunktion) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 8 / 139 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) ϕ ∧ ψ (Konjunktion) ϕ ∨ ψ (Disjunktion) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 8 / 139 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) ϕ ∨ ψ (Disjunktion) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 8 / 139 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) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 8 / 139 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) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 8 / 139 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) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 8 / 139 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 / 139 Vorrang und Assoziativität der Junktoren Vorrang der Junktoren: Jan Hladik (DHBW Stuttgart) ¬ ∧ Wissensbasierte Systeme – Logik – ∨ → Sommersemester 2017 ↔ 9 / 139 Vorrang und Assoziativität der Junktoren Vorrang der Junktoren: ¬ ∧ ∨ → ↔ Beispiel A ∧ ¬B → B ∨ C Jan Hladik (DHBW Stuttgart) bedeutet (A ∧ (¬B)) → (B ∨ C ) Wissensbasierte Systeme – Logik – Sommersemester 2017 9 / 139 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 / 139 Inhalt 1 Einführung 2 Aussagenlogik Syntax Semantik Schlussfolgerungsverfahren 3 Prädikatenlogik 4 Beschreibungslogiken Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 10 / 139 Semantik der Aussagenlogik Aussagevariablen erhalten Wert 0 oder 1 Formel wird wahr oder falsch Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 11 / 139 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} Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 11 / 139 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 / 139 Interpretation komplexer Formeln ⊥I 0 >I 1 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 12 / 139 Interpretation komplexer Formeln ⊥I 0 >I 1 Jan Hladik (DHBW Stuttgart) ϕI (¬ϕ)I Wissensbasierte Systeme – Logik – 0 1 1 0 Sommersemester 2017 12 / 139 Interpretation komplexer Formeln ⊥I 0 >I 1 ϕI (¬ϕ)I (ϕ ∧ ψ)I ϕI 0 1 0 0 0 1 0 1 1 0 ψI 0 1 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 12 / 139 Interpretation komplexer Formeln ⊥I 0 >I 1 (ϕ ∧ ψ)I ϕI 0 ϕI (¬ϕ)I 1 ψI 0 1 Jan Hladik (DHBW Stuttgart) 0 0 ψI 0 1 0 1 Wissensbasierte Systeme – Logik – 0 1 1 0 (ϕ ∨ ψ)I ϕI 0 1 0 1 1 1 Sommersemester 2017 12 / 139 Interpretation komplexer Formeln ⊥I 0 >I 1 (ϕ ∧ ψ)I ϕI 0 ϕI (¬ϕ)I 1 ψI 0 1 0 0 ψI 0 1 0 1 0 1 1 0 (ϕ ∨ ψ)I ϕI 0 1 0 1 1 1 (ϕ → ψ)I ϕI 0 1 ψI 0 1 Jan Hladik (DHBW Stuttgart) 1 1 0 1 Wissensbasierte Systeme – Logik – Sommersemester 2017 12 / 139 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 / 139 Beispiele: Interpretationen Die Interpretation I = {A 7→ 1, B 7→ 1, C 7→ 0} macht die Formel . . . B wahr; Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 13 / 139 Beispiele: Interpretationen Die Interpretation I = {A 7→ 1, B 7→ 1, C 7→ 0} macht die Formel . . . B wahr; A ∧ B wahr; Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 13 / 139 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; Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 13 / 139 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; Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 13 / 139 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 / 139 Äquivalenz Definition (Äquivalenz) Zwei aussagenlogische Formeln ϕ und ψ sind (logisch) äquivalent, wenn jede Interpretation beiden Formeln denselben Wahrheitswert zuordnet, d. h.: ϕI = ψ I Jan Hladik (DHBW Stuttgart) für jedes I Wissensbasierte Systeme – Logik – Sommersemester 2017 14 / 139 Ä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 (ϕ ∧ ψ) ∨ (¬ϕ ∧ ¬ψ) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 14 / 139 Ä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 ¬ϕ ∨ ψ Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 14 / 139 Ä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 ¬(¬ϕ ∨ ¬ψ) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 14 / 139 Ä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 / 139 Tautologien Definition (Tautologie) Eine Tautologie ist eine Formel, die in jeder Interpretation wahr ist. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 15 / 139 Tautologien Definition (Tautologie) Eine Tautologie ist eine Formel, die in jeder Interpretation wahr ist. Beispiele (Tautologien) A ↔ A (Identität) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 15 / 139 Tautologien Definition (Tautologie) Eine Tautologie ist eine Formel, die in jeder Interpretation wahr ist. Beispiele (Tautologien) A ↔ A (Identität) ¬(A ∧ ¬A) (Ausgeschlossener Widerspruch) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 15 / 139 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) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 15 / 139 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) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 15 / 139 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) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 15 / 139 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) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 15 / 139 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) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 15 / 139 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 / 139 Weitere Tautologien: Rechenregeln A ∧ B ↔ B ∧ A (Kommutativität) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 16 / 139 Weitere Tautologien: Rechenregeln A ∧ B ↔ B ∧ A (Kommutativität) (A ∧ B) ∧ C ↔ A ∧ (B ∧ C ) (Assoziativität) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 16 / 139 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) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 16 / 139 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) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 16 / 139 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) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 16 / 139 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) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 16 / 139 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) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 16 / 139 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) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 16 / 139 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) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 16 / 139 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) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 16 / 139 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 / 139 Modelle, Gültigkeit, Erfüllbarkeit Definition (Modell) Ein Modell für eine Formel ϕ ist eine Interpretation I, die ϕ wahr macht. (I |= ϕ). Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 17 / 139 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. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 17 / 139 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. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 17 / 139 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). Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 17 / 139 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, Jan Hladik (DHBW Stuttgart) A ∧ ¬B, A↔B Wissensbasierte Systeme – Logik – Sommersemester 2017 17 / 139 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 / 139 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 / 139 Schlussfolgerung in der Aussagenlogik Bestimmung der Eigenschaften einer Formel ϕ Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 19 / 139 Schlussfolgerung in der Aussagenlogik Bestimmung der Eigenschaften einer Formel ϕ gültig (ϕ ist eine Tautologie; jede Interpretation ist ein Modell) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 19 / 139 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 ϕ) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 19 / 139 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) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 19 / 139 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 ϕ) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 19 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 19 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 19 / 139 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 / 139 Beweis der Gültigkeit: Äquivalenzumformungen Beispiel (Reductio ad Absurdum) (A → B) ∧ (A → ¬B) → ¬A Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 20 / 139 Beweis der Gültigkeit: Äquivalenzumformungen Beispiel (Reductio ad Absurdum) (A → B) ∧ (A → ¬B) → ¬A (¬A ∨ B) ∧ (¬A ∨ ¬B) → ¬A Jan Hladik (DHBW Stuttgart) Ersetzung von → (zweimal) Wissensbasierte Systeme – Logik – Sommersemester 2017 20 / 139 Beweis der Gültigkeit: Äquivalenzumformungen Beispiel (Reductio ad Absurdum) (A → B) ∧ (A → ¬B) → ¬A (¬A ∨ B) ∧ (¬A ∨ ¬B) → ¬A ¬((¬A ∨ B) ∧ (¬A ∨ ¬B)) ∨ ¬A Jan Hladik (DHBW Stuttgart) Ersetzung von → (zweimal) Ersetzung von → Wissensbasierte Systeme – Logik – Sommersemester 2017 20 / 139 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 Jan Hladik (DHBW Stuttgart) Ersetzung von → (zweimal) Ersetzung von → De Morgan Wissensbasierte Systeme – Logik – Sommersemester 2017 20 / 139 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 Jan Hladik (DHBW Stuttgart) Ersetzung von → (zweimal) Ersetzung von → De Morgan De Morgan (zweimal) Wissensbasierte Systeme – Logik – Sommersemester 2017 20 / 139 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 Jan Hladik (DHBW Stuttgart) Ersetzung von → (zweimal) Ersetzung von → De Morgan De Morgan (zweimal) Distributivität Wissensbasierte Systeme – Logik – Sommersemester 2017 20 / 139 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 Jan Hladik (DHBW Stuttgart) Ersetzung von → (zweimal) Ersetzung von → De Morgan De Morgan (zweimal) Distributivität Ausgeschlossenes Drittes Wissensbasierte Systeme – Logik – Sommersemester 2017 20 / 139 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 Jan Hladik (DHBW Stuttgart) Ersetzung von → (zweimal) Ersetzung von → De Morgan De Morgan (zweimal) Distributivität Ausgeschlossenes Drittes > ist neutrales Element für ∧ Wissensbasierte Systeme – Logik – Sommersemester 2017 20 / 139 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 > Jan Hladik (DHBW Stuttgart) Ersetzung von → (zweimal) Ersetzung von → De Morgan De Morgan (zweimal) Distributivität Ausgeschlossenes Drittes > ist neutrales Element für ∧ Ausgeschlossenes Drittes Wissensbasierte Systeme – Logik – Sommersemester 2017 20 / 139 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 / 139 Beweis der Gültigkeit: Wahrheitstabelle Beispiel (Reductio ad Absurdum) A B 0 0 C := A → B 1 Jan Hladik (DHBW Stuttgart) D := A → ¬B 1 C ∧ D ¬A 1 1 Wissensbasierte Systeme – Logik – C ∧ D → ¬A 1 Sommersemester 2017 21 / 139 Beweis der Gültigkeit: Wahrheitstabelle Beispiel (Reductio ad Absurdum) A B 0 0 0 1 C := A → B 1 1 Jan Hladik (DHBW Stuttgart) D := A → ¬B 1 1 C ∧ D ¬A 1 1 1 1 Wissensbasierte Systeme – Logik – C ∧ D → ¬A 1 1 Sommersemester 2017 21 / 139 Beweis der Gültigkeit: Wahrheitstabelle Beispiel (Reductio ad Absurdum) A B 0 0 0 1 1 0 C := A → B 1 1 0 Jan Hladik (DHBW Stuttgart) D := A → ¬B 1 1 1 C ∧ D ¬A 1 1 1 1 0 0 Wissensbasierte Systeme – Logik – C ∧ D → ¬A 1 1 1 Sommersemester 2017 21 / 139 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 Jan Hladik (DHBW Stuttgart) D := A → ¬B 1 1 1 0 C ∧ D ¬A 1 1 1 1 0 0 0 0 Wissensbasierte Systeme – Logik – C ∧ D → ¬A 1 1 1 1 Sommersemester 2017 21 / 139 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 / 139 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 / 139 Resolution John Alan Robinson: A machine-oriented logic based on the resolution principle (1965) J. A. Robinson (1930–2016) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 23 / 139 Resolution John Alan Robinson: A machine-oriented logic based on the resolution principle (1965) Erfüllbarkeitstest für Formel ϕ J. A. Robinson (1930–2016) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 23 / 139 Resolution John Alan Robinson: A machine-oriented logic based on the resolution principle (1965) Erfüllbarkeitstest für Formel ϕ Erfüllbarkeitstest entscheidet auch J. A. Robinson (1930–2016) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 23 / 139 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. J. A. Robinson (1930–2016) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 23 / 139 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 / 139 Resolutionsprinzip Finde Widerspruch in ϕ Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 24 / 139 Resolutionsprinzip Finde Widerspruch in ϕ betrachte ϕ als Menge von Disjunktionen (Klauseln) Beispiel (ϕ = (X ∨ Y ) ∧ (¬Y ∨ Z ) ∧ ¬Z ∧ ¬X ) X ∨Y Jan Hladik (DHBW Stuttgart) ¬Y ∨ Z ¬Z Wissensbasierte Systeme – Logik – ¬X Sommersemester 2017 24 / 139 Resolutionsprinzip Finde Widerspruch in ϕ betrachte ϕ als Menge von Disjunktionen (Klauseln) suche Paare von Klauseln C1 , C2 mit gegensätzlichen Literalen L, ¬L Beispiel (ϕ = (X ∨ Y ) ∧ (¬Y ∨ Z ) ∧ ¬Z ∧ ¬X ) X ∨Y Jan Hladik (DHBW Stuttgart) ¬Y ∨ Z ¬Z Wissensbasierte Systeme – Logik – ¬X Sommersemester 2017 24 / 139 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 Beispiel (ϕ = (X ∨ Y ) ∧ (¬Y ∨ Z ) ∧ ¬Z ∧ ¬X ) X ∨Y ¬Y ∨ Z ¬Z ¬X X ∨Z Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 24 / 139 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 ! Beispiel (ϕ = (X ∨ Y ) ∧ (¬Y ∨ Z ) ∧ ¬Z ∧ ¬X ) X ∨Y ¬Y ∨ Z ¬Z ¬X X ∨Z Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 24 / 139 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 Beispiel (ϕ = (X ∨ Y ) ∧ (¬Y ∨ Z ) ∧ ¬Z ∧ ¬X ) X ∨Y ¬Y ∨ Z ¬Z ¬X X ∨Z Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 24 / 139 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 Beispiel (ϕ = (X ∨ Y ) ∧ (¬Y ∨ Z ) ∧ ¬Z ∧ ¬X ) X ∨Y ¬Y ∨ Z ¬Z ¬X X ∨Z Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 24 / 139 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 Beispiel (ϕ = (X ∨ Y ) ∧ (¬Y ∨ Z ) ∧ ¬Z ∧ ¬X ) X ∨Y ¬Y ∨ Z ¬Z ¬X X ∨Z X Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 24 / 139 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 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 / 139 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 / 139 Literale Definition (Literal) Ein Literal ist eine (möglicherweise negierte) Aussagenvariable. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 25 / 139 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 / 139 Konjunktive Normalform Definition (Konjunktive Normalform) Eine aussagenlogische Formel ϕ ist in konjunktiver Normalform (KNF), wenn ϕ eine Konjunktion von Disjunktionen von Literalen ist. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 26 / 139 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; Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 26 / 139 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 / 139 Transformation in KNF Satz Jede aussagenlogische Formel kann in eine äquivalente Formel in KNF transformiert werden. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 27 / 139 Transformation in KNF Satz Jede aussagenlogische Formel kann in eine äquivalente Formel in KNF transformiert werden. Ziel: (L1 ∨ L2 ∨ L3 ) ∧ (L4 ∨ L5 ) ∧ L6 . . . Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 27 / 139 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 ϕ↔ψ Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – ; ; ¬ϕ ∨ ψ ϕ ∧ ψ ∨ ¬ϕ ∧ ¬ψ Sommersemester 2017 27 / 139 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 ¬(ϕ ∨ ψ) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – ; ; ; ¬ϕ ∨ ψ ϕ ∧ ψ ∨ ¬ϕ ∧ ¬ψ ¬ϕ ∧ ¬ψ Sommersemester 2017 27 / 139 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 ¬¬ϕ Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – ; ; ; ; ¬ϕ ∨ ψ ϕ ∧ ψ ∨ ¬ϕ ∧ ¬ψ ¬ϕ ∧ ¬ψ ϕ Sommersemester 2017 27 / 139 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 ϕ ∨ (ψ ∧ χ) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – ; ; ; ; ; ¬ϕ ∨ ψ ϕ ∧ ψ ∨ ¬ϕ ∧ ¬ψ ¬ϕ ∧ ¬ψ ϕ (ϕ ∨ ψ) ∧ (ϕ ∨ χ) Sommersemester 2017 27 / 139 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 ϕ ∨ (ψ ∨ χ) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – ; ; ; ; ; ; ¬ϕ ∨ ψ ϕ ∧ ψ ∨ ¬ϕ ∧ ¬ψ ¬ϕ ∧ ¬ψ ϕ (ϕ ∨ ψ) ∧ (ϕ ∨ χ) ϕ∨ψ∨χ Sommersemester 2017 27 / 139 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 / 139 Ü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 / 139 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. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 29 / 139 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 ) ; Jan Hladik (DHBW Stuttgart) {X , ¬Y , Z } Wissensbasierte Systeme – Logik – Sommersemester 2017 29 / 139 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. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 29 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 29 / 139 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 }} Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 29 / 139 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 / 139 Resolution von Klauseln Gegeben: zwei Klauseln C1 = {X , Y } und C2 = {¬Y , Z }. Gesucht: Modell für C1 ∧ C2 . Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 30 / 139 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. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 30 / 139 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 }. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 30 / 139 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 }. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 30 / 139 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 ). Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 30 / 139 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 / 139 Erfüllbarkeitstest mit Resolution Sei S ` C . Jedes Modell für S ist auch Modell für C . Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 31 / 139 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 }. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 31 / 139 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. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 31 / 139 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. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 31 / 139 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. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 31 / 139 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 / 139 Resolutions-Algorithmus für Aussagenlogik Eingabe: Ausgabe: AL-Formel ϕ „erfüllbar“ oder „unerfüllbar“ Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 32 / 139 Resolutions-Algorithmus für Aussagenlogik Eingabe: Ausgabe: 1: AL-Formel ϕ „erfüllbar“ oder „unerfüllbar“ transformiere ϕ in KNF Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 32 / 139 Resolutions-Algorithmus für Aussagenlogik Eingabe: Ausgabe: AL-Formel ϕ „erfüllbar“ oder „unerfüllbar“ transformiere ϕ in KNF 2: initialisiere S mit Disjunktionen von ϕ 1: Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 32 / 139 Resolutions-Algorithmus für Aussagenlogik Eingabe: Ausgabe: AL-Formel ϕ „erfüllbar“ oder „unerfüllbar“ transformiere ϕ in KNF 2: initialisiere S mit Disjunktionen von ϕ 3: while es existiert C3 = res(C1 , C2 ) mit C3 ∈ / S do 1: Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 32 / 139 Resolutions-Algorithmus für Aussagenlogik Eingabe: Ausgabe: 1: 2: 3: 4: 5: 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“ Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 32 / 139 Resolutions-Algorithmus für Aussagenlogik Eingabe: Ausgabe: 1: 2: 3: 4: 5: 6: 7: 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 } Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 32 / 139 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 / 139 Eigenschaften des Resolutions-Algorithmus Satz (Korrektheit) Aus K(ϕ) `∗ C folgt ϕ |= C . Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 33 / 139 Eigenschaften des Resolutions-Algorithmus Satz (Korrektheit) Aus K(ϕ) `∗ C folgt ϕ |= C . Satz (Widerlegungsvollständigkeit) Ist ϕ unerfüllbar, gilt K(ϕ) `∗ 2. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 33 / 139 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. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 33 / 139 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) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 33 / 139 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. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 33 / 139 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 / 139 Resolution und Nichtdeterminismus Wenn mehrere Resolventen möglich sind: terminiert der Algorithmus für jede Variante Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 34 / 139 Resolution und Nichtdeterminismus Wenn mehrere Resolventen möglich sind: terminiert der Algorithmus für jede Variante . . . aber manche Varianten sind schneller als andere. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 34 / 139 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. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 34 / 139 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 / 139 Ü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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 35 / 139 Übersetzung natürlicher Sprache in Aussagenlogik 1 2 Wenn Hans zum Meeting eingeladen wird und nicht auf Dienstreise ist, nimmt er am Meeting teil. ¬R ∧ E → M ; R ∨ ¬E ∨ M Wenn der Chef Hans beim Meeting sehen will, lädt er ihn auch ein. C → E ; ¬C ∨ E Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 35 / 139 Übersetzung natürlicher Sprache in Aussagenlogik 1 2 3 Wenn Hans zum Meeting eingeladen wird und nicht auf Dienstreise ist, nimmt er am Meeting teil. ¬R ∧ E → M ; R ∨ ¬E ∨ M Wenn der Chef Hans beim Meeting sehen will, lädt er ihn auch ein. C → E ; ¬C ∨ E Wenn der Chef Hans nicht beim Meeting sehen will, wird Hans bald gekündigt. ¬C → K ; C ∨ K Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 35 / 139 Ü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 Hans hat nicht am Meeting teilgenommen. 2 Wenn der Chef Hans nicht beim Meeting sehen will, wird Hans bald gekündigt. ¬C → K ; C ∨ K Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – ¬M Sommersemester 2017 35 / 139 Ü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 2 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 35 / 139 Ü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 / 139 Logische Implikation und Erfüllbarkeit Implizieren die Prämissen 1–5 die Konklusion 6? Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 36 / 139 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? Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 36 / 139 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? Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 36 / 139 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. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 36 / 139 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. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 36 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 36 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 36 / 139 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 / 139 Bestimmung des Schicksals von Hans durch Resolution {{R, ¬E, M }, {¬C , E}, {C , K }, {¬M }, {¬R}, {¬K }} R, ¬E, M ¬M R, ¬E Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 37 / 139 Bestimmung des Schicksals von Hans durch Resolution {{R, ¬E, M }, {¬C , E}, {C , K }, {¬M }, {¬R}, {¬K }} R, ¬E, M ¬M ¬C , E C, K R, ¬E Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 37 / 139 Bestimmung des Schicksals von Hans durch Resolution {{R, ¬E, M }, {¬C , E}, {C , K }, {¬M }, {¬R}, {¬K }} R, ¬E, M ¬M R, ¬E Jan Hladik (DHBW Stuttgart) ¬C , E C, K E, K Wissensbasierte Systeme – Logik – Sommersemester 2017 37 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 37 / 139 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 E, K R, K Jan Hladik (DHBW Stuttgart) C, K ¬R Wissensbasierte Systeme – Logik – Sommersemester 2017 37 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 37 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – ¬K Sommersemester 2017 37 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 37 / 139 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 / 139 Optimierung des Resolutionsverfahrens Auswahl der Elternklauseln ist entscheidend für Effizienz Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 38 / 139 Optimierung des Resolutionsverfahrens Auswahl der Elternklauseln ist entscheidend für Effizienz Heuristiken: Priorisiere kleine Klauseln Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 38 / 139 Optimierung des Resolutionsverfahrens Auswahl der Elternklauseln ist entscheidend für Effizienz Heuristiken: Priorisiere kleine Klauseln Priorisiere Klauseln mit hoher Ableitungstiefe ; Depth-first-Suche Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 38 / 139 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 , . . .} Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 38 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 38 / 139 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) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 38 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 38 / 139 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) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 38 / 139 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 / 139 Ü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 / 139 Zusatzübung: Resolution Aus einem Raum führen 3 Türen: Rot, grün und blau. Hinter zweien verbergen sich Drachen, die dritte führt in die Freiheit. Auf den Türen stehen folgende Informationen: Diese Tür führt in die Freiheit. Hinter dieser Tür wartet ein Drache. Hinter der blauen Tür wartet ein Drache. Mindestens eine der drei Informationen ist wahr, mindestens eine ist falsch. Zeigen Sie: Die grüne Tür führt in die Freiheit. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 40 / 139 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 41 / 139 Tableau-Algorithmen Erfüllbarkeitstest für aussagenlogische Formeln Evert Willem Beth: Semantic entailment and formal derivability (1955) E. W. Beth (1908–1964) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 42 / 139 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 42 / 139 Merkmale von Tableau-Algorithmen Beginne mit der Ausgangsformel χ und einer Spalte Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 43 / 139 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.“ Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 43 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 43 / 139 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.“ Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 43 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 43 / 139 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: Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 43 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 43 / 139 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 43 / 139 Tableau-Algorithmen: Regeln Vorbedingung „Wenn ϕ ∧ ψ vorhanden ist. . . “ Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 44 / 139 Tableau-Algorithmen: Regeln Vorbedingung „Wenn ϕ ∧ ψ vorhanden ist. . . “ Welche Formel ist zu verarbeiten? Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 44 / 139 Tableau-Algorithmen: Regeln Vorbedingung „Wenn ϕ ∧ ψ vorhanden ist. . . “ Welche Formel ist zu verarbeiten? Anwendbarkeitsbedingung „. . . aber nicht ϕ und ψ, . . . “ Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 44 / 139 Tableau-Algorithmen: Regeln Vorbedingung „Wenn ϕ ∧ ψ vorhanden ist. . . “ Welche Formel ist zu verarbeiten? Anwendbarkeitsbedingung „. . . aber nicht ϕ und ψ, . . . “ Wann ist Regel nicht mehr anwendbar? (; Terminierung) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 44 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 44 / 139 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.“ Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 44 / 139 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? Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 44 / 139 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? Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 44 / 139 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 44 / 139 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. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 45 / 139 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 ↔ Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 45 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 45 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 45 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 45 / 139 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 45 / 139 Tableau-Regeln für Aussagenlogik ∧-Regel Wenn ϕ ∧ ψ ∈ S und {ϕ, ψ} * S dann S := S ∪ {ϕ, ψ} Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 46 / 139 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 46 / 139 Tableau-Algorithmus für Aussagenlogik Eingabe: Ausgabe: AL-Formel ϕ „erfüllbar“ oder „unerfüllbar“ Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 47 / 139 Tableau-Algorithmus für Aussagenlogik Eingabe: Ausgabe: AL-Formel ϕ „erfüllbar“ oder „unerfüllbar“ ϕ0 = nnf(ϕ) 2: initialisiere S mit {ϕ0 } 1: Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 47 / 139 Tableau-Algorithmus für Aussagenlogik Eingabe: Ausgabe: AL-Formel ϕ „erfüllbar“ oder „unerfüllbar“ ϕ0 = nnf(ϕ) 2: initialisiere S mit {ϕ0 } 3: while eine Regel R ist auf ein ψ ∈ S anwendbar do 4: wende R auf ψ an 1: Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 47 / 139 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 47 / 139 Beispiel: Bestimmung des Schicksals von Hans mit Tableau Prämissen: (R ∨ ¬E ∨ M ) ∧ (¬C ∨ E) ∧ (C ∨ K ) ∧ ¬M ∧ ¬R Konklusion: K Zeile 1 Regel (R ∨ ¬E ∨ M ) ∧ (¬C ∨ E) ∧ (C ∨ K ) ∧ ¬M ∧ ¬R ∧ ¬K Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 48 / 139 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 (R ∨ ¬E ∨ M ) ∧ (¬C ∨ E) ∧ (C ∨ K ) ∧ ¬M ∧ ¬R ∧ ¬K R ∨ ¬E ∨ M ¬C ∨ E C ∨K ¬M ¬R ¬K Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Regel Eingabe 1: ∧ Sommersemester 2017 48 / 139 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 (R ∨ ¬E ∨ M ) ∧ (¬C ∨ E) ∧ (C ∨ K ) ∧ ¬M ∧ ¬R ∧ ¬K R ∨ ¬E ∨ M ¬C ∨ E C ∨K ¬M ¬R ¬K C K 7 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Regel Eingabe 1: ∧ 4: ∨ Sommersemester 2017 48 / 139 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 (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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Regel Eingabe 1: ∧ 4: ∨ 3: ∨ Sommersemester 2017 48 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Regel Eingabe 1: ∧ 4: ∨ 3: ∨ 2: ∨ Sommersemester 2017 48 / 139 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 Regel Eingabe 1: ∧ 4: ∨ 3: ∨ 2: ∨ Jede Spalte enthält einen Clash Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 48 / 139 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 Regel Eingabe 1: ∧ 4: ∨ 3: ∨ 2: ∨ Jede Spalte enthält einen Clash ; Formel 1 ∧ 2 ∧ 3 ∧ 4 ∧ 5 ∧ ¬6 ist unerfüllbar Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 48 / 139 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 48 / 139 Durchführung des Tableau-Algorithmus Vorrang beachten: Formeln von „außen“ nach „innen“ abarbeiten Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 49 / 139 Durchführung des Tableau-Algorithmus Vorrang beachten: Formeln von „außen“ nach „innen“ abarbeiten Clash: nur zwischen aktueller Spalte und den darüberliegenden Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 49 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 49 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 49 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 49 / 139 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} Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 49 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 49 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 49 / 139 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 49 / 139 Ü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 50 / 139 Korrektheit des Tableau-Algorithmus Satz (Korrektheit) Wenn das vollständige Tableau für ϕ eine Clash-freie Spalte enthält, ist ϕ erfüllbar. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 51 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 51 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 51 / 139 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: Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 51 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 51 / 139 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= ∅ Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 51 / 139 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 51 / 139 Vollständigkeit des Tableau-Algorithmus Satz (Vollständigkeit) Wenn ϕ erfüllbar ist, enthält das vollständige Tableau für ϕ eine Clash-freie Spalte. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 52 / 139 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.“ Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 52 / 139 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. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 52 / 139 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 |= χ. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 52 / 139 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 52 / 139 Teilformeln Definition (Teilformel) Sei ϕ eine aussagenlogische Formel. Die Formel ψ ist Teilformel von ϕ, wenn eine der folgenden Bedingungen erfüllt ist: ϕ=ψ Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 53 / 139 Teilformeln Definition (Teilformel) Sei ϕ eine aussagenlogische Formel. Die Formel ψ ist Teilformel von ϕ, wenn eine der folgenden Bedingungen erfüllt ist: ϕ=ψ ϕ = ¬χ und ψ ist Teilformel von χ Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 53 / 139 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 ◦ ∈ {∧, ∨, →, ↔}) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 53 / 139 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 ◦ ∈ {∧, ∨, →, ↔}) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 53 / 139 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 53 / 139 Terminierung des Tableau-Algorithmus Satz (Terminierung) Der Tableau-Algorithmus terminiert für jede Formel ϕ nach endlich vielen Schritten. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 54 / 139 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). Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 54 / 139 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. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 54 / 139 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. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 54 / 139 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 ϕ. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 54 / 139 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 54 / 139 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 54 / 139 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 54 / 139 Tableaus und Nichtdeterminismus sind mehrere Regeln anwendbar, ist die Auswahl der nächsten Regel don’t-care-nichtdeterministisch Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 55 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 55 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 55 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 55 / 139 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 55 / 139 Tableaus in der Praxis Anzahl der Spalten kann exponentiell in der Größe von ϕ sein Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 56 / 139 Tableaus in der Praxis Anzahl der Spalten kann exponentiell in der Größe von ϕ sein Beispiel: ϕ = (A ∨ B) ∧ (C ∨ D) ∧ (E ∨ F ) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 56 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 56 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 56 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 56 / 139 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“ Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 56 / 139 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“) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 56 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 56 / 139 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 56 / 139 Vergleich: Tableaus und Resolution Gemeinsamkeiten Erfüllbarkeitstests Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 57 / 139 Vergleich: Tableaus und Resolution Gemeinsamkeiten Erfüllbarkeitstests Können auch Gültigkeit und Implikation testen Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 57 / 139 Vergleich: Tableaus und Resolution Gemeinsamkeiten Erfüllbarkeitstests Können auch Gültigkeit und Implikation testen Entscheidungsverfahren Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 57 / 139 Vergleich: Tableaus und Resolution Gemeinsamkeiten Erfüllbarkeitstests Können auch Gültigkeit und Implikation testen Entscheidungsverfahren Effizienter als Wahrheitstabelle Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 57 / 139 Vergleich: Tableaus und Resolution Gemeinsamkeiten Erfüllbarkeitstests Können auch Gültigkeit und Implikation testen Entscheidungsverfahren Effizienter als Wahrheitstabelle Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 57 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 57 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 57 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 57 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 57 / 139 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 57 / 139 Zusammenfassung: Aussagenlogik Aussagenvariable repräsentiert Elementaraussage kann wahr oder falsch sein Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 58 / 139 Zusammenfassung: Aussagenlogik Aussagenvariable repräsentiert Elementaraussage kann wahr oder falsch sein Junktoren verbinden Aussagenvariablen zu komplexen Formeln Auswertung über Wahrheitstabelle Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 58 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 58 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 58 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 58 / 139 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) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 58 / 139 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) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 58 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 58 / 139 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 58 / 139 Inhalt 1 Einführung 2 Aussagenlogik 3 Prädikatenlogik Syntax Semantik Schlussfolgerungsverfahren 4 Beschreibungslogiken Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 59 / 139 Inhalt 1 Einführung 2 Aussagenlogik 3 Prädikatenlogik Syntax Semantik Schlussfolgerungsverfahren 4 Beschreibungslogiken Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 60 / 139 Syntax der Prädikatenlogik Konstruktoren Variablen x, y Konstantensymbole c (0) d (0) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 61 / 139 Syntax der Prädikatenlogik Konstruktoren Variablen x, y Konstantensymbole c (0) d (0) Funktionssymbole f (1) g (2) Prädikate P (1) R(2) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 61 / 139 Syntax der Prädikatenlogik Konstruktoren Variablen x, y Konstantensymbole c (0) d (0) Funktionssymbole f (1) g (2) Prädikate P (1) R(2) Quantoren ∀, ∃ Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 61 / 139 Syntax der Prädikatenlogik Konstruktoren Variablen x, y Konstantensymbole c (0) d (0) Funktionssymbole f (1) g (2) Prädikate P (1) R(2) Quantoren ∀, ∃ Junktoren ∧, ∨, ¬ →, ↔ Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 61 / 139 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 f (1) g (2) Prädikate P (1) R(2) Quantoren ∀, ∃ Junktoren ∧, ∨, ¬ →, ↔ Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 61 / 139 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 P (1) R(2) Quantoren ∀, ∃ Junktoren ∧, ∨, ¬ →, ↔ Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 61 / 139 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) Quantoren ∀, ∃ Junktoren ∧, ∨, ¬ →, ↔ Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 61 / 139 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 ∧, ∨, ¬ →, ↔ Jan Hladik (DHBW Stuttgart) Grund. . . Terme/Atome ohne Variablen f (c), g(c, d); R(c, g(c, d)) Wissensbasierte Systeme – Logik – Sommersemester 2017 61 / 139 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 61 / 139 Vorrang der Operatoren f P ∀, ∃ ¬ ∧ ∨ → ↔ Quantoren binden stärker als alle Junktoren Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 62 / 139 Vorrang der Operatoren f P ∀, ∃ ¬ ∧ ∨ → ↔ Quantoren binden stärker als alle Junktoren ∀xR(x, y) ∧ S(x) bedeutet (∀xR(x, y)) ∧ S(x) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 62 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 62 / 139 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) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 62 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 62 / 139 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 62 / 139 Gefahren der PL-Syntax Stelligkeit von Funktionssymbolen und Prädikaten Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 63 / 139 Gefahren der PL-Syntax Stelligkeit von Funktionssymbolen und Prädikaten f einstellig ; f (x, y) ist nicht korrekt Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 63 / 139 Gefahren der PL-Syntax Stelligkeit von Funktionssymbolen und Prädikaten f einstellig ; f (x, y) ist nicht korrekt Nullstellige Funktionssymbole sind Konstantensymbole Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 63 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 63 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 63 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 63 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 63 / 139 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 63 / 139 Inhalt 1 Einführung 2 Aussagenlogik 3 Prädikatenlogik Syntax Semantik Schlussfolgerungsverfahren 4 Beschreibungslogiken Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 64 / 139 Semantik in der Prädikatenlogik: Interpretationen Erinnerung: Interpretation in der Aussagenlogik weist Aussagenvariablen Wert 1 oder 0 zu macht Formel wahr oder falsch Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 65 / 139 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) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 65 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 65 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 65 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 65 / 139 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 65 / 139 Interpretation 1 ϕ = ∀xR(x, f (x)) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 66 / 139 Interpretation 1 ϕ = ∀xR(x, f (x)) Beispiel (Interpretation I mit Menschen als Domäne) Universum ∆I : M = {Anna,Bob,Clara,Dirk} Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 66 / 139 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} Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 66 / 139 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)} Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 66 / 139 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 66 / 139 Interpretation 2 ϕ = ∀xR(x, f (x)) Beispiel (Interpretation J mit Zahlen als Domäne) Universum ∆J : N = {0, 1, 2, . . .} Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 67 / 139 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, . . .} Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 67 / 139 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), . . .} Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 67 / 139 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) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 67 / 139 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) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 67 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 67 / 139 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 67 / 139 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, Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 68 / 139 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, Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 68 / 139 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. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 68 / 139 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. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 68 / 139 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. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 68 / 139 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. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 68 / 139 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 68 / 139 Interpretation komplexer Formeln Der Wahrheitswert komplexer Formeln wird rekursiv bestimmt: Für einen komplexen Term t = f (t1 , . . . , tn ), t I werden Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 69 / 139 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 ; Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 69 / 139 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 ). Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 69 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 69 / 139 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; Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 69 / 139 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. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 69 / 139 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. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 69 / 139 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 69 / 139 Beispiel: Interpretation komplexer Formeln ϕ = ¬P(c) ∧ ∃yR(c, f (y)) ∆I = N Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 70 / 139 Beispiel: Interpretation komplexer Formeln ϕ = ¬P(c) ∧ ∃yR(c, f (y)) ∆I = N Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 70 / 139 Beispiel: Interpretation komplexer Formeln ϕ = ¬P(c) ∧ ∃yR(c, f (y)) ∆I = N Jan Hladik (DHBW Stuttgart) PI RI = PrimN = ≤N Wissensbasierte Systeme – Logik – Sommersemester 2017 70 / 139 Beispiel: Interpretation komplexer Formeln ϕ = ¬P(c) ∧ ∃yR(c, f (y)) ∆I = N Jan Hladik (DHBW Stuttgart) PI RI = PrimN = ≤N Wissensbasierte Systeme – Logik – fI cI = nachfolgerN = 15N Sommersemester 2017 70 / 139 Beispiel: Interpretation komplexer Formeln ϕ = ¬P(c) ∧ ∃yR(c, f (y)) ∆I = N Bestimmung von ϕI : Funktionssymbole Jan Hladik (DHBW Stuttgart) PI RI = PrimN = ≤N fI cI = nachfolgerN = 15N ¬P I (15N ) ∧ ∃yRI (15N , nachfolgerN (y)) Wissensbasierte Systeme – Logik – Sommersemester 2017 70 / 139 Beispiel: Interpretation komplexer Formeln ϕ = ¬P(c) ∧ ∃yR(c, f (y)) ∆I = N Bestimmung von ϕI : Funktionssymbole Prädikate 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)) Wissensbasierte Systeme – Logik – Sommersemester 2017 70 / 139 Beispiel: Interpretation komplexer Formeln ϕ = ¬P(c) ∧ ∃yR(c, f (y)) ∆I = N Bestimmung von ϕI : Funktionssymbole Prädikate Quantor: Wähle y = 20N 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 )) Wissensbasierte Systeme – Logik – Sommersemester 2017 70 / 139 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 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 ) Wissensbasierte Systeme – Logik – Sommersemester 2017 70 / 139 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 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 Wissensbasierte Systeme – Logik – Sommersemester 2017 70 / 139 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 70 / 139 Modelle in der Prädikatenlogik Definition (Modell) Eine Interpretation I = (∆I , ·I ) erfüllt eine Formel ϕ (ist ein Modell für ϕ, I |= ϕ), wenn Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 71 / 139 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; Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 71 / 139 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; Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 71 / 139 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; Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 71 / 139 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. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 71 / 139 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 71 / 139 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 / 139 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 73 / 139 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) ? Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 74 / 139 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) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 74 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 74 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 74 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 74 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 74 / 139 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 74 / 139 Schritt 1: Negations-Normalform Ähnlich wie in AL: Negation nur vor Atomen 1 Elimination von → und ↔ Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 75 / 139 Schritt 1: Negations-Normalform Ähnlich wie in AL: Negation nur vor Atomen 1 Elimination von → und ↔ ϕ→ψ ; Jan Hladik (DHBW Stuttgart) ¬ϕ ∨ ψ Wissensbasierte Systeme – Logik – Sommersemester 2017 75 / 139 Schritt 1: Negations-Normalform Ähnlich wie in AL: Negation nur vor Atomen 1 Elimination von → und ↔ ϕ→ψ ϕ↔ψ ; ; Jan Hladik (DHBW Stuttgart) ¬ϕ ∨ ψ (ϕ ∧ ψ) ∨ (¬ϕ ∧ ¬ψ) Wissensbasierte Systeme – Logik – Sommersemester 2017 75 / 139 Schritt 1: Negations-Normalform Ähnlich wie in AL: Negation nur vor Atomen 1 Elimination von → und ↔ ϕ→ψ ϕ↔ψ 2 ; ; ¬ϕ ∨ ψ (ϕ ∧ ψ) ∨ (¬ϕ ∧ ¬ψ) Anwendung der de-Morgan-Gesetze und ihrer Entsprechungen für Quantoren Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 75 / 139 Schritt 1: Negations-Normalform Ähnlich wie in AL: Negation nur vor Atomen 1 Elimination von → und ↔ ϕ→ψ ϕ↔ψ 2 ¬ϕ ∨ ψ (ϕ ∧ ψ) ∨ (¬ϕ ∧ ¬ψ) ; ; Anwendung der de-Morgan-Gesetze und ihrer Entsprechungen für Quantoren ¬(ϕ ∧ ψ) Jan Hladik (DHBW Stuttgart) ; ¬ϕ ∨ ¬ψ Wissensbasierte Systeme – Logik – Sommersemester 2017 75 / 139 Schritt 1: Negations-Normalform Ähnlich wie in AL: Negation nur vor Atomen 1 Elimination von → und ↔ ϕ→ψ ϕ↔ψ 2 ¬ϕ ∨ ψ (ϕ ∧ ψ) ∨ (¬ϕ ∧ ¬ψ) ; ; Anwendung der de-Morgan-Gesetze und ihrer Entsprechungen für Quantoren ¬(ϕ ∧ ψ) ¬(ϕ ∨ ψ) Jan Hladik (DHBW Stuttgart) ; ; ¬ϕ ∨ ¬ψ ¬ϕ ∧ ¬ψ Wissensbasierte Systeme – Logik – Sommersemester 2017 75 / 139 Schritt 1: Negations-Normalform Ähnlich wie in AL: Negation nur vor Atomen 1 Elimination von → und ↔ ϕ→ψ ϕ↔ψ 2 ; ; ¬ϕ ∨ ψ (ϕ ∧ ψ) ∨ (¬ϕ ∧ ¬ψ) Anwendung der de-Morgan-Gesetze und ihrer Entsprechungen für Quantoren ¬(ϕ ∧ ψ) ; ¬ϕ ∨ ¬ψ ¬(ϕ ∨ ψ) ; ¬ϕ ∧ ¬ψ ¬∀xϕ ; ∃x¬ϕ Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 75 / 139 Schritt 1: Negations-Normalform Ähnlich wie in AL: Negation nur vor Atomen 1 Elimination von → und ↔ ϕ→ψ ϕ↔ψ 2 ; ; ¬ϕ ∨ ψ (ϕ ∧ ψ) ∨ (¬ϕ ∧ ¬ψ) Anwendung der de-Morgan-Gesetze und ihrer Entsprechungen für Quantoren ¬(ϕ ∧ ψ) ; ¬ϕ ∨ ¬ψ ¬(ϕ ∨ ψ) ; ¬ϕ ∧ ¬ψ ¬∀xϕ ; ∃x¬ϕ ¬∃xϕ ; ∀x¬ϕ Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 75 / 139 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 75 / 139 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 75 / 139 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 . Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 76 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 76 / 139 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) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 76 / 139 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.“ Jan Hladik (DHBW Stuttgart) ∀x(H (x) → ∃yM (x, y) ∧ ∃yF (x, y)) Wissensbasierte Systeme – Logik – Sommersemester 2017 76 / 139 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 Jan Hladik (DHBW Stuttgart) ∀x(H (x) → ∃yM (x, y) ∧ ∃yF (x, y)) ∀x(¬H (x) ∨ ∃yM (x, y) ∧ ∃yF (x, y)) Wissensbasierte Systeme – Logik – Sommersemester 2017 76 / 139 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 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)) Wissensbasierte Systeme – Logik – Sommersemester 2017 76 / 139 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 76 / 139 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. Thoralf Skolem (1887–1963) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 77 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Thoralf Skolem (1887–1963) Sommersemester 2017 77 / 139 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) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 77 / 139 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) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – c ist neu! Sommersemester 2017 77 / 139 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)) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – c ist neu! Sommersemester 2017 77 / 139 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, c)) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – c ist neu! Sommersemester 2017 77 / 139 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! Sommersemester 2017 77 / 139 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 77 / 139 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 )) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 78 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 78 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 78 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 78 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 78 / 139 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. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 78 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 78 / 139 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. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 78 / 139 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 78 / 139 Ü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 79 / 139 Resolution und Variablen Beispiel (PL-Resolution) Formel ∃zH (z) ∧ ∀x(H (x) → ∃yM (x, y)) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 80 / 139 Resolution und Variablen Beispiel (PL-Resolution) Formel ∃zH (z) ∧ ∀x(H (x) → ∃yM (x, y)) NNF ∃zH (z) ∧ ∀x(¬H (x) ∨ ∃yM (x, y)) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – → eliminiert Sommersemester 2017 80 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 80 / 139 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))) Jan Hladik (DHBW Stuttgart) PL-Atome statt Aussagenvariablen Wissensbasierte Systeme – Logik – Sommersemester 2017 80 / 139 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) ? Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 80 / 139 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) ? Finde Variablenbelegung, die zwei Atome syntaktisch gleich macht Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 80 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 80 / 139 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 80 / 139 Substitutionen Definition (Substitution) Eine Substition ist eine Abbildung von Variablen auf Terme. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 81 / 139 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 81 / 139 Unifikatoren Definition (Unifikator) Ein Unifikator ist eine Substitution, die zwei Formeln auf dieselbe Formel abbildet. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 82 / 139 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)) Jan Hladik (DHBW Stuttgart) σ = ([x/a], [y/f (a)]) Wissensbasierte Systeme – Logik – Sommersemester 2017 82 / 139 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)) = σ(ψ) Jan Hladik (DHBW Stuttgart) σ = ([x/a], [y/f (a)]) Wissensbasierte Systeme – Logik – Sommersemester 2017 82 / 139 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 82 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 83 / 139 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]) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 83 / 139 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)] Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 83 / 139 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 83 / 139 Allgemeinste Unifikatoren Beispiel (Mehrere mögliche Unifikatoren) P(x), R(x) Jan Hladik (DHBW Stuttgart) ¬P(y) ¬R(c) Wissensbasierte Systeme – Logik – Sommersemester 2017 84 / 139 Allgemeinste Unifikatoren Beispiel (Mehrere mögliche Unifikatoren) ¬P(y) P(x), R(x) ¬R(c) [y/x] R(x) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 84 / 139 Allgemeinste Unifikatoren Beispiel (Mehrere mögliche Unifikatoren) ¬P(y) P(x), R(x) ¬R(c) [y/x] R(x) [x/c] 2 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 84 / 139 Allgemeinste Unifikatoren Beispiel (Mehrere mögliche Unifikatoren) ¬P(y) P(x), R(x) [x/d] ¬R(c) [y/d] R(d) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 84 / 139 Allgemeinste Unifikatoren Beispiel (Mehrere mögliche Unifikatoren) ¬P(y) P(x), R(x) [x/d] ¬R(c) [y/d] R(d) Problem manche Unifikatoren verhindern Resolution Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 84 / 139 Allgemeinste Unifikatoren Beispiel (Mehrere mögliche Unifikatoren) ¬P(y) P(x), R(x) [x/d] ¬R(c) [y/d] R(d) 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 84 / 139 Unifikations-Algorithmus Eingabe: Ausgabe: Atome s, t au(s, t), „nicht unifizierbar“ Jan Hladik (DHBW Stuttgart) wenn s und t unifizierbar sind sonst Wissensbasierte Systeme – Logik – Sommersemester 2017 85 / 139 Unifikations-Algorithmus Eingabe: Ausgabe: Atome s, t au(s, t), „nicht unifizierbar“ wenn s und t unifizierbar sind sonst 1: σ := () Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 85 / 139 Unifikations-Algorithmus Eingabe: Ausgabe: Atome s, t au(s, t), „nicht unifizierbar“ wenn s und t unifizierbar sind sonst 1: σ := () 2: while σ(s) 6= σ(t) do 3: sei i die erste Position, an der sich σ(s) und σ(t) unterscheiden Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 85 / 139 Unifikations-Algorithmus Eingabe: Ausgabe: Atome s, t au(s, t), „nicht unifizierbar“ wenn s und t unifizierbar sind 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: Ausgabe „nicht unifizierbar“ Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 85 / 139 Unifikations-Algorithmus Eingabe: Ausgabe: Atome s, t au(s, t), „nicht unifizierbar“ wenn s und t unifizierbar sind 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: Ausgabe „nicht unifizierbar“ 6: else if weder σ(s)|i noch σ(t)|i ist Variable then 7: Ausgabe „nicht unifizierbar“ Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 85 / 139 Unifikations-Algorithmus Eingabe: Ausgabe: Atome s, t au(s, t), „nicht unifizierbar“ wenn s und t unifizierbar sind 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: Ausgabe „nicht unifizierbar“ 6: else if weder σ(s)|i noch σ(t)|i ist Variable then 7: Ausgabe „nicht unifizierbar“ 8: else 9: sei x die Variable, y der andere Term Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 85 / 139 Unifikations-Algorithmus Eingabe: Ausgabe: Atome s, t au(s, t), „nicht unifizierbar“ wenn s und t unifizierbar sind 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: Ausgabe „nicht unifizierbar“ 6: else if weder σ(s)|i noch σ(t)|i ist Variable then 7: Ausgabe „nicht unifizierbar“ 8: else 9: sei x die Variable, y der andere Term 10: if x ist echter Subterm von y then 11: Ausgabe „nicht unifizierbar“ Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 85 / 139 Unifikations-Algorithmus Eingabe: Ausgabe: Atome s, t au(s, t), „nicht unifizierbar“ wenn s und t unifizierbar sind 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: Ausgabe „nicht unifizierbar“ 6: else if weder σ(s)|i noch σ(t)|i ist Variable then 7: Ausgabe „nicht unifizierbar“ 8: else 9: sei x die Variable, y der andere Term 10: if x ist echter Subterm von y then 11: Ausgabe „nicht unifizierbar“ 12: else 13: σ := σ · ([x/y]) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 85 / 139 Unifikations-Algorithmus Eingabe: Ausgabe: Atome s, t au(s, t), „nicht unifizierbar“ wenn s und t unifizierbar sind 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: Ausgabe „nicht unifizierbar“ 6: else if weder σ(s)|i noch σ(t)|i ist Variable then 7: Ausgabe „nicht unifizierbar“ 8: else 9: sei x die Variable, y der andere Term 10: if x ist echter Subterm von y then 11: Ausgabe „nicht unifizierbar“ 12: else 13: σ := σ · ([x/y]) 14: Ausgabe σ Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 85 / 139 Unifikation: Beispiel Beispiel ϕ = R(x, z, g(x, f (y))) ψ = R(f (c), x, g(y, f (g(x, y)))) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 86 / 139 Unifikation: Beispiel Beispiel ϕ = R(x, z, g(x, f (y))) ψ = R(f (c), x, g(y, f (g(x, y)))) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 86 / 139 Unifikation: Beispiel Beispiel ϕ = R(x, z, g(x, f (y))) ψ = R(f (c), u, g(y, f (g(u, y)))) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 86 / 139 Unifikation: Beispiel Beispiel ϕ = R(x, z, g(x, f (y))) ψ = R(f (c), u, g(w, f (g(u, w)))) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 86 / 139 Unifikation: Beispiel Beispiel ϕ = R(x, z, g(x, f (y))) ψ = R(f (c), u, g(w, f (g(u, w)))) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 86 / 139 Unifikation: Beispiel Beispiel ϕ = R(x, z, g(x, f (y))) ψ = R(f (c), u, g(w, f (g(u, w)))) x / f (c) Jan Hladik (DHBW Stuttgart) Occurs-Check Wissensbasierte Systeme – Logik – Sommersemester 2017 86 / 139 Unifikation: Beispiel Beispiel ϕ = R(x, z, g(x, f (y))) ψ = R(f (c), u, g(w, f (g(u, w)))) x / f (c) Jan Hladik (DHBW Stuttgart) Occurs-Check Wissensbasierte Systeme – Logik – Sommersemester 2017 86 / 139 Unifikation: Beispiel Beispiel ϕ = R(f (c), z, g(f (c), f (y))) ψ = R(f (c), u, g(w, f (g(u, w)))) x / f (c) Jan Hladik (DHBW Stuttgart) Occurs-Check Wissensbasierte Systeme – Logik – Sommersemester 2017 86 / 139 Unifikation: Beispiel Beispiel ϕ = R(f (c), z, g(f (c), f (y))) ψ = R(f (c), u, g(w, f (g(u, w)))) x u / / f (c) z Jan Hladik (DHBW Stuttgart) Occurs-Check AU Wissensbasierte Systeme – Logik – Sommersemester 2017 86 / 139 Unifikation: Beispiel Beispiel ϕ = R(f (c), z, g(f (c), f (y))) ψ = R(f (c), z, g(w, f (g(z, w)))) x u / / f (c) z Jan Hladik (DHBW Stuttgart) Occurs-Check AU Wissensbasierte Systeme – Logik – Sommersemester 2017 86 / 139 Unifikation: Beispiel Beispiel ϕ = R(f (c), z, g(f (c), f (y))) ψ = R(f (c), z, g(w, f (g(z, w)))) x u / / f (c) z Jan Hladik (DHBW Stuttgart) Occurs-Check AU Wissensbasierte Systeme – Logik – Sommersemester 2017 86 / 139 Unifikation: Beispiel Beispiel ϕ = R(f (c), z, g(f (c), f (y))) ψ = R(f (c), z, g(w, f (g(z, w)))) x u w / / / f (c) z f (c) Jan Hladik (DHBW Stuttgart) Occurs-Check AU Wissensbasierte Systeme – Logik – Sommersemester 2017 86 / 139 Unifikation: Beispiel Beispiel ϕ = R(f (c), z, g(f (c), f (y))) ψ = R(f (c), z, g(f (c), f (g(z, f (c))))) x u w / / / f (c) z f (c) Jan Hladik (DHBW Stuttgart) Occurs-Check AU Wissensbasierte Systeme – Logik – Sommersemester 2017 86 / 139 Unifikation: Beispiel Beispiel ϕ = R(f (c), z, g(f (c), f (y))) ψ = R(f (c), z, g(f (c), f (g(z, f (c))))) x u w / / / f (c) z f (c) Jan Hladik (DHBW Stuttgart) Occurs-Check AU Wissensbasierte Systeme – Logik – Sommersemester 2017 86 / 139 Unifikation: Beispiel Beispiel ϕ = R(f (c), z, g(f (c), f (y))) ψ = 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 86 / 139 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 86 / 139 Ü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 87 / 139 Beispiel: Halloween 1 Tim kauft einen Kürbis. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 88 / 139 Beispiel: Halloween 1 Tim kauft einen Kürbis. ∃x(Kauft(tim, x) ∧ Kürbis(x)) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 88 / 139 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. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 88 / 139 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)) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 88 / 139 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. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 88 / 139 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))) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 88 / 139 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. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 88 / 139 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 88 / 139 Schritt 1: Syntaktische Vorverarbeitung 1 Konjunktion der Prämissen und der Negation der Konklusion (∃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) → ∃xSchnitzt(tim, x)) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – ∧ Sommersemester 2017 89 / 139 Schritt 1: Syntaktische Vorverarbeitung 1 Konjunktion der Prämissen und der Negation der Konklusion 2 Variablen-Umbenennung (∃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) → ∃xSchnitzt(tim, x)) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – ∧ Sommersemester 2017 89 / 139 Schritt 1: Syntaktische Vorverarbeitung 1 Konjunktion der Prämissen und der Negation der Konklusion 2 Variablen-Umbenennung (∃x(Kauft(tim, x) ∧ Kürbis(x)) ∧ (∀y∀z(Kauft(y, z) ∧ Kürbis(z) → Isst(y, z) ∨ Schnitzt(y, z))) ∧ (∀x(Kind(x) → ∀y(Kürbis(y) → ¬Isst(x, y)))) ∧ ¬(Kind(tim) → ∃xSchnitzt(tim, x)) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 89 / 139 Schritt 1: Syntaktische Vorverarbeitung 1 Konjunktion der Prämissen und der Negation der Konklusion 2 Variablen-Umbenennung (∃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) → ∃xSchnitzt(tim, x)) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 89 / 139 Schritt 1: Syntaktische Vorverarbeitung 1 Konjunktion der Prämissen und der Negation der Konklusion 2 Variablen-Umbenennung (∃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) → ∃tSchnitzt(tim, t)) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 89 / 139 Schritt 1: Syntaktische Vorverarbeitung 1 Konjunktion der Prämissen und der Negation der Konklusion 2 Variablen-Umbenennung 3 Ersetzung von ϕ → ψ durch ¬ϕ ∨ ψ (∃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) → ∃tSchnitzt(tim, t)) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 89 / 139 Schritt 1: Syntaktische Vorverarbeitung 1 Konjunktion der Prämissen und der Negation der Konklusion 2 Variablen-Umbenennung 3 Ersetzung von ϕ → ψ durch ¬ϕ ∨ ψ (∃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) → ∃tSchnitzt(tim, t)) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – ∧ Sommersemester 2017 89 / 139 Schritt 1: Syntaktische Vorverarbeitung 1 Konjunktion der Prämissen und der Negation der Konklusion 2 Variablen-Umbenennung 3 Ersetzung von ϕ → ψ durch ¬ϕ ∨ ψ (∃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) → ∃tSchnitzt(tim, t)) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – ∧ Sommersemester 2017 89 / 139 Schritt 1: Syntaktische Vorverarbeitung 1 Konjunktion der Prämissen und der Negation der Konklusion 2 Variablen-Umbenennung 3 Ersetzung von ϕ → ψ durch ¬ϕ ∨ ψ (∃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) → ∃tSchnitzt(tim, t)) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – ∧ Sommersemester 2017 89 / 139 Schritt 1: Syntaktische Vorverarbeitung 1 Konjunktion der Prämissen und der Negation der Konklusion 2 Variablen-Umbenennung 3 Ersetzung von ϕ → ψ durch ¬ϕ ∨ ψ (∃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) ∨ ∃tSchnitzt(tim, t)) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – ∧ Sommersemester 2017 89 / 139 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 (∃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) ∨ ∃tSchnitzt(tim, t)) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – ∧ Sommersemester 2017 89 / 139 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 (∃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) ∨ ∃tSchnitzt(tim, t)) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – ∧ Sommersemester 2017 89 / 139 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 (∃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) ∧ ¬∃tSchnitzt(tim, t)) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – ∧ Sommersemester 2017 89 / 139 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 (∃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 89 / 139 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 (∃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 89 / 139 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 (∃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 89 / 139 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 89 / 139 Schritt 2: Skolem-Normalform und KNF 1 Pränex-Normalform ∃x∀y∀z∀u∀w∀t (Kauft(tim, x) ∧ Kürbis(x) ∧ (¬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 90 / 139 Schritt 2: Skolem-Normalform und KNF 1 Pränex-Normalform 2 Skolem-Normalform ∃x∀y∀z∀u∀w∀t (Kauft(tim, x) ∧ Kürbis(x) ∧ (¬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 90 / 139 Schritt 2: Skolem-Normalform und KNF 1 Pränex-Normalform 2 Skolem-Normalform ∀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 90 / 139 Schritt 2: Skolem-Normalform und KNF 1 Pränex-Normalform 2 Skolem-Normalform 3 Entfernung der Allquantoren ∀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 90 / 139 Schritt 2: Skolem-Normalform und KNF 1 Pränex-Normalform 2 Skolem-Normalform 3 Entfernung der Allquantoren 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 90 / 139 Schritt 2: Skolem-Normalform und KNF 1 Pränex-Normalform 2 Skolem-Normalform 3 Entfernung der Allquantoren 4 Konjunktive Normalform 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 90 / 139 Schritt 2: Skolem-Normalform und KNF 1 Pränex-Normalform 2 Skolem-Normalform 3 Entfernung der Allquantoren 4 Konjunktive Normalform 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 90 / 139 Schritt 2: Skolem-Normalform und KNF 1 Pränex-Normalform 2 Skolem-Normalform 3 Entfernung der Allquantoren 4 Konjunktive Normalform 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) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 90 / 139 Schritt 3: Resolution ¬Kind(u), ¬Kürbis(w), ¬Isst(u, w) Kind(tim) Kürbis(k) ¬Kauft(y, z), ¬Kürbis(z), Isst(y, z), Schnitzt(y, z) Kauft(tim, k) ¬Schnitzt(tim, t) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 91 / 139 Schritt 3: Resolution ¬Kind(u), ¬Kürbis(w), ¬Isst(u, w) Kürbis(k) Kind(tim) ¬Kürbis(w), ¬Isst(tim, w) ¬Kauft(y, z), ¬Kürbis(z), Isst(y, z), Schnitzt(y, z) Kauft(tim, k) ¬Schnitzt(tim, t) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 91 / 139 Schritt 3: Resolution ¬Kind(u), ¬Kürbis(w), ¬Isst(u, w) Kürbis(k) ¬Isst(tim, k) Kind(tim) ¬Kürbis(w), ¬Isst(tim, w) ¬Kauft(y, z), ¬Kürbis(z), Isst(y, z), Schnitzt(y, z) Kauft(tim, k) ¬Schnitzt(tim, t) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 91 / 139 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, t) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 91 / 139 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) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 91 / 139 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, k) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – ¬Schnitzt(tim, t) Sommersemester 2017 91 / 139 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 91 / 139 Ü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 92 / 139 Eigenschaften der PL-Resolution Satz (Korrektheit der PL-Resolution) K(ϕ) `∗ 2 impliziert Unerfüllbarkeit von ϕ. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 93 / 139 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. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 93 / 139 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 93 / 139 PL-Resolution und Terminierung Beispiel P(x), ¬Q(f (x)) Jan Hladik (DHBW Stuttgart) ¬P(f (y)), Q(f (y)) Wissensbasierte Systeme – Logik – Sommersemester 2017 94 / 139 PL-Resolution und Terminierung Beispiel P(x), ¬Q(f (x)) [x/f(y)] ¬P(f (y)), Q(f (y)) ¬Q(f (f (y))), Q(f (y)) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 94 / 139 PL-Resolution und Terminierung Beispiel P(x), ¬Q(f (x)) [x/f(y)] ¬P(f (y)), Q(f (y)) ¬Q(f (f (y))), Q(f (y)) [y/x] P(x), ¬Q(f (f (x))) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 94 / 139 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))) [x/f(y)] ¬Q(f (f (f (y)))), Q(f (y)) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 94 / 139 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)))) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 94 / 139 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)))) .. . Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 94 / 139 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 94 / 139 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 95 / 139 Tableau-Algorithmus für PL Gleiches Grundprinzip Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 96 / 139 Tableau-Algorithmus für PL Gleiches Grundprinzip Regeln Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 96 / 139 Tableau-Algorithmus für PL Gleiches Grundprinzip Regeln Clashes Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 96 / 139 Tableau-Algorithmus für PL Gleiches Grundprinzip Regeln Clashes Vorverarbeitung: NNF Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 96 / 139 Tableau-Algorithmus für PL Gleiches Grundprinzip Regeln Clashes Vorverarbeitung: NNF Negation nur vor Atomen Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 96 / 139 Tableau-Algorithmus für PL Gleiches Grundprinzip Regeln Clashes Vorverarbeitung: NNF Negation nur vor Atomen Zusätzliche Regeln für Quantoren Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 96 / 139 Tableau-Algorithmus für PL Gleiches Grundprinzip Regeln Clashes Vorverarbeitung: NNF Negation nur vor Atomen Zusätzliche Regeln für Quantoren ∀-Regel Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 96 / 139 Tableau-Algorithmus für PL Gleiches Grundprinzip Regeln Clashes Vorverarbeitung: NNF Negation nur vor Atomen Zusätzliche Regeln für Quantoren ∀-Regel ∃-Regel Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 96 / 139 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 96 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 97 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 97 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 97 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 97 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 97 / 139 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) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 97 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 97 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 97 / 139 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! Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 97 / 139 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 97 / 139 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) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 98 / 139 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 Jan Hladik (DHBW Stuttgart) ϕ Wissensbasierte Systeme – Logik – Sommersemester 2017 98 / 139 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 ϕ ∃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)) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – 1: ∧ Sommersemester 2017 98 / 139 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 ϕ ∃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) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – 1: ∧ 2: ∃(x/k) Sommersemester 2017 98 / 139 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 ϕ ∃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) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – 1: ∧ 2: ∃(x/k) 7: ∧ Sommersemester 2017 98 / 139 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 ϕ ∃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) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – 1: ∧ 2: ∃(x/k) 7: ∧ 6: ∀(x/k) Sommersemester 2017 98 / 139 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 ϕ ∃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) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – 1: ∧ 2: ∃(x/k) 7: ∧ 6: ∀(x/k) 3: ∀(x/tim, y/k) Sommersemester 2017 98 / 139 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 98 / 139 Beispiel: Halloween-Tableau (Fortsetzung) 5 8 9 10 Jan Hladik (DHBW Stuttgart) Kind(tim) Kauft(tim, k) Kürbis(k) ¬Schnitzt(tim, k) Wissensbasierte Systeme – Logik – Sommersemester 2017 99 / 139 Beispiel: Halloween-Tableau (Fortsetzung) 5 8 9 10 11 12 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)) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 99 / 139 Beispiel: Halloween-Tableau (Fortsetzung) 5 8 9 10 11 12 13 ¬Kind(tim) 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)) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – 12: ∨ Sommersemester 2017 99 / 139 Beispiel: Halloween-Tableau (Fortsetzung) 5 8 9 10 11 12 13 14 ¬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)) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – 12: ∨ Sommersemester 2017 99 / 139 Beispiel: Halloween-Tableau (Fortsetzung) 5 8 9 10 11 12 13 14 ¬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) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – 12: ∨ 13: ∀(y/k) Sommersemester 2017 99 / 139 Beispiel: Halloween-Tableau (Fortsetzung) 5 8 9 10 11 12 13 14 15 ¬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) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – 12: ∨ 13: ∀(y/k) 14: ∨ Sommersemester 2017 99 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – 12: ∨ 13: ∀(y/k) 14: ∨ Sommersemester 2017 99 / 139 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) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Schnitzt(tim, k) Sommersemester 2017 12: 13: 14: 11: ∨ ∀(y/k) ∨ ∨ 99 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Schnitzt(tim, k) Sommersemester 2017 12: 13: 14: 11: ∨ ∀(y/k) ∨ ∨ 99 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Schnitzt(tim, k) Sommersemester 2017 12: 13: 14: 11: ∨ ∀(y/k) ∨ ∨ 99 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Schnitzt(tim, k) Sommersemester 2017 12: 13: 14: 11: ∨ ∀(y/k) ∨ ∨ 99 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 99 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 99 / 139 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 99 / 139 Ü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(¬J (x) ∨ ∀y(¬E(x, y) ∨ ¬A(y))) ∧ ∃z(J (z) ∧ B(z)) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 100 / 139 Zusammenfassung: Prädikatenlogik Syntax Variablen, Prädikate, Funktionssymbole, Quantoren Terme, Atome, komplexe Formeln Modellierung der inneren Struktur von Aussagen Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 101 / 139 Zusammenfassung: Prädikatenlogik Syntax Variablen, Prädikate, Funktionssymbole, Quantoren Terme, Atome, komplexe Formeln Modellierung der inneren Struktur von Aussagen Interpretation Domäne, Funktionen, Relationen Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 101 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 101 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 101 / 139 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 101 / 139 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 / 139 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 103 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 104 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 104 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 104 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 104 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 104 / 139 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 104 / 139 WR-Systeme und Datenbanken Datenbank 1 speichert Informationen in verständlicher Form 2 beantwortet Anfragen abhängig vom Inhalt Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 105 / 139 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 105 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 106 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 106 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 106 / 139 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 106 / 139 Logik als WR-System Bisher behandelte Systeme: Aussagen-/ Prädikatenlogik Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 107 / 139 Logik als WR-System Bisher behandelte Systeme: Aussagen-/ Prädikatenlogik Wissensbank: Formel in Syntax der AL/PL Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 107 / 139 Logik als WR-System Bisher behandelte Systeme: Aussagen-/ Prädikatenlogik Wissensbank: Formel in Syntax der AL/PL Inferenzmaschine: Erfüllbarkeitstest mit Resolution / Tableau Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 107 / 139 Logik als WR-System Bisher behandelte Systeme: Aussagen-/ Prädikatenlogik Wissensbank: Formel in Syntax der AL/PL Inferenzmaschine: Erfüllbarkeitstest mit Resolution / Tableau Prolog Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 107 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 107 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 107 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 107 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 107 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 107 / 139 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 107 / 139 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 108 / 139 Semantische Netze früher Ansatz zur grafischen Wissensrepräsentation M. Ross Quillian Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 109 / 139 Semantische Netze früher Ansatz zur grafischen Wissensrepräsentation entwickelt 1960 von M. Ross Quillian M. Ross Quillian Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 109 / 139 Semantische Netze früher Ansatz zur grafischen Wissensrepräsentation entwickelt 1960 von M. Ross Quillian WR-Sprache: beschrifteter Graph M. Ross Quillian Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 109 / 139 Semantische Netze früher Ansatz zur grafischen Wissensrepräsentation entwickelt 1960 von M. Ross Quillian WR-Sprache: beschrifteter Graph Knoten: Individuen, Klassen, Eigenschaften M. Ross Quillian Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 109 / 139 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 M. Ross Quillian Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 109 / 139 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 M. Ross Quillian Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 109 / 139 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 M. Ross Quillian Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 109 / 139 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 M. Ross Quillian Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 109 / 139 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 M. Ross Quillian Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 109 / 139 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 109 / 139 Beispiel: Semantisches Netz Lebewesen is-a is-a Mensch Fleisch hat isst Tier is-a is-a Katze Maus is-a is-a Tom Jan Hladik (DHBW Stuttgart) isst Jerry Wissensbasierte Systeme – Logik – Sommersemester 2017 110 / 139 Beispiel: Semantisches Netz Lebewesen Schlussfolgerungen is-a is-a Mensch Fleisch hat isst Tier is-a Tom ist ein Tier is-a Katze Maus is-a is-a Tom Jan Hladik (DHBW Stuttgart) isst Jerry Wissensbasierte Systeme – Logik – Sommersemester 2017 110 / 139 Beispiel: Semantisches Netz Lebewesen Schlussfolgerungen is-a is-a Mensch Fleisch hat isst Tier is-a Tom ist ein Tier Katze Maus is-a is-a Tom Jan Hladik (DHBW Stuttgart) Tom isst eine Maus is-a isst Jerry Wissensbasierte Systeme – Logik – Sommersemester 2017 110 / 139 Beispiel: Semantisches Netz Lebewesen Schlussfolgerungen is-a is-a Mensch Fleisch hat isst Tier is-a Tom ist ein Tier Katze Maus is-a is-a Tom Jan Hladik (DHBW Stuttgart) Tom isst eine Maus is-a isst Katzen und Mäuse haben gemeinsam, dass sie Tiere sind Jerry Wissensbasierte Systeme – Logik – Sommersemester 2017 110 / 139 Beispiel: Semantisches Netz Lebewesen Schlussfolgerungen is-a is-a Mensch Fleisch hat isst Tier is-a Tom ist ein Tier Katze Maus is-a is-a Tom Jan Hladik (DHBW Stuttgart) Tom isst eine Maus is-a isst Jerry Katzen und Mäuse haben gemeinsam, dass sie Tiere sind Menschen und Mäuse haben gemeinsam, dass sie Lebewesen sind Wissensbasierte Systeme – Logik – Sommersemester 2017 110 / 139 Beispiel: Semantisches Netz Lebewesen Schlussfolgerungen is-a is-a Mensch Fleisch hat isst Tier is-a Tom ist ein Tier Katze Maus is-a is-a Tom Jan Hladik (DHBW Stuttgart) Tom isst eine Maus is-a isst Jerry Katzen und Mäuse haben gemeinsam, dass sie Tiere sind Menschen und Mäuse haben gemeinsam, dass sie Lebewesen sind Wissensbasierte Systeme – Logik – Sommersemester 2017 110 / 139 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? Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 110 / 139 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? Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 110 / 139 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? Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 110 / 139 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? Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 110 / 139 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 110 / 139 Probleme Semantischer Netze Mehrdeutigkeit von is-a Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 111 / 139 Probleme Semantischer Netze Mehrdeutigkeit von is-a Individuum → Klasse: Element Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 111 / 139 Probleme Semantischer Netze Mehrdeutigkeit von is-a Individuum → Klasse: Element Klasse → Klasse: Teilmenge Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 111 / 139 Probleme Semantischer Netze Mehrdeutigkeit von is-a Individuum → Klasse: Element Klasse → Klasse: Teilmenge Vererbung als Default Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 111 / 139 Probleme Semantischer Netze Mehrdeutigkeit von is-a Individuum → Klasse: Element Klasse → Klasse: Teilmenge Vererbung als Default Jede Eigenschaft kann überschrieben werden Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 111 / 139 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“ Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 111 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 111 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 111 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 111 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 111 / 139 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! Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 111 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 111 / 139 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 111 / 139 Frames - Ursprung und Intention WR-Formalismus zur Beschreibung von Entitäten Marvin Minsky (1927-2016) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 112 / 139 Frames - Ursprung und Intention WR-Formalismus zur Beschreibung von Entitäten entwickelt 1975 von Marvin Minsky Marvin Minsky (1927-2016) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 112 / 139 Frames - Ursprung und Intention WR-Formalismus zur Beschreibung von Entitäten entwickelt 1975 von Marvin Minsky Ziel: Imitation von menschlichem Kategorisieren Marvin Minsky (1927-2016) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 112 / 139 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 Marvin Minsky (1927-2016) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 112 / 139 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“ Marvin Minsky (1927-2016) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 112 / 139 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“ Marvin Minsky (1927-2016) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 112 / 139 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 Marvin Minsky (1927-2016) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 112 / 139 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 Marvin Minsky (1927-2016) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 112 / 139 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“ Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Marvin Minsky (1927-2016) Sommersemester 2017 112 / 139 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“ Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Marvin Minsky (1927-2016) Sommersemester 2017 112 / 139 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 112 / 139 Frames - Syntax und Inferenzen Syntax: Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 113 / 139 Frames - Syntax und Inferenzen Syntax: Class Frame beschreibt Klasse von Entitäten Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 113 / 139 Frames - Syntax und Inferenzen Syntax: Class Frame beschreibt Klasse von Entitäten Instance Frame beschreibt spezifische Entität Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 113 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 113 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 113 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 113 / 139 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) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 113 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 113 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 113 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 113 / 139 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 113 / 139 Frames - Probleme Frame-Inferenzen lassen sich in PL ausdrücken (Hayes 1979) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 114 / 139 Frames - Probleme Frame-Inferenzen lassen sich in PL ausdrücken (Hayes 1979) Wie bei Semantischen Netzen Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 114 / 139 Frames - Probleme Frame-Inferenzen lassen sich in PL ausdrücken (Hayes 1979) Wie bei Semantischen Netzen Keine Taxonomie, wenn alle Eigenschaften nur Defaults sind Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 114 / 139 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“ Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 114 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 114 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 114 / 139 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 114 / 139 Probleme früher WR-Systeme fehlende formale Semantik unklare Bedeutung des Netzwerks unzuverlässige Schlussfolgerungsverfahren Inkompatibilität Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 115 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 115 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 115 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 115 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 115 / 139 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 115 / 139 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 116 / 139 Beschreibungslogiken: Ursprung Familie von WR-Sprachen (Logiken) Ron Brachman Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 117 / 139 Beschreibungslogiken: Ursprung Familie von WR-Sprachen (Logiken) entscheidbare Schlussfolgerungsprobleme Ron Brachman Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 117 / 139 Beschreibungslogiken: Ursprung Familie von WR-Sprachen (Logiken) entscheidbare Schlussfolgerungsprobleme Komplexität von P bis 2-NExpTime Ron Brachman Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 117 / 139 Beschreibungslogiken: Ursprung Familie von WR-Sprachen (Logiken) entscheidbare Schlussfolgerungsprobleme Komplexität von P bis 2-NExpTime auch ausdrucksstarke Logiken effizient „in der Praxis“ Ron Brachman Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 117 / 139 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 117 / 139 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 118 / 139 BL-Bausteine Konzeptnamen Mensch, Universität, Stadt, usw. ; einstellige Prädikate in PL Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 119 / 139 BL-Bausteine Konzeptnamen Mensch, Universität, Stadt, usw. ; einstellige Prädikate in PL Rollennamen hatMutter, besucht, arbeitetMit, usw. ; zweistellige Prädikate in PL Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 119 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 119 / 139 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 119 / 139 Konzept-Konstruktoren Konstruktion komplexer Konzepte aus Konzept- und Rollennamen jeder Konzeptname ist ein Konzept; Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 120 / 139 Konzept-Konstruktoren Konstruktion komplexer Konzepte aus Konzept- und Rollennamen jeder Konzeptname ist ein Konzept; > und ⊥ sind Konzepte; Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 120 / 139 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; Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 120 / 139 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. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 120 / 139 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: (, ) Jan Hladik (DHBW Stuttgart) ∀, ∃ ¬ Wissensbasierte Systeme – Logik – u t Sommersemester 2017 120 / 139 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 120 / 139 Beschreibungslogiken und Konstruktoren Quelle: http://www.cs.man.ac.uk/~ezolin/dl/ Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 121 / 139 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 122 / 139 Die Beschreibungslogik ALC „Attributive Language with Complement“ Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 123 / 139 Die Beschreibungslogik ALC „Attributive Language with Complement“ Boole’sche Operatoren ¬, u, t Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 123 / 139 Die Beschreibungslogik ALC „Attributive Language with Complement“ Boole’sche Operatoren ¬, u, t Quantoren ∀, ∃ Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 123 / 139 Die Beschreibungslogik ALC „Attributive Language with Complement“ Boole’sche Operatoren ¬, u, t Quantoren ∀, ∃ Name hat historische Gründe: Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 123 / 139 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 ∃ Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 123 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 123 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 123 / 139 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 Master-Vorlesungen besuchen Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 123 / 139 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. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 124 / 139 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 124 / 139 Schematische Darstellung einer Interpretation Konzeptnamen ...C ... Rollennamen ...r ... ·I ∆I CI rI Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 125 / 139 Interpretation komplexer Konzepte Die Interpretation komplexer Konzepte ist induktiv definiert: Name Jan Hladik (DHBW Stuttgart) Syntax Semantik Wissensbasierte Systeme – Logik – Sommersemester 2017 126 / 139 Interpretation komplexer Konzepte Die Interpretation komplexer Konzepte ist induktiv definiert: Name Top Jan Hladik (DHBW Stuttgart) Syntax Semantik > ∆I Wissensbasierte Systeme – Logik – Sommersemester 2017 126 / 139 Interpretation komplexer Konzepte Die Interpretation komplexer Konzepte ist induktiv definiert: Name Top Bottom Jan Hladik (DHBW Stuttgart) Syntax Semantik > ∆I ⊥ ∅ Wissensbasierte Systeme – Logik – Sommersemester 2017 126 / 139 Interpretation komplexer Konzepte Die Interpretation komplexer Konzepte ist induktiv definiert: Name Top Bottom Negation Jan Hladik (DHBW Stuttgart) Syntax > ⊥ ¬C Semantik ∆I ∅ ∆I \ C I Wissensbasierte Systeme – Logik – Sommersemester 2017 126 / 139 Interpretation komplexer Konzepte Die Interpretation komplexer Konzepte ist induktiv definiert: Name Top Bottom Negation Konjunktion Jan Hladik (DHBW Stuttgart) Syntax > ⊥ ¬C C uD Semantik ∆I ∅ ∆I \ C I C I ∩ DI Wissensbasierte Systeme – Logik – Sommersemester 2017 126 / 139 Interpretation komplexer Konzepte Die Interpretation komplexer Konzepte ist induktiv definiert: Name Top Bottom Negation Konjunktion Disjunktion Jan Hladik (DHBW Stuttgart) Syntax > ⊥ ¬C C uD C tD Semantik ∆I ∅ ∆I \ C I C I ∩ DI C I ∪ DI Wissensbasierte Systeme – Logik – Sommersemester 2017 126 / 139 Interpretation komplexer Konzepte Die Interpretation komplexer Konzepte ist induktiv definiert: Name Top Bottom Negation Konjunktion Disjunktion Allquantor Jan Hladik (DHBW Stuttgart) Syntax > ⊥ ¬C C uD C tD ∀r.C Semantik ∆I ∅ ∆I \ C I C I ∩ DI C I ∪ DI {x ∈ ∆I | (x, y) ∈ r I impliziert y ∈ C I } Wissensbasierte Systeme – Logik – Sommersemester 2017 126 / 139 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 126 / 139 Ü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 127 / 139 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 128 / 139 Grundlegende BL-Schlussfolgerungsprobleme Konsistenz Ist ein Konzept C widersprüchlich? Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 129 / 139 Grundlegende BL-Schlussfolgerungsprobleme Konsistenz Ist ein Konzept C widersprüchlich? ; Ist C erfüllbar? Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 129 / 139 Grundlegende BL-Schlussfolgerungsprobleme Konsistenz Ist ein Konzept C widersprüchlich? ; Ist C erfüllbar? Subsumtion Ist jede Instanz von C auch Instanz von D? Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 129 / 139 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? Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 129 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 129 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 129 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 129 / 139 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 129 / 139 Tableau-Algorithmus für ALC-Konzepte arbeitet auf ALC-Konzepten in Negations-Normalform (NNF) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 130 / 139 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 Jan Hladik (DHBW Stuttgart) ¬(C t D) ; ¬C u ¬D ¬∃r.C ; ∀r.¬C Wissensbasierte Systeme – Logik – Sommersemester 2017 130 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 130 / 139 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) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 130 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 130 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 130 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 130 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 130 / 139 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 130 / 139 ALC-Tableau: Formale Definition Definition (ALC-Tableau) Sei C ein ALC-Konzept, Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 131 / 139 ALC-Tableau: Formale Definition Definition (ALC-Tableau) Sei C ein ALC-Konzept, SC(C ) die Menge aller Subkonzepte von C und Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 131 / 139 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. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 131 / 139 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. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 131 / 139 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 , Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 131 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 131 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 131 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 131 / 139 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 131 / 139 ALC-Tableau-Algorithmus 4 Regeln (wegen NNF) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 132 / 139 ALC-Tableau-Algorithmus 4 Regeln (wegen NNF) brechen komplexe Formeln in einfachere auf Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 132 / 139 ALC-Tableau-Algorithmus 4 Regeln (wegen NNF) brechen komplexe Formeln in einfachere auf Anwendungsreihenfolge don’t-care-nichtdeterministisch Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 132 / 139 ALC-Tableau-Algorithmus 4 Regeln (wegen NNF) brechen komplexe Formeln in einfachere auf Anwendungsreihenfolge don’t-care-nichtdeterministisch t-Regel don’t-know-nichtdeterministisch Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 132 / 139 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. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 132 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 132 / 139 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 132 / 139 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. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 133 / 139 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}. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 133 / 139 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 }. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 133 / 139 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 . Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 133 / 139 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 133 / 139 Beispiel: ALC-Tableau-Algorithmus C = ∃r.(A t ∃r.B) u ∃r.¬A u ∀r.(¬A u ∀r.(¬B t A)) u L(u) = {C } Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 134 / 139 Beispiel: ALC-Tableau-Algorithmus C = ∃r.(A t ∃r.B) u ∃r.¬A u ∀r.(¬A u ∀r.(¬B t A)) u L(u) = {C , ∃r.(A t ∃r.B), ∃r.¬A, ∀r.(¬A u ∀r.(¬B t A))} Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 134 / 139 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.¬A, ∀r.(¬A u ∀r.(¬B t A))} L(v) = {A t ∃r.B} Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 134 / 139 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} L(w) = {¬A} Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 134 / 139 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)} L(w) = {¬A} Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 134 / 139 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)} L(w) = {¬A, ∀r.(¬B t A)} Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 134 / 139 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} L(w) = {¬A, ∀r.(¬B t A)} Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 134 / 139 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} L(w) = {¬A, ∀r.(¬B t A)} Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 134 / 139 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} L(w) = {¬A, ∀r.(¬B t A)} x Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 134 / 139 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} Wissensbasierte Systeme – Logik – Sommersemester 2017 134 / 139 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} Wissensbasierte Systeme – Logik – Sommersemester 2017 134 / 139 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} Wissensbasierte Systeme – Logik – Sommersemester 2017 134 / 139 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} Wissensbasierte Systeme – Logik – Sommersemester 2017 134 / 139 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 134 / 139 ALC-Tableau und Modell Das vollständige und Clash-freie Tableau liefert ein Modell I: ∆I = {u, v, w, x} (alle Knoten) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 135 / 139 ALC-Tableau und Modell Das vollständige und Clash-freie Tableau liefert ein Modell I: ∆I AI BI = {u, v, w, x} (alle Knoten) = {x} (alle Knoten, deren Beschriftung A enthält) = {x} (alle Knoten, deren Beschriftung B enthält) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 135 / 139 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) Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 135 / 139 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 135 / 139 Ü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 136 / 139 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. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 137 / 139 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. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 137 / 139 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. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 137 / 139 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 137 / 139 Terminierung Satz (Terminierung des ALC-Tableau-Algorithmus) Der Algorithmus terminiert für jedes Eingabekonzept C . Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 138 / 139 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. Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 138 / 139 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 138 / 139 Zusammenfassung: ALC ausdrucksstärker als Aussagenlogik Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 139 / 139 Zusammenfassung: ALC ausdrucksstärker als Aussagenlogik ausdrucksschwächer als Prädikatenlogik Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 139 / 139 Zusammenfassung: ALC ausdrucksstärker als Aussagenlogik ausdrucksschwächer als Prädikatenlogik ∀ und ∃ nur eingeschränkt Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 139 / 139 Zusammenfassung: ALC ausdrucksstärker als Aussagenlogik ausdrucksschwächer als Prädikatenlogik ∀ und ∃ nur eingeschränkt nur ein- und zweistellige Prädikate Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 139 / 139 Zusammenfassung: ALC ausdrucksstärker als Aussagenlogik ausdrucksschwächer als Prädikatenlogik ∀ und ∃ nur eingeschränkt nur ein- und zweistellige Prädikate keine Funktionen Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 139 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 139 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 139 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 139 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 139 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 139 / 139 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 Jan Hladik (DHBW Stuttgart) Wissensbasierte Systeme – Logik – Sommersemester 2017 139 / 139 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 139 / 139