Verifikation reaktiver Systeme - Universität Kaiserslautern
Verifikation reaktiver Systeme - Universität Kaiserslautern
Verifikation reaktiver Systeme - Universität Kaiserslautern
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
117<br />
5.3 Lernschemata<br />
Die Art des Schnitts bedingt die Konfliktklausel. Es existieren verschiedene<br />
Schnittvarianten, die sich in Komplexität und Effizienz (z. B. Klauselgröße) unterscheiden.<br />
In [16] findet sich eine Übersicht über verschiedene Schemata.<br />
Entscheidungsschema Eine intuitive Schnittvariante folgt dem Entscheidungsschema.<br />
Dabei werden alle Entscheidungsvariablen auf die Ursachenseite verschoben,<br />
alle Implikationsvariablen auf die Konfliktseite. Diese Trennung erfolgt<br />
unabhängig von der Entscheidungsebene der Knoten. Betrachtet werden<br />
nur Variablen, deren Knoten einen Pfad zum Konflikt besitzen.<br />
Ein Beispiel ist in Abbildung 10 gezeigt.<br />
Minimaler Schnitt Einen Schnitt zu finden, der möglichst wenig Knoten bzw.<br />
Kanten im Implikationsgraphen betrifft, ist Ziel eines minimalen Schnitts<br />
(min-cut, nicht dargestellt). Aus dem Implikationsgraphen sollen dabei möglichst<br />
wenige Entscheidungs- und Implikationsvariablen entfernt werden, sodass<br />
zwei Partitionen entstehen. Dabei soll eine Seite sämtliche Konfliktvariablen<br />
besitzen, dafür aber keine Entscheidungsvariablen.<br />
Der minimale Schnitt kann mit bekannten graphentheoretischen Algorithmen<br />
bestimmt werden. Von allen hier aufgeführten Schnitten besitzt er die<br />
größte Komplexität mit O(n 2 log n).<br />
Schemata mit UIPs Beim Entscheidungsschema werden Entscheidungsvariablen<br />
als Grenzknoten zwischen den Partitionen verwendet. Dieses Schema kann<br />
man erweitern, wenn UIPs statt nur Entscheidungsvariablen betrachtet werden.<br />
1-UIP Das 1-UIP-Schema (1 UIP) versucht kleine, relevante Klauseln zu finden.<br />
Knoten der aktuellen Entscheidungsebene, die einen Pfad zu einem<br />
Konfliktknoten besitzen und zwischen erstem UIP und Konflikt liegen, stehen<br />
auf der Konfliktseite. Das erste UIP steht mit allen anderen Knoten auf<br />
der Ursachenseite. Die Konfliktklausel enthält daher als einziges Element nur<br />
die Variable des UIP.<br />
Für Abbildung 10 würde der Schnitt so verlaufen, dass die Knoten x 1 , x 3 ,<br />
¬x 5 , x 18 und ¬x 18 auf der Konfliktseite liegen (Schnitt B in Abbildung 11).<br />
Es wird die Klausel ω κ2 = x 10 gelernt.<br />
Alle-UIP Im Alle-UIP-Schema (All UIP) werden auf allen Entscheidungsebenen<br />
die ersten UIPs betrachtet, wobei mit der aktuellen Entscheidungsebene<br />
begonnen wird und dann schrittweise die Ebenen bis zur ersten betrachtet<br />
werden. Der Konfliktseite werden dann alle Knoten des Implikationsgraphen<br />
zugeordnet, die auf ihrer Entscheidungsebene nach dem ersten UIP belegt<br />
wurden und einen Pfad zum Konflikt besitzen. Alle anderen Variablen gehören<br />
zur Ursachenseite. Die resultierende Konfliktklausel enthält aus jeder<br />
betrachteten Entscheidungsebene nur eine Variable.<br />
n-UIP Das Alle-UIP-Schema ist eine Verallgemeinerung des 1-UIP-Schema auf<br />
alle Ebenen. Es sind aber auch Zwischenschritte vorstellbar, bei denen nur<br />
eine bestimme Anzahl von Entscheidungsebenen zurückgegangen wird. Wird<br />
neben der aktuellen Ebene die vorherige mit einbezogen, wird von dem 2-<br />
UIP-Schema gesprochen.