Generierung lokaler Optimierungen - IPD Snelting
Generierung lokaler Optimierungen - IPD Snelting
Generierung lokaler Optimierungen - IPD Snelting
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
2 Grundlagen<br />
2.4 Das Erfüllbarkeitsproblem der Aussagenlogik<br />
Bei dem Erfüllbarkeitsproblem der Aussagenlogik [7], auch SAT genannt 1 , handelt es sich<br />
um die Fragestellung, ob zu einer aussagenlogischen Formel F , bestehend aus booleschen<br />
Variablen B = {b0, . . . , bn} und logischen Operationen und (∧), oder (∨) und nicht (¬),<br />
eine Belegung β : B → {wahr, falsch} existiert, so dass F unter β zu wahr ausgewertet<br />
wird.<br />
Beispiel 1 (Erfüllbares SAT Problem). Sei F die nachfolgend beschriebene aussagenlogische<br />
Formel mit den booleschen Variablen b0, b1:<br />
F = b0 ∧ (b0 ∨ ¬b1)<br />
Mit β : b0 ↦→ wahr, b1 ↦→ wahr existiert eine Belegung, so dass F zu wahr ausgewertet<br />
werden kann. F ist somit erfüllbar.<br />
Beispiel 2 (Nicht-erfüllbares SAT Problem). Sei G die nachfolgend beschriebene aussagenlogische<br />
Formel mit den booleschen Variablen b0, b1:<br />
G = b0 ∧ (¬b0 ∨ b1) ∧ (¬b0 ∨ ¬b1)<br />
Für G existiert keine gültige Belegung β und somit ist G auch nicht erfüllbar.<br />
SAT gehört zur Klasse der NP-vollständigen Probleme [7, 12]. Fortschritte in der Algorithmentechnik,<br />
der Einsatz von Heuristiken, effiziente Nutzung moderner Microprozessoren<br />
etc., haben in den letzten Jahren dazu beigetragen, dass heute Verfahren existieren<br />
mit denen das SAT-Problem trotz NP-Vollständigkeit gut handhabbar geworden sind.<br />
Moderne SAT-Solver sind in der Lage auch komplexere Instanzen eines SAT-Problems<br />
mit Hunderttausenden von Variablen zu lösen [9].<br />
2.5 Satisfiability Modulo Theories<br />
Bei dem Satisfiability Modulo Theories (SMT) Problem [5, 9] handelt es sich, wie bei SAT<br />
auch um ein Erfüllbarkeitsproblem für Formeln der Aussagenlogik (vgl. Abschnitt 2.4).<br />
Während bei SAT nur boolesche Variablen als Prädikate innerhalb einer Formel zulässig<br />
sind, können bei SMT auch Formeln mit komplexeren Prädikaten aus den unterschiedlichsten<br />
Theorien verwendet werden. Beispiele für diverse Theorien sind die Integer-<br />
Arithmetik, die Bitvektor-Arithmetik, Array-Theorie und die Theorie über Datenstrukturen.<br />
Ein Beispiel einer solchen aussagenlogischen Formel mit zusätzlichen Theorien zeigt die<br />
nachfolgende Formel F :<br />
1 SAT, vom englischen satisfiability<br />
16<br />
F = (x + 5) > 6 ∧ (x + 5) < 9 ∧ ¬(x = 2), x ∈ N0<br />
(2.1)