25.11.2014 Aufrufe

Verifikation reaktiver Systeme - Universität Kaiserslautern

Verifikation reaktiver Systeme - Universität Kaiserslautern

Verifikation reaktiver Systeme - Universität Kaiserslautern

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

192<br />

Bei heutigen <strong>Systeme</strong>n stößt diese Logik jedoch sehr schnell an ihre Grenzen.<br />

Sobald Parallelität ins Spiel kommt, oder bei reaktiven <strong>Systeme</strong>n eventuell<br />

Indeterminismus auftritt, ist eine <strong>Verifikation</strong> des entsprechenden Systems mit<br />

dem Hoare-Kalkül nur sehr schwer, bzw. überhaupt nicht mehr möglich.<br />

Natürlich hat man sich inzwischen auch diesen Problemen angenommen und<br />

es wurden neue Logiken entwickelt. Mit ihnen entanden auch neue <strong>Verifikation</strong>sverfahren,<br />

die dieses zu leisten vermögen.<br />

2 Logiken<br />

2.1 Modallogiken<br />

Eine Modallogik erweitert die Ausdrucksmöglichkeit der ”normalen“ Aussagenlogik<br />

um die Möglichkeit, notwendige Bedingungen von Möglichen zu unterscheiden.<br />

Folgende zwei Operatoren wurden zu diesem Zweck eingeführt:<br />

– ♦ϕ zum Ausdruck einer Möglichkeit (z.B. ”In Register 5 kann der Wert 23<br />

stehen.“)<br />

– □ϕ zum Ausdruck einer Notwendigkeit (z.B. ”In Register 5 muss der Wert<br />

23 stehen.“)<br />

Zur Auswertung muss das zu analysierende Programm als Zustandsgraph vorliegen.<br />

Die modalen Operatoren werden dann mit Zuständen und Transitionen<br />

verknüpft (z.B. 〈x〉ϕ: Es ist möglich, dass nach der Ausführung von x im Nachfolgezustand<br />

ϕ gilt). Zwei sehr bekannte modale Logiken sind HML (Hennessy–<br />

Milner Logic) und PDL (Propositional Dynamic Logic).<br />

2.2 Temporallogiken<br />

Temporallogiken haben eine sehr starke Ähnlichkeit zu Modallogiken. Der hauptsächliche<br />

Unterschied zwischen beiden besteht darin, dass Temporallogiken anstatt<br />

Bedingtes und Mögliches, zeitlich Mögliches (Lebendigkeitseigenschaften)<br />

und zeitlich Unausweichliches (Sicherheitseigenschaften / Invarianz) beschreiben.<br />

D.h. die modalen Operatoren bekommen eine zeitliche Interpretation.<br />

3 Grundlagen<br />

3.1 Kripke-Strukturen<br />

Eine Kripke-Struktur ist formal definiert als ein Tupel K =(I, S, R, L) mit<br />

– S ist eine endliche Menge von Zuständen<br />

– I⊆Sist die Menge der Initialzustände<br />

– R⊆S×S Transitionsrelation

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!