Strukturerhaltende Transformation in konjunktive Normalform

Ähnliche Dokumente
I. Aussagenlogik. Aussagenlogik untersucht Verknüpfungen wie "und", "oder", "nicht", "wenn... dann" zwischen atomaren und komplexen Sätzen.

Erfüllbarkeit und Allgemeingültigkeit

Logik für Informatiker

Formale Methoden II. Gerhard Jäger. SS 2008 Universität Bielefeld. Teil 8, 11. Juni Formale Methoden II p.1/30

Grundlagen der Künstlichen Intelligenz

Binäre Suchbäume (binary search trees, kurz: bst)

Was bisher geschah. Aufgaben: Diagnose, Entscheidungsunterstützung Aufbau Komponenten und Funktion

1 Aussagenlogische Formeln

Semantic Web Technologies I!

der einzelnen Aussagen den Wahrheitswert der zusammengesetzten Aussage falsch falsch falsch falsch wahr falsch wahr falsch falsch wahr wahr wahr

Grundlagen der Theoretischen Informatik - Sommersemester Übungsblatt 1: Lösungsvorschläge

A.1 Schaltfunktionen und Schaltnetze

Informationsblatt Induktionsbeweis

Universität Koblenz-Landau, Abteilung Koblenz FB 4 Informatik. Seminar Entscheidungsverfahren für logische Theorien. Endliche Modelle.

Grundbegriffe der Informatik

5. Aussagenlogik und Schaltalgebra

Grundlagen der Informationverarbeitung

Beispiel. Bsp.: Betrachte Schlussweise in: (3) folgt aus (1) und (2), siehe z.b. Resolutionsregel. was ist mit folgender Schlußweise:

2.11 Kontextfreie Grammatiken und Parsebäume

Prolog basiert auf Prädikatenlogik

Datenstruktur zum Speichern einer endlichen Menge M von Zahlen. Genauer:

Wissensrepräsentation und -verarbeitung in Logiken. bereinigt Pränex Skolem ( -Eliminierung) Klausel (Menge von Klauseln, Notation ohne Quantoren)

Wissensbasierte Systeme/ Expertensysteme. Teil 2

WS 2009/10. Diskrete Strukturen

Teil 1: Digitale Logik


5.1 Drei wichtige Beweistechniken Erklärungen zu den Beweistechniken... 56

Wissensbasierte Systeme

Wortproblem für kontextfreie Grammatiken

Primzahlzertifikat von Pratt

Formeln. Signatur. aussagenlogische Formeln: Aussagenlogische Signatur

Binäre lineare Optimierung mit K*BMDs p.1/42

Klausur Formale Systeme Fakultät für Informatik WS 2009/2010

4 Greedy-Algorithmen (gierige Algorithmen)

Satz. Für jede Herbrand-Struktur A für F und alle t D(F ) gilt offensichtlich

Semantik von Formeln und Sequenzen

Beschreibungslogiken. Daniel Schradick

Zusammenfassung. Satz. 1 Seien F, G Boolesche Ausdrücke (in den Variablen x 1,..., x n ) 2 Seien f : B n B, g : B n B ihre Booleschen Funktionen

Theoretische Informatik

Mai Hauptseminar: Nichtrelationale Datenbanken Historisch-Kulturwissenschaftliche Informationsverarbeitung Universität zu Köln

Was bisher geschah Wissensrepräsentation und -verarbeitung in Zustandsübergangssystemen Constraint-Systemen Logiken Repräsentation von Mengen

Folge 19 - Bäume Binärbäume - Allgemeines. Grundlagen: Ulrich Helmich: Informatik 2 mit BlueJ - Ein Kurs für die Stufe 12

Die Gleichung A x = a hat für A 0 die eindeutig bestimmte Lösung. Für A=0 und a 0 existiert keine Lösung.

Kapitel DB:V (Fortsetzung)

Logische Programmierung

Zeichnen von Graphen. graph drawing

Steinerbäume. Seminarausarbeitung Hochschule Aalen Fakultät für Elektronik und Informatik Studiengang Informatik Schwerpunkt Software Engineering

Entwicklung eines korrekten Übersetzers

5 Logische Programmierung

Mathematische Grundlagen der Informatik

Prof. Dr. sc. Hans-Dieter Burkhard Vorlesung Winter-Semester 2003/04. Wissensrepräsentation: Resolution (im PK1)

Das Briefträgerproblem

Verwendet man zur Darstellung nur binäre Elemente ( bis lat.: zweimal) so spricht man von binärer Digitaltechnik.

Theorie der Informatik

Informatik I WS 07/08 Tutorium 24

Theoretische Grundlagen der Informatik

Pratts Primzahlzertifikate

Kapitel 7 Dr. Jérôme Kunegis. Logische Kalküle. WeST Web Science & Technologies

Optimalitätskriterien

Logik und Mengenlehre. ... wenn man doch nur vernünftig mit Datenbanken umgehen können will?

Künstliche Intelligenz Maschinelles Lernen

Einführung. Vorlesungen zur Komplexitätstheorie: Reduktion und Vollständigkeit (3) Vorlesungen zur Komplexitätstheorie. K-Vollständigkeit (1/5)

Ein kausaler Zusammenhang entspricht einer speziellen wahren Implikation. Beispiel: Wenn es regnet, dann wird die Erde nass.

