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.

2<br />

Der Aufbau der Arbeit ist in fünf Gesichtspunkte untergliedert. Die ersten Kapitel<br />

beschreiben die Kernideen des bounded model checking. In diesen Kapiteln<br />

werden auch die notwendigen semantische Änderungen am Beispiel der Temporallogik<br />

LTL erläutert. Diese Erklärungen sind jedoch für das wesentliche<br />

Verständnis von bounded model checking nicht notwendig. Die Ergänzungen<br />

hierzu lassen sich in der Überschrift des Kapitels als LTL spezifische erkennen.<br />

Ein ausführliches Beispiel zur Eigenschaftsprüfung mit LTL befindet sich im Anhang<br />

A. Neben der Vorstellung der Technik wird auch die industrielle Umsetzung<br />

in Kapitel 4 vorgestellt. Die Syntax der in diesem Kapitel verwendete Temporallogik<br />

ITL wird im Anhang B erläutert. Mit der Bewertung von bounded model<br />

checking endet die Ausarbeitung.<br />

2 Grundlagen<br />

2.1 Symbolische Modellprüfung<br />

Zur formalen <strong>Verifikation</strong> benötigt man ein mathematisches Modell des Systems,<br />

sowie eine Sprache zur Spezifizierung der gewünschten Eigenschaft. Darauf aufbauend<br />

eine Beweismethode um sicherzustellen, dass die gewünschte Eigenschaft<br />

spezifiziert wird [7]. Die dabei wirtschaftlich interessantesten sind die maschinell<br />

ausführbaren Algorithmen, die automatische <strong>Verifikation</strong> erlauben.<br />

Die eigentliche Modellprüfung (model checking) wird realisiert durch Algorithmen,<br />

die den Zustandsraum des Transitionssystems dahingehen untersuchen, ob<br />

Spezifikationen und Verhalten übereinstimmen [3].<br />

Die ersten Schritte der Symbolischen Modellprüfung wurden 1990 von Burch,<br />

Clarke, McMillan und Dill unternommen und unterlagen seit dem einer ständig<br />

fortschreitenden Entwicklung.<br />

Die bis dato übliche Methode der formalen <strong>Verifikation</strong> beruhte auf den Erkenntnissen<br />

der Automatentheorie. Systemmodell und Spezifikation wurden mit Hilfe<br />

einer passenden Logik beschrieben. Mit Hilfe dieser Beschreibung wurde aufbauend<br />

ein logischer Beweis geführt, der die Spezifikation bestätigte. Trotz seiner<br />

Mächtigkeit und Flexibilität bleibt das Verständnis und die Anwendbarkeit nur<br />

wenigen Anwendern vorbehalten, auf Grund der verwendeten mathematischen<br />

Formalismen.<br />

Das Systemmodell wird in den folgenden Betrachtungen als endlicher Automat<br />

verstanden. Die notwendige Spezifikation wird in aussagenlogischer Form mittels<br />

Temporallogik beschrieben. Ihr Vorteil ist die leichte Verständlichkeit und<br />

Kompaktheit. Zudem können die wichtigen Eigenschaften wie Sicherheit, Lebendigkeit,<br />

Fairness, ... damit ausgedrückt werden.<br />

Um das Problem der Zustandsexplosion bei großen <strong>Systeme</strong>n in den Griff zu bekommen<br />

entstand die symbolische Modellprüfung. Die Ersetzung der expliziten<br />

Zustandsrepräsentation durch Zustände mit booleschen Kodierungen erlauben<br />

der symbolischen Modellprüfung größere Designs zu bewältigen, als mittels statischer<br />

Modellprüfung. Meist liegt dabei die zugrundeliegende Implementation<br />

auf Basis von binären Entscheidungsdiagrammen (BDD). Diese erlaubten es erst<br />

die Breitensuche auf den Datenstrukturen effizient zu gestalten.

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!