C2: Modellierung und Normalformen

  • Heute wollen wir schauen was wann wie erfüllbar ist
  • Die motivation dazu ist dieselbe wie das was wir schon bei aussagenlogik etc. gemacht haben
  • das ist alles das gleiche, bis auf, dass das hier jetzt nen bissl komplizierter ist

Modellierung: Formeln erstellen und verstehen

  • wir erinnern uns an das "tolle" schloss dreadsbury
  • Da (und auch nur da) konnte man mit logischen formeln einen Mord aufklären
    • Das haben wir gemacht, indem wir die zwischenmenschlichen beziehungen mit prädikatenlogik formalisiert haben (was irgendwie nen sehr komisches verfahren ist)
    • Wir konnten mit so ausdrücken wie definieren, dass niemand der im Schloss selber wohnt ermordet würde
  • Diese formeln haben wir mithilfe von "aussagen" definiert die wir uns wie funktionen vorstellen können
    • dementsprechend gilt sowas wie in unserem fall dafür, dass im Schloss wohnt
  • So können wir auch komplexere sachverhalte "dynamisch" modellieren, indem wir aus diesen "simplen" Formeln komplexere zusammensetzen
  • wir versuchen natürlich die sachen so zu modellieren, dass sie immernoch der "natürlichen sprache" ähneln, denn am besten modelliert man "nach der umgangssprache"
  • Was dann noch für uns interessant ist, sind die "beschränkten quantoren"
  • Diese sind in der mathematik sehr beliebt, da man mit diesen einfach einen Wertbereich einschränken kann
    • solche dinge sind bei uns aber leider nicht erlaubt
  • Wir können aber statt sowas wie anstelle von schreiben
  • Ebenso kann man durch ersetzen
  • Damit simulieren wir eben diese "Beschränkten quantoren"

Äquivalenzen

  • zuerst wollen wir uns aber dann mal anschauen wie wir bestimmen können, dass zwei aussagen äquivalent sind
  • Denn beide sind Äquivalent, wenn es eine passende Interprätation gibt für die gilt, dass
    • Das schreiben wir "einfacher" so:
  • 10
  • 11

Nachweise von Äquivalenzen

  • Wir können äquivalenzen immer nachweisen indem wir
    • die Definition überprüfen
    • das ersetzungslemma
  • Wasn das Ersetzungslemma?
  • Sei eine prädikaten-logische Formel mit einer Teilformel
  • Sei eine weitere Formel mit
  • Wenn aus entsteht, indem ein Vorkommen von durch ersetzt wird,
    dann gilt
  • Hier gibts nen beispiel.

Nachweise von Nicht-Äquivalenz

  • Wenn wir die Äquivalenz definieren können, müssen wir ja auch definieren können, dass man andere sachen nicht definieren kann
  • Das machen wir (wie so oft) "einfach" mit nem gegenbeispiel
  • 13

Normalformen

Erfüllbarkeitstest

  • So wir wollen am ende ja auch testen, ob das was wir da gebastelt haben auch wirklich erfüllbar ist
  • Erstmal wollen wir ein paar begriffe definieren:
    • Eine Interpretation von einem Modell heisst Modell von , wenn gilt.
    • Wenn ein Model hat, ist erfüllbar, sonst nicht
    • Wenn jede passende Interpretation von ein Modell von ist, ist allgemeingültig
      • Eine andere Bezeichnung für das ist die Tautologie
    • ist ein Nodell einer Menge prädikatenlogischer Formeln , falls für alle gilt.
  • Die Begriffe "erfüllbar" und "allgemeingültig" haben für Mengen von Formeln die gleiche bedeutung
  • Beispiele:
    • ist allgemeingültig
    • ist unerfüllbar
  • Anmerkungen:
    • Der Zusammenhang zwischen unerfüllbaren und allgemeingültigen Formeln ist genauso wie in der Aussagenlogik:
      unerfüllbar allgemeingültig
    • Ist einge geschlossene Formel mit Modell , so nennen wir auch ein Modell von und schreiben
  • Fun-Fact: Der Unterschied zwischen und ist, dass das erste als "die variable" Phi definiert wird und das andere dann als "das normale" Phi

Skolemform

  • Wir wollen unsere bisherigen Formeln ein wenig vereinfachen, da diese ja teilweise schon sehr schnell sehr komplex werden können
    • Damit wollen wir dann die Erfüllbarkeit einfacher überprüfen können
    • Wir bemerken: Wenn wir die Erfüllbarkeit einer Formel testen wollen, können wir auch "einfach" eine "simplere" Formel aufstellen die sich was Erfüllbarkeit angeht gleich verhält, überprüfen
      • So können wir Quantoren "sparen"
    • Jetzt stellen wir uns aber die frage "Wann verhält sich denn eine Formel vor der Erfüllbarkeit gleich wie eine andere"?
      • Erstmal die komischen begriffe:
      • Wir nennen das Erfüllbarkeitsäquivalent
    • Zwei formeln sind Erfüllbarkeitsäquivalent, wenn:
      • und beide entweder erfüllbar oder beide nicht erfüllbar sind.
  • Zurück zur Überschrift
  • Eine prädikatenlogische Formel ist dann in Skolemform wenn sie
    • in Pränexform ist
    • im Quantoren-Präfix nur Allquantoren vorkommen
    • im Quantoren-Präfix keine Variable mehrfach vorkommt
  • Allgemein gesagt sieht eine Formel in Skolemform also so aus: , wobei quantorenfreii ist
  • Ein Beispiel
  • Wenn wir die Skolemregel anwenden, können wir u.U. Existenzquantoren die "erfüllbarkeitsäquivalent" sind aus unserer Formel entfernen

Die Skolem-Regel

  • Ist und kommt das Funktionssymbol in nicht vor, so ist die Formel erfüllbarkeitsäquivalent zu
  • Bemerkungen dazu:
    • darf weitere Quantoren enthalten
    • steht der -Quantor am Anfang , so wird durch eine Konstante ersetzt.
      • Wir erinnern uns: Konstanten sind eigentlich -Stellige funktionen.
  • ToDo: 26