Universität Paderborn Die Universität der Informationsgesellschaft. Validierung und Verifikation (inkl. Testen, Model-Checking, Theorem Proving)

3 Quellencodierung. 3.1 Einleitung

Sortierverfahren für Felder (Listen)

2. Vorlesung. Slide 40

NP-Vollständigkeit. Krautgartner Martin ( ) Markgraf Waldomir ( ) Rattensberger Martin ( ) Rieder Caroline ( )

Klausur für Studiengänge INF und IST

Logische Folgerung. Definition 2.11

Bäume und Wälder. Bäume und Wälder 1 / 37

Vorlesung : Binäre Entscheidungsdiagramme (BDDs) Dr. Carsten Sinz

Relationale Kalküle. Grundlagen der Datenbanken. Dr. Jérôme Kunegis Wintersemester 2013/14

Mächtigkeit von WHILE-Programmen

3. Entscheidungsbäume. Verfahren zum Begriffslernen (Klassifikation) Beispiel: weiteres Beispiel: (aus Böhm 2003) (aus Morik 2002)

Logik & Semantik 7. Vorlesung Prädikatenlogik 1. Syntax der Prädikatenlogik Semantik der Prädikatenlogik: Grundbegriffe (Variablen-)Substitutionen

Bestimmung einer ersten

Formale Systeme, WS 2012/2013 Praxisaufgabe 1: SAT-Solver Spotlight

Auswahl von Klauseln und Atomen in Prolog

InfoTraffic Alltagsbezogene Lernumgebungen für Warteschlangen und Aussagenlogik

4. Jeder Knoten hat höchstens zwei Kinder, ein linkes und ein rechtes.

2. Lernen von Entscheidungsbäumen

Seminar über Software Model Checking Vortrag zum Thema Predicate Abstraction

Signalverarbeitung 1

Program = Logic + Control

Ein neuer Beweis, dass die Newton sche Entwicklung der Potenzen des Binoms auch für gebrochene Exponenten gilt

Kapitel 3 Mathematik. Kapitel 3.3. Algebra Gleichungen

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

Terme stehen für Namen von Objekten des Diskursbereichs (Subjekte, Objekte des natürlichsprachlichen Satzes)

50. Mathematik-Olympiade 2. Stufe (Regionalrunde) Klasse Lösung 10 Punkte

Theoretische Grundlagen des Software Engineering

Basis und Dimension. Als nächstes wollen wir die wichtigen Begriffe Erzeugendensystem und Basis eines Vektorraums definieren.

Also kann nur A ist roter Südler und B ist grüner Nordler gelten.

Grundbegriffe der Informatik

Kapitel 7: Formaler Datenbankentwurf

0, v 6 = , v 4 = span(v 1, v 5, v 6 ) = span(v 1, v 2, v 3, v 4, v 5, v 6 ) 4. span(v 1, v 2, v 4 ) = span(v 2, v 3, v 5, v 6 )

JOHANNES BONNEKOH. Analysis. Allgemeine Hochschulreife und Fachabitur

7. Formale Sprachen und Grammatiken

Kapiteltests zum Leitprogramm Binäre Suchbäume

Modallogik (aussagenlogisch)

Transkript:

Proseminar: Präsentation ausgewählter Problemstellungen der Informatik Strukturerhaltende Transformation in konjunktive Normalform Thomas Kemmerich 31. Oktober 2005

Inhalt 1 Abstract 2 2 Einführung 3 2.1 Motivation.......................................... 3 2.2 Grundlagen.......................................... 4 3 Hauptteil 5 3.1 Problemdefinition....................................... 5 3.2 Grundidee........................................... 6 3.3 Formalisierung der Grundidee................................ 11 3.4 Korrektheit.......................................... 12 3.5 Komplexität.......................................... 15 4 Schlussbemerkungen 17 1

1 Abstract Diese Ausarbeitung beschreibt das in [2] beschriebene effiziente Transformationsverfahren, mit dessen Hilfe jede beliebige aussagen- oder prädikatenlogische Formel in eine erfüllbarkeitsäquivalente Formel in konjunktiver Normalform (KNF) überführt werden kann. Da es eine Menge von Algorithmen gibt, die als Eingabe Formeln in konjunktiver Normalform benötigen, ist eine effiziente Transformation einer beliebigen Formel notwendig. Der Kern des vorgestellten Verfahrens liegt darin, aus einer vorhandenen Formel eine neue, zu ihr erfüllbarkeitsäquivalente Formel zu konstruieren. Dabei werden in der Ausgangsformel Teilformeln durch neue Atome bzw. Prädikate ersetzt und Äquivalenzen hinzugefügt. Diese Äquivalenzen werden dann auf Implikationen reduziert. Durch Anwendung der Standardtransformation auf kleine Teilformeln entsteht dann die gesuchte erfüllbarkeitsäquivalente Formel in KNF. 2

