Tseitin-Transformation

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche

Die Tseitin-Transformation (oder auch das Tseitin-Verfahren) bezeichnet eine Methode, mit der Formeln aus der Aussagenlogik auf eine konjunktive Normalform (KNF) gebracht werden können. Die resultierende konjunktive Normalform ist dabei nicht etwa äquivalent, sondern nur erfüllbarkeitsäquivalent.

Motivation[Bearbeiten | Quelltext bearbeiten]

Üblicherweise werden Äquivalenzumformungen wie etwa die De Morgan’schen Gesetze, das Distributivgesetz und andere verwendet, um beliebige aussagenlogische Formeln in eine konjunktive Normalform zu bringen.

Durch die Anwendung des Distributivgesetzes kann es im Allgemeinen zu einem exponentiellen Anstieg der Anzahl der Konjunktionen kommen. Um diesen Anstieg zu begrenzen, wird die Formel in eine erfüllbarkeitsäquivalente Form gebracht.

Für ein Beispiel mit 2 Klauseln mit je 4 Variablen, auf die das Distributivgesetz angewandt wird, sieht man den sich dabei ergebenden, exponentiellen Anstieg der Konjunktionen:

Idee[Bearbeiten | Quelltext bearbeiten]

Durch die Verwendung einer erfüllbarkeitsäquivalenten Umformung ist es möglich, während der Transformation Variablen einzuführen.

Die grundlegende Idee ist dabei, für jede Subformel eine Variable einzuführen. Mithilfe der aussagenlogischen Äquivalenz werden dann diese Subformeln mit den neuen Variablen verbunden und alle resultierenden Bedingungen miteinander konjugiert. Danach wird jede dieser Bedingungen separat in KNF gebracht.

Beispiel[Bearbeiten | Quelltext bearbeiten]

Das Beispiel soll hier an der Formel gezeigt werden.

Zunächst werden alle Teilformeln der Länge nach aufgelistet:

Nun werden 4 Variablen eingeführt und durch das Bikonditional mit den Subformeln verknüpft. Bei dieser Gelegenheit werden Teilformeln bereits durch entsprechende Variablen substituiert:

Nun werden alle diese Substitutionen konjugiert. Wichtig dabei ist, dass die Variable, die für die ursprüngliche Formel stand, als eigenes Konjunkt hinzugefügt wird.

Die entsprechende neue Formel sieht wie folgt aus:

Nun müssen nur noch alle Konjunkte separat in KNF umgewandelt werden, welche mit den üblichen äquivalenten Umformungen durchgeführt werden. Exemplarisch wird dies an einem Konjunkt gezeigt:

Man beachte, dass im letzten Schritt wieder das Distributivgesetz angewandt wurde, aber in diesem Schritt gibt es nur noch einen konstanten Zuwachs von Konjunktionen.

Am Ende wird diese Transformation auf allen Konjunkten angewandt und die resultierende KNF ist erfüllbarkeitsäquivalent zur Ausgangsformel und hat im Allgemeinen weniger Klauseln. Es kann vorkommen, dass dies für kleinere Formeln nicht gilt.

Da die Variable, die für die ursprüngliche Formel steht, (hier: ) Teil der konstruierten Formel ist gilt trivialerweise . Somit ist jede erfüllende Belegung von insbesondere eine erfüllende Belegung von . Dies ist von Vorteil, da weniger Klauseln hat und sich deshalb einfacher eine erfüllende Belegung finden lässt als auf der ursprünglichen Formel.

Erweiterung nach Plaisted und Greenbaum[Bearbeiten | Quelltext bearbeiten]

Diese Erweiterung zum klassischen Tseitin-Verfahren benutzt das Konzept der Polarität (N. V. Murray, 1982) als wesentlichen Bestandteil.

Polarität[Bearbeiten | Quelltext bearbeiten]

Polarität bezeichnet die Parität der Anzahl der Negationen im Syntaxbaum einer aussagenlogischen Formel vom Wurzelknoten bis zum gewünschten Knoten. Demnach hat ein Knoten, welcher eine ungerade Anzahl an Negationen vom Wurzelsymbol zu ihm besitzt, eine negative Polarität (entsprechend für gerade Anzahl an Negationen und positive Polarität).

Bei der Erweiterung nach Plaisted und Greenbaum gibt es zwei wesentliche Unterschiede zur normalen Tseitin-Transformation:

  1. Die Polarität einer Teilformel hat keine Auswirkung auf die Einführung neuer Variablen.
  2. Anstatt der Biimplikation, wird bei jeder neuen Variable eine Implikation eingeführt.

Die Richtung der eingeführten Implikation hängt von der Polarität ab:

Bei einer Teilformel mit positiver Polarität wird die neue Variable wie folgt eingeführt:

Dieselbe Teilformel wird bei negativer Polarität so ersetzt:

Im Allgemeinen bewirken diese beiden Änderungen, dass die resultierende KNF kleiner als bei der Tseitin-Transformation ist, so lange nicht alle Teilformeln in beiden Polaritäten vorkommen.

Zukünftige Forschungsarbeit beschäftigt sich mit Heuristiken für die geeignete Einführung von neuen Variablen, sodass nicht alle Subformeln zu einer Erhöhung der Variablenanzahl führen.

Quellen[Bearbeiten | Quelltext bearbeiten]

  • G. S. Tseitin: On the complexity of derivation in propositional calculus. Leningrad Seminar on Mathematical Logic, 1970.
  • D. A. Plaisted, S. Greenbaum: A Structure-Preserving Clause Form Translation. Journal of Symbolic Computation, 1986, doi:10.1016/S0747-7171(86)80028-1