Wie in Kapitel 2.2 beschrieben, gehen wir in vier Schritten vor.
Schritt 1: Alle Operatoren auf ,
und
zurückführen:
F | = | ((t ↑ ¬¬C) ∨ (A ⊅ B)) ⊃ ¬(¬¬B ↓ ¬A) |
= | ¬((t ↑ ¬¬C) ∨ (A ⊅ B)) ∨ ¬(¬¬B ↓ ¬A) | |
= | ¬((t ↑ ¬¬C) ∨ (A ⊅ B)) ∨ ¬(¬¬B ↓ ¬A) | |
= | ¬((¬t ∨ ¬¬¬C) ∨ (A ⊅ B)) ∨ ¬(¬¬B ↓ ¬A) | |
= | ¬((¬t ∨ ¬¬¬C) ∨ (A ∧¬ B)) ∨ ¬(¬¬B ↓ ¬A) | |
= | ¬((¬t ∨ ¬¬¬C) ∨ (A ∧¬ B)) ∨ ¬(¬¬¬B ∧ ¬¬A) |
Schritt 2: Negationen nach innen ziehen:
= | (¬(¬t ∨ ¬¬¬C) ∧ ¬(A ∧¬ B)) ∨ ¬(¬¬¬B ∧ ¬¬A) | |
= | ((¬¬t ∧ ¬¬¬¬C) ∧ ¬(A ∧¬ B)) ∨ ¬(¬¬¬B ∧ ¬¬A) | |
= | ((t ∧ ¬¬¬¬C) ∧ ¬(A ∧¬ B)) ∨ ¬(¬¬¬B ∧ ¬¬A) | |
= | ((t ∧ ¬¬C) ∧ ¬(A ∧¬ B)) ∨ ¬(¬¬¬B ∧ ¬¬A) | |
= | ((t ∧ C) ∧ ¬(A ∧¬ B)) ∨ ¬(¬¬¬B ∧ ¬¬A) | |
= | ((t ∧ C) ∧ (¬A ∨¬¬ B)) ∨ ¬(¬¬¬B ∧ ¬¬A) | |
= | ((t ∧ C) ∧ (¬A ∨ B)) ∨ ¬(¬¬¬B ∧ ¬¬A) | |
= | ((t ∧ C) ∧ (¬A ∨ B)) ∨ (¬¬¬¬B ∨ ¬¬¬A) | |
= | ((t ∧ C) ∧ (¬A ∨ B)) ∨ (¬¬B ∨ ¬¬¬A) | |
= | ((t ∧ C) ∧ (¬A ∨ B)) ∨ (B ∨ ¬¬¬A) | |
= | ((t ∧ C) ∧ (¬A ∨ B)) ∨ (B ∨ ¬A) |
Schritt 3: Konstanten eliminieren:
= | (C ∧ (¬A ∨ B)) ∨ (B ∨ ¬A) |
Schritt 4 (DNF): Ausdistributieren
= | ((C ∧ ¬A) ∨ (C ∧ B)) ∨ (B ∨ ¬A) |
Dies ist nun eine Formel in disjunktiver Normalform. Unter Zuhilfenahme einiger aussagenlogischer Rechenregeln lässt sich diese Formel in die äquivalente Form
umformen.
Schritt 4 (KNF): Ausdistributieren
= | (C ∨ (B ∨¬A)) ∧ ((¬A ∨ B) ∨ (B ∨¬A)) |
Dies ist nun eine Formel in konjunktiver Normalform. Durch eine sture Konvertierung in (Multi-)Mengennotation erhalten wir
Nach Duplikatelimination erhalten wir ,,echte” Mengen:
Tautologien (Klauseln, die sowohl eine Variable als auch ihre Negation enhalten) gibt es nicht, dadurch ändert sich durch einen entsprechenden Vereinfachungsschritt nichts. Jedoch ist
eine Untermenge von
, was bedeutet, dass
von
subsumiert wird. Übrig bleibt die Menge
Sortieren (siehe Kapitel 3.3) ändert auch nichts. Nun haben wir eine möglichst einfache Klauselform, die wir wieder als Formel anschreiben wollen. Wir erhalten schließlich die Formel:
Paul Staroch