2 Einführung 2.1 Motivation Angenommen ein Automobilhersteller möchte ein neues Automodell auf den Markt bringen. Bevor der Wagen marktreif ist, müssen eine Reihe von Tests absolviert werden. Darunter auch Tests, deren reale Durchführung extrem teuer ist - so wie es zum Beispiel bei einem Crashtest der Fall ist. Natürlich ist der Automobilhersteller daran interessiert, die Kosten für diese Tests so gering wie möglich zu halten. Ein Weg dahin ist, anstelle des realen Experimentes eine Simulation auf Basis eines Modells durchzuführen. Somit muss beispielsweise das Auto adäquat modelliert werden. Für diese Modellbildung kann z.b. Abbildung 2.1: Modellbildung auf Aussagen- oder Prädikatenlogik zurückgegriffen werden. Die Ergebnisse der Simulation können dann auf das reale Auto transferiert werden (siehe Abb. 2.1). Der Automobilhersteller hat somit die Chance Schwachstellen in seiner Konstruktion zu beheben, bevor er einen realen, teuren Crashtest durchführt. Bei der Durchführung einer solchen Simulation auf Basis von Formeln werden zur Berechnung die verschiedensten Algorithmen verwendet. Einige von ihnen benötigen als Eingabe Formeln in bestimmten Normalformen. Genau an dieser Stelle kann das in dieser Ausarbeitung beschriebene Verfahren in den Prozess eingreifen. Es beschreibt, wie aus beliebigen aussagen- oder prädikatenlogischen Formeln neue Formeln konstruiert werden können, die dann in konjunktiver Normalform (kurz KNF) vorliegen. 3

2 Einführung 2.2 Grundlagen Für das Verständnis des Papers [2] von Plaisted und Greenbaum und dieser Ausarbeitung ist ein sicherer Umgang mit der Aussagen- und Prädikatenlogik notwendig. Eine Formel ist in konjunktiver Normalform, wenn sie eine Konjunktion von Disjunktionen von Literalen ist. Um eine gegebene Formel in KNF umwandeln zu können, sollte man die gängigen Äquivalenzen, wie sie beispielsweise in [5] auf Seite 24 aufgelistet sind, beherrschen. Sie bilden die Grundlagen für die Standardtransformation in konjunktive Normalform (siehe [5] Seite 28ff). Weitere Voraussetzungen für das reine Verständnis des Papers sind nicht notwendig. Um den Nutzen des Verfahrens zu erkennen, ist es jedoch ratsam, das Resolutionskalkül verstanden zu haben. Da es beispielsweise für die Entscheidung von semantischen Folgerungen verwendet werden kann. Es wird unter anderem in [1] Seite 80ff und Seite 131ff beschrieben. 4

3.1 Problemdefinition Eine häufige Problemstellung ist die Entscheidung einer semantischen Folgerung. Diese ist wie folgt definiert: Definition 1 (semantische Folgerung). Aus α folgt semantisch β, in Zeichen α = β, genau dann, wenn I : (I(α) = 1 I(β) = 1) gilt. Durch logisch äquivalente Umformungen kann α = β zu α β ist widerspruchsvoll transformiert werden. Für die Entscheidung einer semantischen Folgerung ist es demnach lediglich erforderlich zu entscheiden, ob α β widerspruchsvoll ist. Für die Lösung dieses Problems existieren Erfüllbarkeitsalgorithmen und Kalküle. Die Erfüllbarkeitsalgorithmen arbeiten dabei auf Interpretationsebene, d.h. sie bewerten Formeln nach einem bestimmten Schema und entscheiden dann, ob die Formel widerspruchsvoll ist. Kalküle hingegen arbeiten nicht auf Interpretationsebene, sondern auf Basis der Formelsyntax. Als Beispiel sei hier das Resolutionskalkül genannt (siehe [5], Seite 37ff). Es benötigt als Eingabe eine Formel in KNF. Definition 2 (Logische Äquivalenz). α und β sind logisch äquivalent (α β) genau dann, wenn I : I(α) = I(β). Abbildung 3.1: Logische Äquivalenz Abbildung 3.1 stellt die Klassen der logisch äquivalenten Formeln dar. Dabei bildet die in der Abbildung mittig platzierte Klasse eine Oberklasse einer ganzen Menge von Klassen. Die logisch äquivalente Umformung ist, wie an Definition 2 zu sehen, eine sehr starke Forderung. Eine logisch äquivalente Formel zu α β in konjunktiver Normalform zu bilden, kann im schlimmsten Fall exponentielle Laufzeit benötigen. An dieser Stelle wird jedoch nur die Frage nach der Erfüllbarkeit von α β gestellt. Aus diesem Grund ist eine logisch äquivalente Umformung nicht notwendig. Es ist vollkommen ausreichend, wenn eine Transformation stattfindet, die genau diese Erfüllbarkeitseigenschaft erhält. Man sprich von Erfüllbarkeitsäquivalenz: 5

