Vorlesung Logik für Informatiker 6. Aussagenlogik Resolution Bernhard Beckert Universität Koblenz-Landau Sommersemester 2006 Logik für Informatiker, SS 06 p.1
Der aussagenlogische Resolutionkalkül Wesentliche Eigenschaften Widerlegungskalkül: Testet auf Unerfüllbarkeit Logik für Informatiker, SS 06 p.2
Der aussagenlogische Resolutionkalkül Wesentliche Eigenschaften Widerlegungskalkül: Testet auf Unerfüllbarkeit Voraussetzung: Alle Formeln in konjunktiver Normalform Logik für Informatiker, SS 06 p.2
Der aussagenlogische Resolutionkalkül Wesentliche Eigenschaften Widerlegungskalkül: Testet auf Unerfüllbarkeit Voraussetzung: Alle Formeln in konjunktiver Normalform Eine einzige Regel Logik für Informatiker, SS 06 p.2
Der aussagenlogische Resolutionkalkül Wesentliche Eigenschaften Widerlegungskalkül: Testet auf Unerfüllbarkeit Voraussetzung: Alle Formeln in konjunktiver Normalform Eine einzige Regel Operiert of Klauseln (in Mengenschreibweise) Logik für Informatiker, SS 06 p.2
Der aussagenlogische Resolutionkalkül Wesentliche Eigenschaften Widerlegungskalkül: Testet auf Unerfüllbarkeit Voraussetzung: Alle Formeln in konjunktiver Normalform Eine einzige Regel Operiert of Klauseln (in Mengenschreibweise) Notation Leere Klausel: Logik für Informatiker, SS 06 p.2
Resolutionskalkül Definition: Resolutionsregel (einzige Regel des Kalküls) wobei C 1 {P}, C 2 { P} C 1 C 2 P eine aussagenlogische Variable C 1, C 2 Klauseln (können leer sein) Logik für Informatiker, SS 06 p.3
Resolutionskalkül Definition: Resolutionsregel (einzige Regel des Kalküls) wobei C 1 {P}, C 2 { P} C 1 C 2 P eine aussagenlogische Variable C 1, C 2 Klauseln (können leer sein) Definition: Resolvente C 1 C 2 heißt Resolvente von C 1 {P}, C 2 { P}. Logik für Informatiker, SS 06 p.3
Resolution: Beispiel Gegeben die Klauselmenge M = { {P 1, P 2 }, {P 1, P 2 }, { P 1, P 2 }, { P 1, P 2 } } Logik für Informatiker, SS 06 p.4
Resolution: Beispiel Gegeben die Klauselmenge M = { {P 1, P 2 }, {P 1, P 2 }, { P 1, P 2 }, { P 1, P 2 } } Resolution {P 1, P 2 } {P 1, P 2 } Logik für Informatiker, SS 06 p.4
Resolution: Beispiel Gegeben die Klauselmenge M = { {P 1, P 2 }, {P 1, P 2 }, { P 1, P 2 }, { P 1, P 2 } } Resolution {P 1, P 2 } {P 1, P 2 } {P 1 } Logik für Informatiker, SS 06 p.4
Resolution: Beispiel Gegeben die Klauselmenge M = { {P 1, P 2 }, {P 1, P 2 }, { P 1, P 2 }, { P 1, P 2 } } Resolution {P 1, P 2 } {P 1, P 2 } {P 1 } { P 1, P 2 } { P 1, P 2 } Logik für Informatiker, SS 06 p.4
Resolution: Beispiel Gegeben die Klauselmenge M = { {P 1, P 2 }, {P 1, P 2 }, { P 1, P 2 }, { P 1, P 2 } } Resolution {P 1, P 2 } {P 1, P 2 } {P 1 } { P 1, P 2 } { P 1, P 2 } { P 1 } Logik für Informatiker, SS 06 p.4
Resolution: Beispiel Gegeben die Klauselmenge M = { {P 1, P 2 }, {P 1, P 2 }, { P 1, P 2 }, { P 1, P 2 } } Resolution {P 1, P 2 } {P 1, P 2 } {P 1 } { P 1, P 2 } { P 1, P 2 } { P 1 } {P 1 }, { P 1 } Logik für Informatiker, SS 06 p.4
Resolution: Beispiel Gegeben die Klauselmenge M = { {P 1, P 2 }, {P 1, P 2 }, { P 1, P 2 }, { P 1, P 2 } } Resolution {P 1, P 2 } {P 1, P 2 } {P 1 } { P 1, P 2 } { P 1, P 2 } { P 1 } {P 1 }, { P 1 } Logik für Informatiker, SS 06 p.4
Resolution: Beispiel Gegeben die Klauselmenge M = { {P 1, P 2 }, {P 1, P 2 }, { P 1, P 2 }, { P 1, P 2 } } Resolution {P 1, P 2 } {P 1, P 2 } {P 1 } Insgesamt M Res { P 1, P 2 } { P 1, P 2 } { P 1 } {P 1 }, { P 1 } Logik für Informatiker, SS 06 p.4
Resolution: Beispiel Gegeben die Klauselmenge M = { {P 1, P 2 }, {P 1, P 2 }, { P 1, P 2 }, { P 1, P 2 } } Resolution {P 1, P 2 } {P 1, P 2 } {P 1 } { P 1, P 2 } { P 1, P 2 } { P 1 } {P 1 }, { P 1 } Insgesamt M Res also M unerfüllbar Logik für Informatiker, SS 06 p.4
Resolution: Weiteres Beispiel Zu zeigen (A B) ((B C) (A C)) ist allgemeingültig Logik für Informatiker, SS 06 p.5
Resolution: Weiteres Beispiel Zu zeigen (A B) ((B C) (A C)) ist allgemeingültig Dazu zeigen wir, dass ((A B) ((B C) (A C))) unerfüllbar ist Logik für Informatiker, SS 06 p.5
Resolution: Weiteres Beispiel Zu zeigen (A B) ((B C) (A C)) ist allgemeingültig Dazu zeigen wir, dass ((A B) ((B C) (A C))) unerfüllbar ist Klauselnormalform M = {{ A, B}, { B, C}, {A}, { C}} Logik für Informatiker, SS 06 p.5
Resolution: Weiteres Beispiel Klauselnormalform M = {{ A, B}, { B, C}, {A}, { C}} Ableitung der leeren Klausel aus M Logik für Informatiker, SS 06 p.6
Resolution: Weiteres Beispiel Klauselnormalform M = {{ A, B}, { B, C}, {A}, { C}} Ableitung der leeren Klausel aus M (1) [] { A, B} (2) [] { B, C} (3) [] {A} (4) [] { C} Logik für Informatiker, SS 06 p.6
Resolution: Weiteres Beispiel Klauselnormalform M = {{ A, B}, { B, C}, {A}, { C}} Ableitung der leeren Klausel aus M (1) [] { A, B} (2) [] { B, C} (3) [] {A} (4) [] { C} (5) [1, 3] {B} Logik für Informatiker, SS 06 p.6
Resolution: Weiteres Beispiel Klauselnormalform M = {{ A, B}, { B, C}, {A}, { C}} Ableitung der leeren Klausel aus M (1) [] { A, B} (2) [] { B, C} (3) [] {A} (4) [] { C} (5) [1, 3] {B} (6) [2, 5] {C} Logik für Informatiker, SS 06 p.6
Resolution: Weiteres Beispiel Klauselnormalform M = {{ A, B}, { B, C}, {A}, { C}} Ableitung der leeren Klausel aus M (1) [] { A, B} (2) [] { B, C} (3) [] {A} (4) [] { C} (5) [1, 3] {B} (6) [2, 5] {C} (7) [4, 6] Logik für Informatiker, SS 06 p.6
Resolution: Bemerkungen Vorsicht bei Klauseln mit mehreren Resolutionsmöglichkeiten Zwei Klauseln können mehr als eine Resolvente haben z.b.: {A, B} und { A, B} Logik für Informatiker, SS 06 p.7
Resolution: Bemerkungen Vorsicht bei Klauseln mit mehreren Resolutionsmöglichkeiten Zwei Klauseln können mehr als eine Resolvente haben z.b.: {A, B} und { A, B} {A, B, C} und { A, B, D} haben NICHT {C, D} als Resolvente Logik für Informatiker, SS 06 p.7
Resolution: Bemerkungen Vorsicht bei Klauseln mit mehreren Resolutionsmöglichkeiten Zwei Klauseln können mehr als eine Resolvente haben z.b.: {A, B} und { A, B} {A, B, C} und { A, B, D} haben NICHT {C, D} als Resolvente Heuristik Immer möglichst kleine Klauseln ableiten Logik für Informatiker, SS 06 p.7
Notwendigkeit der Mengenschreibweise Die Menge E = {P 1 P 2, P 1 P 2, P 1 P 2, P 1 P 2 } ist unerfüllbar Logik für Informatiker, SS 06 p.8
Notwendigkeit der Mengenschreibweise Die Menge E = {P 1 P 2, P 1 P 2, P 1 P 2, P 1 P 2 } ist unerfüllbar Es gibt folgende Resolutionsmöglichkeiten (ohne Mengenschreibweise) P 1 P 2, P 1 P 2 P 2 P 2 P 1 P 2, P 1 P 2 P 1 P 1 P 1 P 1, P 1 P 2 P 1 P 2 P 2 P 2, P 1 P 2 P 1 P 2 Logik für Informatiker, SS 06 p.8
Notwendigkeit der Mengenschreibweise Die Menge E = {P 1 P 2, P 1 P 2, P 1 P 2, P 1 P 2 } ist unerfüllbar Es gibt folgende Resolutionsmöglichkeiten (ohne Mengenschreibweise) P 1 P 2, P 1 P 2 P 2 P 2 P 1 P 2, P 1 P 2 P 1 P 1 P 1 P 1, P 1 P 2 P 1 P 2 P 2 P 2, P 1 P 2 P 1 P 2 Auf diese Weise ist nicht herleitbar Logik für Informatiker, SS 06 p.8
Resolution: Korrektheit und Vollständigkeit Theorem Für eine Menge M von Klauseln gilt M unerfüllbar gdw. M Res Logik für Informatiker, SS 06 p.9
1-Resolution Regel der 1-Resolution {P}, C 2 { P} C 2 { P}, C 2 {P} C 2 Spezialfall der Resolutionsregel Logik für Informatiker, SS 06 p.10
1-Resolution Regel der 1-Resolution {P}, C 2 { P} C 2 { P}, C 2 {P} C 2 Spezialfall der Resolutionsregel Frage Ist 1-Resolution vollständig? Logik für Informatiker, SS 06 p.10
1-Resolution Regel der 1-Resolution {P}, C 2 { P} C 2 { P}, C 2 {P} C 2 Spezialfall der Resolutionsregel Frage Ist 1-Resolution vollständig? NEIN Logik für Informatiker, SS 06 p.10
1-Resolution Beispiel für Unvollständigkeit E = {{P 1, P 2 }, {P 1, P 2 }, { P 1, P 2 }, { P 1, P 2 }} ist unerfüllbar, aber mit 1-Resolution ist aus E nichts ableitbar Logik für Informatiker, SS 06 p.11
Zusammenfassung: Resolution Die Resolutionsregel Logik für Informatiker, SS 06 p.12
Zusammenfassung: Resolution Die Resolutionsregel Vorgehensweise für Nachweis der Allgemeingültigkeit: Negation, Klauseln, Resolution Logik für Informatiker, SS 06 p.12
Zusammenfassung: Resolution Die Resolutionsregel Vorgehensweise für Nachweis der Allgemeingültigkeit: Negation, Klauseln, Resolution Korrektheit und Vollständigkeit Logik für Informatiker, SS 06 p.12
Zusammenfassung: Resolution Die Resolutionsregel Vorgehensweise für Nachweis der Allgemeingültigkeit: Negation, Klauseln, Resolution Korrektheit und Vollständigkeit 1-Resolution (unvollständig) Logik für Informatiker, SS 06 p.12