20.03.2014 Aufrufe

Einführung in die Methoden der Künstlichen Intelligenz - Goethe ...

Einführung in die Methoden der Künstlichen Intelligenz - Goethe ...

Einführung in die Methoden der Künstlichen Intelligenz - Goethe ...

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

3.4 Normalformen<br />

s<strong>in</strong>d, so dass Vertauschungen und e<strong>in</strong> Weglassen <strong>der</strong> Klammern erlaubt ist. Wichtig ist<br />

<strong>die</strong> Idempotenz, <strong>die</strong> z.B. erlaubt, e<strong>in</strong>e Klausel {A, B, A, C} als unmittelbar äquivalent zur<br />

Klausel {A, B, C} zu betrachten. E<strong>in</strong>e Klausel mit e<strong>in</strong>em Literal bezeichnet man auch als<br />

1-Klausel (Unit-Klausel). E<strong>in</strong>e Klausel (<strong>in</strong> Mengenschreibweise) ohne Literale wird als leere<br />

Klausel bezeichnet. Diese ist äquivalent zu 0, dem Wi<strong>der</strong>spruch.<br />

Lemma 3.4.1. E<strong>in</strong>e Klausel C ist genau dann e<strong>in</strong>e Tautologie, wenn es e<strong>in</strong>e Variable A gibt, so<br />

dass sowohl A als auch ¬A <strong>in</strong> <strong>der</strong> Klausel vorkommen<br />

Beweis. Übungsaufgabe.<br />

Es gilt:<br />

Lemma 3.4.2. Zu je<strong>der</strong> Aussage kann man e<strong>in</strong>e äquivalente CNF f<strong>in</strong>den und ebenso e<strong>in</strong>e äquivalente<br />

DNF. Allerd<strong>in</strong>gs nicht <strong>in</strong> e<strong>in</strong>deutiger Weise.<br />

Lemma 3.4.3.<br />

• E<strong>in</strong>e Aussage <strong>in</strong> CNF kann man <strong>in</strong> Zeit O(n ∗ log(n)) auf Tautologie-Eigenschaft testen.<br />

• E<strong>in</strong>e Aussage <strong>in</strong> DNF kann man <strong>in</strong> Zeit O(n ∗ log(n)) auf Unerfüllbarkeit testen.<br />

Beweis. E<strong>in</strong>e CNF C 1 ∧ . . . ∧ C n ist e<strong>in</strong>e Tautologie, gdw. für alle Interpretationen I <strong>die</strong>se<br />

Formel stets wahr ist. D.h. alle C i müssen ebenfalls Tautologien se<strong>in</strong>. Das geht nur, wenn<br />

jedes C i e<strong>in</strong> Paar von Literalen <strong>der</strong> Form A, ¬A enthält.<br />

Das gleiche gilt <strong>in</strong> dualer Weise für e<strong>in</strong>e DNF, wenn man dualisiert, d.h. wenn man<br />

ersetzt: ∧ ↔ ∨, 0 ↔ 1, CNF ↔ DNF, Tautologie ↔ Wi<strong>der</strong>spruch.<br />

Der duale Test: CNF auf Unerfüllbarkeit bzw. DNF auf Allgeme<strong>in</strong>gültigkeit ist <strong>die</strong> eigentliche<br />

harte Nuß.<br />

Dualitätspr<strong>in</strong>zip Man stellt fest, dass <strong>in</strong> <strong>der</strong> Aussagenlogik (auch <strong>in</strong> <strong>der</strong> Prädikatenlogik)<br />

Def<strong>in</strong>itionen, Lemmas, <strong>Methoden</strong>, Kalküle, Algorithmen stets e<strong>in</strong>e duale Variante<br />

haben. Die Dualität ist wie im Beweis oben durch Vertauschung zu sehen: ∧ ↔ ∨, 0 ↔ 1,<br />

CNF ↔ DNF, Tautologie ↔ Wi<strong>der</strong>spruch, Test auf Allgeme<strong>in</strong>gültigkeit ↔ Test auf Unerfüllbarkeit.<br />

D.h. auch, dass <strong>die</strong> Wahl zwischen Beweissystemen, <strong>die</strong> auf Allgeme<strong>in</strong>gültigkeit<br />

testen und solchen, <strong>die</strong> auf Unerfüllbarkeit testen, e<strong>in</strong>e Geschmacksfrage ist und<br />

ke<strong>in</strong>e pr<strong>in</strong>zipielle Frage.<br />

Lemma 3.4.4. Sei F e<strong>in</strong>e Formel. Dann ist F allgeme<strong>in</strong>gültig gdw. ¬F e<strong>in</strong> Wi<strong>der</strong>spruch ist<br />

Bemerkung 3.4.5. Aus Lemma 3.4.3 kann man Schlussfolgerungen ziehen über <strong>die</strong> zu erwartende<br />

Komplexität e<strong>in</strong>es Algorithmus, <strong>der</strong> e<strong>in</strong>e Formel (unter Äquivalenzerhaltung) <strong>in</strong> e<strong>in</strong>e DNF<br />

(CNF) transformiert. Wenn <strong>die</strong>ser Algorithmus polynomiell wäre, dann könnte man e<strong>in</strong>en polynomiellen<br />

Tautologietest durchführen:<br />

Zuerst überführe e<strong>in</strong>e Formel <strong>in</strong> CNF und dann prüfe, ob <strong>die</strong>se CNF e<strong>in</strong>e Tautologie<br />

ist.<br />

M. Schmidt-Schauß & D. Sabel, Skript KI, WS 2012/13 89 Stand: 25. November 2012

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!