Definition 3 (Erfüllbarkeitsäquivalenz). α und β sind erfüllbarkeitsäquivalent (α sat β) genau dann, wenn I : I(α) = 1 I : I(β) = 1. Abbildung 3.2: Erfüllbarkeitsäquivalenz Abbildung 3.2 zeigt die zwei Klassen der Erfüllbarkeitsäquivalenz. Im Unterschied zur logischen Äquivalenz existieren nur noch zwei Formelklassen: widerspruchsvolle und erfüllbare Formeln. Damit ist die Forderung nach Erfüllbarkeitsäquivalenz schwächer als die Forderung nach logischer Äquivalenz. Sei γ sat α β. Dann gilt γ sat α β (γ erfüllbar α β erfüllbar ) (γ widerspruchsvoll α β widerspruchsvoll ) Entscheidet man die Erfüllbarkeit für γ, so kann wegen der Äquivalenz in der letzten Zeile sofort ein Rückschluss auf α β gezogen werden. Die semantische Folgerung α = β ist somit entschieden. Das in dieser Ausarbeitung beschriebene Verfahren wird strukturerhaltende Transformation in konjunktive Normalform genannt. Hierbei wird aus einer gegebenen Formel α eine erfüllbarkeitsäquivalente Formel γ in konjunktiver Normalform erzeugt. Benutzt man γ als Eingabe für das Resolutionskalkül, kann die semantische Folgerung, dank der Erfüllbarkeitsäquivalenz, leicht entschieden werden. 3.2 Grundidee Im folgenden Abschnitt wird die Grundidee der strukturerhaltenden Transformation in konjunktive Normalform auf Basis der Formel genauer beschrieben. α = (A B) (C D) Das Verfahren ist sowohl auf Formeln der Aussagenlogik als auch auf Formeln der Prädikatenlogik anwendbar. Zur Vereinfachung wird die Grundidee für die Aussagenlogik vorgestellt. Das genaue Vorgehen wird in Abschnitt 3.3 für die Prädikatenlogik formalisiert und gilt für die Aussagenlogik analog. 6

Die Grundidee basiert darauf, Teilformeln β α durch neue, nicht in α vorkommende Atome A i zu ersetzen. Dabei werden alle Vorkommen von β in α durch A i ersetzt, sowie die Äquivalenz A i β zu α hinzugefügt. Um die zu ersetzenden Teilformeln zu identifizieren ist es hilfreich, sich die Struktur von α zu verdeutlichen. Für diesen Zweck wird der in Abb. 3.3 dargestellte Kantorowitsch Baum konstruiert. C D A B Abbildung 3.3: Kantorowitsch Baum Jede Teilformel von α wird im Baum durch einen inneren Knoten repräsentiert. Diese Knoten werden durch neue Atome ersetzt. Bei den Blättern des Baumes ist dies nicht notwendig, da diese bereits Atome sind. Durch die Ersetzung aller inneren Knoten des in Abb. 3.3 dargestellten Baumes erhält man den Kantorowitsch Baum aus Abbildung 3.4. A 3 steht dort für die Teilformel AB, also formal A 3 (AB). A 0 A 1 A 2 A 3 Abbildung 3.4: Kantorowitsch Baum mit neuen Atomen Für die übrigen neuen Atome gelten folgende Äquivalenzen: A 2 (C D) A 1 ( A 3 ) A 0 (A 1 A 2 ) Verknüpft man diese einzelnen Äquivalenzen und die Wurzel des Kantorowitsch Baumes aus Abb. 3.4 konjunktiv, so erhält man eine Formel γ mit: 7

γ = A 0 (A 0 (A 1 A 2 )) (A 1 ( A 3 )) (A 2 (C D)) (A 3 (A B)) Schaut man sich γ genauer an, so stellt man fest, dass die einzelnen Klammern und somit die gesamte Formel leicht in KNF umwandelbar sind. Dazu wendet man die Standardtransformation auf die einzelnen Äquivalenzen an. Da alle Äquivalenzen maximal aus drei Atomen bestehen, hängt die Länge der transformierten Formel und somit die dazu benötigte Zeit nur von einem konstanten Faktor ab und ist somit ein Vielfaches der ursprünglichen Länge von α. Da γ nach dem Verfahren, wie es bei Tseitin in [3] beschrieben wird, hergestellt wurde, ist γ erfüllbarkeitsäquivalent zu α. Im weiteren Verlauf werden die Äquivalenzen genauer untersucht. Hierzu wird der Begriff der Phase benötigt. Definition 4 (Phase). Eine Äquivalenz α β kann zu α β und α β umgeformt werden. Dabei bezeichnet man α β als positive und α β als negative Phase. Für die Erfüllbarkeitsäquivalenz von γ und α sind nicht beide Phasen der einzelnen Äquivalenzen notwendig. Dies wird im nächsten Abschnitt gezeigt. Man nehme an, dass γ erfüllbar ist, also I : I(γ ) = 1. Hieraus ergeben sich Bedingungen für die Interpretationen der einzelnen Teilformeln von γ. Diese führen dann zum Wegfallen einzelner Phasen. Da γ eine Konjunktion einzelner Teilformeln ist, muss die Interpretation jeder Teilformel wahr sein, damit I(γ ) = 1 gelten kann. Es folgt zuerst I(A 0 ) = 1. Dann muss I(A 0 (A 1 A 2 )) = 1 erfüllt werden. Diese Forderung kann umgeformt werden zu folgender äquivalenten Forderung: I(A 0 (A 1 A 2 )) = 1 und I(A 0 (A 1 A 2 )) = 1. (3.1) Unter der Voraussetzung I(A 0 ) = 1 stellt man fest, dass die Teilforderung I(A 0 (A 1 A 2 )) = 1 unabhängig von der Interpretation von I(A 1 A 2 ) immer erfüllt wird. I(A 0 ) I(A 1 A 2 ) I(A 0 (A 1 A 2 )) 0 0 1 0 1 0 1 0 1 1 1 1 Abbildung 3.5: Wahrheitstabelle Dazu sieht man sich Wahrheitstabelle 3.5 an und stellt fest, dass für die zwei Fälle, in denen die Interpretation von A 0 wahr ist, auch I(A 0 (A 1 A 2 )) = 1 gilt. Der zweite Teil der Forderung verlangt, ebenfalls unter der Voraussetzung I(A 0 ) = 1, dass I(A 0 (A 1 A 2 )) = 1. gilt. 8

Aus Wahrheitstabelle 3.6 geht hervor, dass die zweite Teilforderung nur erfüllt wird, wenn I(A 1 A 2 ) = 1 ist. Damit I(γ ) = 1 gilt, muss die gesamte Forderung 3.1 erfüllt werden. Man kann zwei Aussagen folgern: 1. Die erste Teilforderung ist eine Tautologie, d.h. sie ist unter den gegebenen Voraussetzungen, unabhängig von der Wahl von I(A 1 A 2 ), immer wahr. Zur Vereinfachung kann sie also entfallen. Damit geht der Wegfall der negativen Phase der ersten Äquivalenz in γ einher. 2. Damit die Interpretation der positiven Phase wahr werden kann und dies muss wegen der Forderung I(γ ) = 1 erfüllt werden, muss I(A 1 A 2 ) = 1 gelten. I(A 0 ) I(A 1 A 2 ) I(A 0 (A 1 A 2 )) 0 0 1 0 1 1 1 0 0 1 1 1 Abbildung 3.6: Wahrheitstabelle Durch das Streichen der negativen Phase der Äquivalenz lässt sich γ zu γ = A 0 (A 0 (A 1 A 2 )) (A 1 ( A 3 )) (A 2 (C D)) (A 3 (A B)) vereinfachen. Aus der zweiten Aussage folgen zwei weitere Voraussetzungen: I(A 1 ) = 1 und I(A 2 ) = 1. Beginnend mit A 2 (C D) werden die verbliebenen Äquivalenzen untersucht. Es ergibt sich unter den gegebenen Voraussetzungen mit gleicher Begründung wie für die erste Äquivalenz, dass für die Erfüllbarkeit von γ die Erhaltung der positiven Phase ausreichend ist. Daraus folgt, dass I(A 2 (C D)) = 1 gelten muss. Dies ist nur dann möglich, wenn I(C D) = 1 gilt. Dafür spielt die Wahl der Interpretationen von C und D eine Rolle. An dieser Stelle ist dies jedoch nicht weiter relevant, da nur die Erfüllbarkeitsäquivalenz von γ und α sichergestellt und keine erfüllende Belegung der Atome gefunden werden soll. Zu diesem Zeitpunkt gilt für γ : γ = A 0 (A 0 (A 1 A 2 )) (A 1 ( A 3 )) (A 2 (C D)) (A 3 (A B)) Bislang blieben nur die positiven Phasen erhalten. Durch die Negation in A 1 ( A 3 ) ergibt sich die Erhaltung der negativen Phase von A 3 (AB). Warum dies so ist, wird im Folgenden beschrieben. 9

Aus I(A 1 ) = 1 und I(A 1 ( A 3 )) = 1 folgt, wieder mit der gleichen Begründung wie oben, dass nur die positive Phase erhalten bleibt. Des Weiteren ist I(A 1 ( A 3 )) = 1 nur für I( A 3 ) = 1, also I(A 3 ) = 0 erfüllt. Gefordert wird I(A 3 (A B)) = 1. I(A 3 ) I(A B) I(A 3 (A B)) 0 0 1 0 1 1 1 0 0 1 1 1 Abbildung 3.7: Wahrheitstabelle für die positive Phase I(A 3 ) I(A B) I(A 3 (A B)) 0 0 1 0 1 0 1 0 1 1 1 1 Abbildung 3.8: Wahrheitstabelle für die negative Phase Anhand der Wahrheitstabelle 3.7 erkennt man, dass unter der Voraussetzung I(A 3 ) = 0 die Interpretation der positive Phase immer wahr ist. Für die negative Phase hingegen folgt, dass sie nur dann wahr werden kann, wenn I(A B) = 0 gilt. Damit ist für die Erfüllbarkeit von γ nur die negative Phase entscheidend. Im Vergleich zu γ auf Seite 8 erhält man nach dem Entfernen der unbenötigten Phasen ein γ mit γ sat α und γ = A 0 (A 0 (A 1 A 2 )) (A 1 ( A 3 )) (A 2 (C D)) (A 3 (A B)). Die Erfüllbarkeitsäquivalenz ergibt sich zum einen aus der Annahme I(γ ) = 1 bei der Reduktion von γ zu γ und zum anderen daraus, dass γ nur dann erfüllt werden kann, wenn I(A 0 ) = 1 gilt, was gleichbedeutend mit I(α) = 1 ist, da A 0 Repräsentant von α ist. Transformiert man nun noch die Teilformeln mit der Standardtransformation in KNF, so erhält man als Endergebnis der strukturerhaltenden Transformation: γ = A 0 ( A 0 A 1 ) ( A 0 A 2 ) ( A 1 A 3 ) ( A 2 C D)) (A 3 A B). 10

3.3 Formalisierung der Grundidee Die Grundidee wird für die Prädikatenlogik formalisiert. Sei α die in KNF zu transformierende Formel. Dann ist L α eine Unit Klausel (eine Klausel mit nur einem Element) und α + bzw. α eine aus α konstruierte Menge von Konjunktionen. Dabei werden L α, α + und α so gewählt, dass gilt: α sat L α α + bzw. α sat L α α. Diese Erfüllbarkeitsäquivalenzen werden in Abschnitt 3.4 bewiesen. Definition 5 (Atom). Ein Atom ist eine Formel der Form P (t 1,..., t n ), wobei P ein Prädikat und die t i Terme sind. Definition 6 (Literal). Ein Literal ist eine Formel der Form A oder A, wobei A ein Atom ist. Man definiert L α als ein neues, nicht in α auftretendes Literal P α (x 1,..., x n ), wobei die x i die freien Variablen in α darstellen. Hat α die Form β, dann ist L α = L β. L α ist genau dann wahr, wenn α wahr ist. P α repräsentiert α, darum muss für verschiedene Teilformeln auch ein verschiedenes Prädikat gewählt werden. Wenn α selbst ein Literal ist (in der Grundidee sind dies alle Blätter im Kantorowitsch Baum), dann ist L α = α. Das Erhalten einzelner Phasen der Äquivalenzen aus der Grundidee wird durch die Polarität von α formalisiert. Das Prinzip der Polarität wird ausführlich in [4] beschrieben. In der Definition von α + werden freie Variablen als allquantifiziert aufgefasst. Es sei α + für die Prädikatenlogik wie folgt rekursiv definiert: Definition 7 (Polaritäten). (α β) + = (L αβ (L α L β )) α + β + (α β) = (L αβ (L α L β )) α β (α β) + = (L α β (L α L β )) α + β + (α β) = (L α β (L α L β )) α β (α β) + = (L α β (L α L β )) α + β + α β (α β) = (L α β (L α L β )) α β α + β + (α β) + = (L α β (L α L β )) α β + (α β) = (L α β (L α L β )) α + β ( α) + = α ( α) = α + α + = 1, falls α Literal α = 1, falls α Literal ( xa(x)) + = A(x) + (L xa(x) xl A(x) ) ( xa(x)) + = A(x) + (L xa(x) xl A(x) ) ( xa(x)) = A(x) ( xl A(x) L xa(x) ) ( xa(x)) = A(x) ( xl A(x) L xa(x) ) 11

Die Definitionen für die Aussagenlogik sind die gleichen wie oben, jedoch logischerweise ohne die Definitionen für die Quantoren. Damit der Aufwand für die Berechnung von α + nicht exponentiell wird, sollten wiederholte Berechnungen der gleichen Teilformeln vermieden werden. Da die Elemente von α + ausschließlich durch Konjunktionen miteinander verknüpft sind, ergibt sich nach der Anwendung der Standardtransformation auf sie insgesamt eine Formel in konjunktiver Normalform. Dieses Verfahren wird als strukturerhaltende Transformation in konjunktive Normalform, kurz SC(α), bezeichnet. Formal gilt für SC die folgende Definition: Definition 8 (SC). Sei Cl(β) die Standardtransformation angewendet auf β. Dann gilt 3.3.1 Beispiel SC(α) = β α + ( ) Cl(β) (L α ) Angewendet auf α = (A B) (C D) aus der Grundidee ergibt sich: und damit α + = (L α (L (AB) L C D )) (L AB (A B)) (L C D (C D)) SC(α) = ( L α L (AB) ) ( L α L C D ) ( A B L AB ) ( L C D C D) L α. Vergleicht man dieses Ergebnis mit dem Ergebnis der Grundidee auf Seite 10, so stellt man fest, dass es bis auf die unterschiedliche Bezeichnung der Literale und dem zusätzlichen Auftreten von A 3 bzw. A 1 identisch ist. Für die Negation, die in der Grundidee durch das Einführen von A 1 ( A 3 ) formalisiert wurde, wird kein zusätzliches neues Literal innerhalb der Definition 7 benötigt. Stattdessen wird per Definition einfach die Phase gewechselt. Im nächsten Abschnitt wird nun die Korrektheit der Transformation gezeigt. Mit anderen Worten: Es wird gezeigt, dass SC(α) sat α gilt. 3.4 Korrektheit An dieser Stelle wird gezeigt, dass die in Abschnitt 3.3 formalisierte Grundidee bei Anwendung auf eine aussagen- oder prädikatenlogische Formel α tatsächlich eine zu α erfüllbarkeitsäquivalente Formel γ liefert (SC(α) sat γ). Die Korrektheit wird für prädikatenlogische Formeln bewiesen. 12

Theorem 1. Für alle prädikatenlogischen Formeln α der ersten Stufe gilt: = (L α α + ) α und = ( L α α ) α Beweis. Der Beweis verläuft induktiv über die Formelstruktur von α. Hierzu müssen alle möglichen Strukturen berücksichtigt werden, d.h. der Beweis muss für alle Definitionen aus Definition 7 geführt werden. Da er für jede der Definitionen nach dem gleichen Schema abläuft, wird er an dieser Stelle nur für (α β) + = (L α β (L α L β )) α β + durchgeführt. Induktionsanfang: Sei α = A ein Literal. Da α ein Literal ist, gilt laut Definition 7: α + = α = 1 und L α = α. Somit folgt durch Einsetzen in das Theorem: = (α 1) α and = ( α 1) α Offensichtlich handelt es sich bei beiden Aussagen um Tautologien. Induktionsvoraussetzung: Das Theorem ist für zwei Formeln α und β gültig. Induktionsschritt: Laut Definition 7 gilt: (α β) + = (L α β (L α L β )) α β + Damit muss im Induktionsschritt gezeigt werden, dass folgende Formel eine Tautologie ist: (L α β (L α β (L α L β )) α β + ) (α β) Laut Induktionsvoraussetzung gilt: 1. = ( L α α ) α 2. = (L β β + ) β Es handelt sich um zwei Tautologien. Verknüpft man beide Tautologien konjunktiv miteinander entsteht eine neue tautologische Aussage: Durch logisch äquivalente Umformungen erhält man: = (( L α α ) α) ((L β β + ) β) (3.2) = (L α α α) ( L β β + β) (3.3) (L α β (L α β (L α L β )) α β + ) (α β) (L α β ( L α β L α L β ) α β + ) (α β) (L α β (( L α β α β + ) ( L α α β + ) (L β α β + ))) (α β) (L α β (( L α β α β + ) ( L α α β + ) (L β α β + ))) α β L α β ((L α β α β + ) (L α α β + ) ( L β α β + )) α β 13

Im letzten Schritt folgt durch Anwendung des Distributivgesetzes: (L α β L α β α β + α β) (L α α α L α β β + β) ( L β β + β L α β α α) Offensichtlich ist die erste Klammer wegen L α β L α β... eine Tautologie. Die zweite Klammer ist semantische Folgerung der ersten Induktionsvoraussetzung und die dritte Klammer semantische Folgerung der zweiten Induktionsvoraussetzung. Die zweite und dritte Klammer sind somit semantische Folgerungen von (3.3) und damit tautologisch. Durch Konjunktion der Tautologien entsteht insgesamt wieder eine Tautologie. Für = ( L α α ) α ist das Vorgehen analog. Führt man diesen Beweis analog für alle in Definition 7 definierten Strukturen durch, so erhält man insgesamt den Beweis für das Theorem. Definition 9 (Modell). Sei I eine Interpretation von α. Gilt I(α) = 1, so bezeichnet man I als Modell von α. Lemma 1. Angenommen I ist ein Modell von α. Sei J eine Interpretation, so dass für alle Teilformeln β von α gilt: J (L β β) = 1. Angenommen J interpretiert β als wahr genau dann, wenn I(β) = 1. Dann gilt für alle Teilformeln β von α: J (β + ) = 1 und J (β ) = 1 (3.4) Beweis. Auch dieser Beweis erfolgt induktiv über den Aufbau der Formel V und exemplarisch an einem Fall. Der Beweis der anderen Fälle verläuft analog. Induktionsanfang: Sei β ein Atom V. Dann sind V + und V per Definition 1 (wahr). Da J 0 widerspruchsvoll ist, gilt: J = V + und J = V, also J (V + ) = 1 und J (V ) = 1 Induktionsvoraussetzung: Für zwei Formeln δ, γ gilt: J (δ ) = 1 und J (γ + ) = 1 Induktionsschritt: Sei ρ = δ γ. Dann ist ρ + = (L δ γ (L δ L γ )) δ γ +. Wegen der Induktionsvoraussetzung gilt: J (δ ) = 1 und J (γ + ) = 1 (3.5) Da I(ρ) = 1 gilt, muss auch J ((δ γ) L δ γ ) = 1 gelten. Die für die Teilformeln stehenden Variablen L δ und L γ werden laut Definition unter J so bewertet, wie die Teilformeln δ,γ von ρ unter I : J (L δ ) = I(δ) bzw. I : J (L γ ) = I(γ). Damit gilt insgesamt J (ρ + ) = 1 sowie analog J (ρ ) = 1. Zeigt man dies für alle möglichen Formelstrukturen, ergibt sich die Allgemeingültigkeit des Lemmas. Mit dem gerade bewiesenen Lemma lässt sich folgendes Lemma leicht beweisen: Lemma 2. Sei α erfüllbar. Dann ist auch L α α + erfüllbar. Sei α erfüllbar. Dann ist auch L α α erfüllbar. Beweis. Wenn α erfüllbar ist, existiert ein Modell I : I(α) = 1. Sei J eine Interpretation wie in Lemma 1, dann gilt J (α + ) = 1. Ferner folgt aus dem Model und der Definition von J : J (L α ) = 1. Damit gibt es offensichtlich eine Interpretation J mit J (L α α + ) = 1, womit L α α + erfüllbar ist. Der zweite Teil des Lemmas folgt analog. 14

Sieht man sich Theorem 1 und Lemma 2 an, so erkennt man, dass zwei Behauptungen der Form A B und B A bewiesen wurden. Diese beiden Behauptungen lassen sich zur Äquivalenz A B zusammenfassen, es folgt Theorem 2. Theorem 2. Für eine beliebige prädikatenlogische Formel α der ersten Stufe gilt α sat L α α + sowie α sat L α α Beweis. Theorem 2 ist eine direkte Folgerung aus Theorem 1 und Lemma 2. Laut Definition von SC(α) auf Seite 12 gilt SC(α) = β α + ( ) Cl(β) (L α ) Die strukturerhaltende Transformation von α ist also allgemein definiert als α + L α, wobei alle Teilformeln von α + mit Hilfe der Standardtransformation in KNF transformiert werden. Aus Theorem 2 folgt also Korollar 1: Korollar 1. Eine prädikatenlogische Formel α ist erfüllbar genau dann, wenn SC(α) erfüllbar ist. Formal: α sat SC(α) (3.6) Beweis. Für jede Formel β ist das Ergebnis der Standardtransformation von β in KNF erfüllbarkeitsäquivalent zu β: Cl(β) sat β. Zusammen mit Theorem 2 und der Definition von SC(α) folgt somit das Korollar. Abschließend wird festgestellt, dass SC(α) die Grundidee korrekt formalisiert und eine erfüllbarkeitsäquivalente Formel zu α liefert. 3.5 Komplexität In diesem Abschnitt wird kurz auf die Komplexität der strukturerhaltenden Transformation eingegangen. Dabei sei die Länge einer Formel definiert als die Länge einer Zeichenkette, die man benötigt, um die Formel mit allen Zeichen hin zu schreiben. Theorem 3. Die Länge von α + und α liegt in O(n c(α)), wobei n die Anzahl an Variablen in α und c(α) die Anzahl von Verbindungen und Quantoren in α ist. Ausgehend von α wird für die Berechnung von α + und α Zeit O(n c(α)) benötigt. Beweis. In der Grundidee wurde die Formel α als Kantorowitsch Baum dargestellt. Für die Berechnung von α + wurden nun für die inneren Knoten neuen Prädikate eingefügt. Da n die Anzahl der Variablen in α ist, kann ein Prädikat maximal n Attribute besitzen. Also ist die Länge eines Prädikates proportional zu n. Außerdem kann das Prädikat in Zeit proportional zu n berechnet bzw. hingeschrieben werden. Insgesamt existieren im Kantorowitsch Baum genau c(α) viele innere Knoten. Die neuen Prädikate werden durch eine begrenzte Anzahl von Junktoren miteinander verknüpft. Daraus folgt insgesamt: α + = O(n c(α)). α + kann demnach auch in O(n c(α)) berechnet werden. Für α analog. 15

Man beachte, dass die Länge von α + nicht linear ist. Für c(α) = n gilt z.b. α + = O(n 2 )! Theorem 4. Die Länge von SC(α) liegt in O(n α ), wobei n die Anzahl an Variablen in α ist. Ausgehend von α wird für die Berechnung von SC(α) Zeit O(n α ) benötigt. Beweis. Wie in der Grundidee wird α + als Baum dargestellt. Einem internen Konten geht maximal ein Existenzquantor voraus, darum muss für die Umwandlung in KNF durch die Standardtransformation einer Teilformel β α + maximal eine Skolemisierung vorgenommen werden. Dabei erhöht sich die Länge um maximal n. Da laut Theorem 3 α + = O(n c(α)) gilt, folgt im O-Kalkül für diesen Teil der Transformation die Grenze O(n c(α)). Für ein Blatt in dem Baum kann wiederum nur ein Existenzquantor direkter Vorgängerknoten sein. Jedoch wird die Länge eines Blattes durch die Skolemisierungen mit einem Faktor von maximal n multipliziert. Da die Summe der Länge der Blätter durch α begrenzt ist, gilt für die Länge dieses Teils von SC(α): O(n α ). Da O(n c(α)) O(n α ) folgt SC(α) = O(n α ). Mit dem gleichen Vorgehen folgt auch die Zeitgrenze für die Berechnung. Letztendlich bleibt festzustellen, dass ein exponentielles Wachstum bei der strukturerhaltenden Transformation vermieden wird. Damit liefert dieses Verfahren in vielen Fällen deutlich schneller eine erfüllbarkeitsäquivalente Formel in konjunktiver Normalform, als es mit der Standardtransformation möglich wäre. 16

4 Schlussbemerkungen Das hier vorgestellte Verfahren der strukturerhaltenden Transformation in KNF lässt sich an vielen Stellen in der Informatik einsetzen. Dabei hilft es ein typisches Problem zu lösen - die Frage nach der Gültigkeit einer semantischen Folgerung. Der größte Vorteil des beschriebenen Verfahrens gegenüber der Standardtransformation liegt darin, dass in den meisten Fällen ein exponentielles Formelwachstum bei der Transformation vermieden wird. Damit können Anwendungen und Algorithmen, die mit erfüllbarkeitsäquivalenten Formeln in KNF arbeiten, in einigen Fällen viel Zeit und Platz sparen. 17

Literaturverzeichnis [1] Chang, C. und Lee, R. (1973). Symbolic Logic an Mechanical Theorem Proving [2] David A. Plaisted und Steven Greenbaum (1986). A Structure-preserving Clause Form Translation [3] G.S. Tseitin. On the Complexity of Derivation in Propositional Calculus [4] Murray, N. (1982). Completely non-clausal theorem proving. Artificial Intelligence 18, 67-85 [5] Uwe Schöning (2000). Logik für Informatiker, 5. Auflage 18