WIRTSCHAFTSINFORMATIK Westfälische Wilhelms-Universität Münster WIRTSCHAFTS INFORMATIK Das...

44
WIRTSCHAFTSINFORMATIK Westfälische Wilhelms- Universität Münster WIRTSCHAFTS INFORMATIK Das Symbolic Model Das Symbolic Model Verifier (SMV) System Verifier (SMV) System Präsentation im Rahmen des Seminars „Ausgewählte Kapitel des Software Engineerings insb. Formale Spezifikation“ am 05.01.2006 Christian Ottenhof

Transcript of WIRTSCHAFTSINFORMATIK Westfälische Wilhelms-Universität Münster WIRTSCHAFTS INFORMATIK Das...

Page 1: WIRTSCHAFTSINFORMATIK Westfälische Wilhelms-Universität Münster WIRTSCHAFTS INFORMATIK Das Symbolic Model Verifier (SMV) System Präsentation im Rahmen.

WIR

TS

CH

AF

TS

INF

OR

MA

TIK

WestfälischeWilhelms-Universität Münster

WIRTSCHAFTSINFORMATIK

Das Symbolic Model Verifier Das Symbolic Model Verifier (SMV) System (SMV) System

Präsentation im Rahmen des Seminars

„Ausgewählte Kapitel des Software Engineerings insb. Formale Spezifikation“

am 05.01.2006

Christian Ottenhof

Page 2: WIRTSCHAFTSINFORMATIK Westfälische Wilhelms-Universität Münster WIRTSCHAFTS INFORMATIK Das Symbolic Model Verifier (SMV) System Präsentation im Rahmen.

2

WIRTSCHAFTSINFORMATIK

GliederungGliederung

1. Einleitung

2. Grundlagen des SMC

3. Das SMV System

4. Verifikation des Gigamax Protokolls

5. Zusammenfassung

Page 3: WIRTSCHAFTSINFORMATIK Westfälische Wilhelms-Universität Münster WIRTSCHAFTS INFORMATIK Das Symbolic Model Verifier (SMV) System Präsentation im Rahmen.

3

WIRTSCHAFTSINFORMATIK

GliederungGliederung

1. Einleitung

2. Grundlagen des SMC

3. Das SMV System

4. Verifikation des Gigamax Protokolls

5. Zusammenfassung

Page 4: WIRTSCHAFTSINFORMATIK Westfälische Wilhelms-Universität Münster WIRTSCHAFTS INFORMATIK Das Symbolic Model Verifier (SMV) System Präsentation im Rahmen.

4

WIRTSCHAFTSINFORMATIK

EinleitungEinleitung

Spezifikation: Anforderungen an ein formales Modell

Verifikation: Formal exakte Methode, um um die Konsistenz zwischen

Modell und Spezifikation für alle Eingabedaten zu beweisen

Spezifikation Modell

Spez. falsch Spez. korrekt

Verifikation

Page 5: WIRTSCHAFTSINFORMATIK Westfälische Wilhelms-Universität Münster WIRTSCHAFTS INFORMATIK Das Symbolic Model Verifier (SMV) System Präsentation im Rahmen.

5

WIRTSCHAFTSINFORMATIK

EinleitungEinleitung

Modell kann verifiziert werden durch:

• Simulation

• Testen

• Formale Beweise (z.B. Induktion)

• Symbolisches Model Checking (SMC)

Page 6: WIRTSCHAFTSINFORMATIK Westfälische Wilhelms-Universität Münster WIRTSCHAFTS INFORMATIK Das Symbolic Model Verifier (SMV) System Präsentation im Rahmen.

6

WIRTSCHAFTSINFORMATIK

GliederungGliederung

1. Einleitung

2. Grundlagen des SMC

3. Das SMV System

4. Verifikation des Gigamax Protokolls

5. Zusammenfassung

Page 7: WIRTSCHAFTSINFORMATIK Westfälische Wilhelms-Universität Münster WIRTSCHAFTS INFORMATIK Das Symbolic Model Verifier (SMV) System Präsentation im Rahmen.

7

WIRTSCHAFTSINFORMATIK

Grundlagen des SMCGrundlagen des SMC

1. Kripke Struktur

Repräsentiert das formale Modell

2. Temporale CTL Logik

Notwendig um die Spezifikation zu formulieren

3. OBDD´s

Für die effiziente Verarbeitung von Booleschen Funktionen

Page 8: WIRTSCHAFTSINFORMATIK Westfälische Wilhelms-Universität Münster WIRTSCHAFTS INFORMATIK Das Symbolic Model Verifier (SMV) System Präsentation im Rahmen.

8

WIRTSCHAFTSINFORMATIK

Grundlagen des SMCGrundlagen des SMCKripke StrukturKripke Struktur

Bestehend aus dem Tupel M = ( S, R, L )

S : Menge der Systemzustände

R : Übergangsrelation

L : Labelfunktion weist die Zustandsprädikate ai zu

S0

S1

S2

S3

{ a1,a2 }

{ a2 }

{ a2 }

Page 9: WIRTSCHAFTSINFORMATIK Westfälische Wilhelms-Universität Münster WIRTSCHAFTS INFORMATIK Das Symbolic Model Verifier (SMV) System Präsentation im Rahmen.

9

WIRTSCHAFTSINFORMATIK

Grundlagen des SMCGrundlagen des SMCKripke StrukturKripke Struktur

Die Kripke Struktur kann auch als Baum dargestellt werden:

S0

S1

S2 S1

S2

S3 S3

S2

S3

S1

Eine Spezifikation ist somit eine Anforderung an den Baum der Kripke Struktur

Page 10: WIRTSCHAFTSINFORMATIK Westfälische Wilhelms-Universität Münster WIRTSCHAFTS INFORMATIK Das Symbolic Model Verifier (SMV) System Präsentation im Rahmen.

10

WIRTSCHAFTSINFORMATIK

Grundlagen des SMCGrundlagen des SMCCTL LogikCTL Logik

Spezifikation des Modells wird in CTL formuliert:

AG(x) Die Formel x gilt auf allen Pfaden in allen Folgezuständen

AF(x) Die Formel x gilt auf allen Pfaden irgendwann

EG(x) Die Formel x gilt auf mind. einem Pfad in allen Folgezuständen

EF(x) Die Formel x gilt auf mind. einem Pfad irgendwann

x x x

x x x

x

x x x

x

x x

AG(x) AF(x) EG(x) EF(x)

Page 11: WIRTSCHAFTSINFORMATIK Westfälische Wilhelms-Universität Münster WIRTSCHAFTS INFORMATIK Das Symbolic Model Verifier (SMV) System Präsentation im Rahmen.

11

WIRTSCHAFTSINFORMATIK

Grundlagen des SMCGrundlagen des SMCKripke StrukturKripke Struktur

Problem :

Bei vielen Zuständen lässt sich die Kripke Struktur nicht mehr

effizient verifizieren

Lösung :

Das „state explosion problem“ kann durch eine symbolische Darstellung der

Kripke Struktur vermieden werden

Der Zustandsgraph wird nicht explizit aufgebaut, sondern durch Boolesche

Formeln symbolisch repräsentiert

Symbolisches Model Checking

Page 12: WIRTSCHAFTSINFORMATIK Westfälische Wilhelms-Universität Münster WIRTSCHAFTS INFORMATIK Das Symbolic Model Verifier (SMV) System Präsentation im Rahmen.

12

WIRTSCHAFTSINFORMATIK

Grundlagen des SMCGrundlagen des SMCKripke StrukturKripke Struktur

S0

S1

S2

S3

{ a1,a2 }

{ a2 }

{ a2 }

Symbolische Umsetzung von (S, R, L):

Die Zustände werden binär kodiert

{(00); (01); (10); (11)}

Die Übergangsrelation R: B2n B

fR = 0001+0011+0111+1101+1111

Für jedes Zustandsprädikat ai gibt

es eine Boolesche Funktion Bn B

Im Beispiel 2 Funktionen:

fa1 = 01

fa2 = 01+10+11

Startzustand: fS0 = 00

Page 13: WIRTSCHAFTSINFORMATIK Westfälische Wilhelms-Universität Münster WIRTSCHAFTS INFORMATIK Das Symbolic Model Verifier (SMV) System Präsentation im Rahmen.

13

WIRTSCHAFTSINFORMATIK

Grundlagen des SMCGrundlagen des SMCOBDD´sOBDD´s

Symbolisches Model Checking basiert auf Booleschen Formeln

OBDD´s bieten eine kompakte Darstellungsform

Es existieren effiziente Algorithmen

siehe Vortrag zu OBDD´s

Page 14: WIRTSCHAFTSINFORMATIK Westfälische Wilhelms-Universität Münster WIRTSCHAFTS INFORMATIK Das Symbolic Model Verifier (SMV) System Präsentation im Rahmen.

14

WIRTSCHAFTSINFORMATIK

GliederungGliederung

1. Einleitung

2. Grundlagen des SMC

3. Das SMV System

4. Verifikation des Gigamax Protokolls

5. Zusammenfassung

Page 15: WIRTSCHAFTSINFORMATIK Westfälische Wilhelms-Universität Münster WIRTSCHAFTS INFORMATIK Das Symbolic Model Verifier (SMV) System Präsentation im Rahmen.

15

WIRTSCHAFTSINFORMATIK

Das SMV SystemDas SMV System

Symbolic Model Verifier (SMV) System

Hauptsächlich entwickelt von K.L. McMillan

Entwickelt in den Cadence Berkeley Labs

Experimentelles Tool, das SMC Techniken verwendet

Dient zur Forschung, um Anwendungen für SMC zu entwickeln

Page 16: WIRTSCHAFTSINFORMATIK Westfälische Wilhelms-Universität Münster WIRTSCHAFTS INFORMATIK Das Symbolic Model Verifier (SMV) System Präsentation im Rahmen.

16

WIRTSCHAFTSINFORMATIK

Das SMV SystemDas SMV System

Anforderungen an einen symbolischen Model Checker:

vollautomatische Verifikation

synchrone und asynchrone Systeme verifizierbar

Erstellung eines abstrakten oder sehr detaillierten Modells

Wiederverwendung von einmalig erstellten Modellteilen

Anwendbarkeit und Anerkennung in der Praxis

Page 17: WIRTSCHAFTSINFORMATIK Westfälische Wilhelms-Universität Münster WIRTSCHAFTS INFORMATIK Das Symbolic Model Verifier (SMV) System Präsentation im Rahmen.

17

WIRTSCHAFTSINFORMATIK

Das SMV SystemDas SMV SystemAblauf der VerifikationAblauf der Verifikation

Erstellung des Modells in der

SMV Eingabesprache

Die Spezifikation

in CTL erstellen

Verifikation durch das

SMV System

true

false

Page 18: WIRTSCHAFTSINFORMATIK Westfälische Wilhelms-Universität Münster WIRTSCHAFTS INFORMATIK Das Symbolic Model Verifier (SMV) System Präsentation im Rahmen.

18

WIRTSCHAFTSINFORMATIK

Das SMV SystemDas SMV SystemErstellung des ModellsErstellung des Modells

Beispiel: Mutual Exclusion Protokoll (MUTEX)

Eigenschaften eines MUTEX:

Es sind 2 asynchrone Prozesse vorhanden

Diese teilen sich einen kritischen Bereich

Dieser Bereich darf von nur einem Prozess betreten werden

Das MUTEX Protokoll soll diese exklusive Nutzung sicherstellen

Page 19: WIRTSCHAFTSINFORMATIK Westfälische Wilhelms-Universität Münster WIRTSCHAFTS INFORMATIK Das Symbolic Model Verifier (SMV) System Präsentation im Rahmen.

19

WIRTSCHAFTSINFORMATIK

Das SMV SystemDas SMV SystemErstellung des ModellsErstellung des Modells

MODULE main

VARturn : boolean;p0: process p(0,turn);p1: process p(1,turn);

In der SMV Eingabesprache besteht ein MUTEX aus 2 Modulen:

Schlüsselwort process deklariert einen Prozess

Es wird auf das Modul p verwiesen

Page 20: WIRTSCHAFTSINFORMATIK Westfälische Wilhelms-Universität Münster WIRTSCHAFTS INFORMATIK Das Symbolic Model Verifier (SMV) System Präsentation im Rahmen.

20

WIRTSCHAFTSINFORMATIK

Das SMV SystemDas SMV SystemErstellung des ModellsErstellung des Modells

Page 21: WIRTSCHAFTSINFORMATIK Westfälische Wilhelms-Universität Münster WIRTSCHAFTS INFORMATIK Das Symbolic Model Verifier (SMV) System Präsentation im Rahmen.

21

WIRTSCHAFTSINFORMATIK

Das SMV SystemDas SMV SystemErstellung des ModellsErstellung des Modells

MODULE p (nr,turn)

VARstate: {non_critical, critical};

ASSIGNinit(state):= non_critical;next(state):= case

state = non_critical & !(turn = nr) : non_critical;state = non_critical & turn = nr : critical;state = critical: {critical, non_critical};

esac;

next(turn):= casestate = critical & next(state) = non_critical : !nr;1 : turn;

esac;

Page 22: WIRTSCHAFTSINFORMATIK Westfälische Wilhelms-Universität Münster WIRTSCHAFTS INFORMATIK Das Symbolic Model Verifier (SMV) System Präsentation im Rahmen.

22

WIRTSCHAFTSINFORMATIK

Das SMV SystemDas SMV SystemErstellung des ModellsErstellung des Modells

Hinzufügen der Spezifikation zum main Modul:

MODULE mainVAR

turn : boolean;p0: process p(0,turn);p1: process p(1,turn);

SPECAG !(p0.state = critical & p1.state = critical)

Page 23: WIRTSCHAFTSINFORMATIK Westfälische Wilhelms-Universität Münster WIRTSCHAFTS INFORMATIK Das Symbolic Model Verifier (SMV) System Präsentation im Rahmen.

23

WIRTSCHAFTSINFORMATIK

Das SMV SystemDas SMV SystemErgebnis der VerifikationErgebnis der Verifikation

Page 24: WIRTSCHAFTSINFORMATIK Westfälische Wilhelms-Universität Münster WIRTSCHAFTS INFORMATIK Das Symbolic Model Verifier (SMV) System Präsentation im Rahmen.

24

WIRTSCHAFTSINFORMATIK

Das SMV SystemDas SMV System

Bislang sind uns folgende Deklarationen begegnet:

VAR

ASSIGN

INIT

NEXT

SPEC

Es gibt noch eine weitere wichtige Deklaration

DEFINE

Durch DEFINE können häufiger benutzte Ausdrücke kompakter beschrieben

werden:

DEFINECarry_out := value & carry_in;

Page 25: WIRTSCHAFTSINFORMATIK Westfälische Wilhelms-Universität Münster WIRTSCHAFTS INFORMATIK Das Symbolic Model Verifier (SMV) System Präsentation im Rahmen.

25

WIRTSCHAFTSINFORMATIK

GliederungGliederung

1. Einleitung

2. Grundlagen des SMC

3. Das SMV System

4. Verifikation des Gigamax Protokolls

5. Zusammenfassung

Page 26: WIRTSCHAFTSINFORMATIK Westfälische Wilhelms-Universität Münster WIRTSCHAFTS INFORMATIK Das Symbolic Model Verifier (SMV) System Präsentation im Rahmen.

26

WIRTSCHAFTSINFORMATIK

Verifikation des Gigamax ProtokollsVerifikation des Gigamax Protokolls

Eigenschaften des Gigamax Multiprozessors:

Encore Computer Corporation

Verteilte Architektur

Reaktives System

„Simulierter“ Hauptspeicher

Das Cache Protokoll soll den

verteilten Speicher konsistent halten

UIC UIC

M P

UIC

M P

UIC

……

……

Globaler Bus

Lokaler Bus

Page 27: WIRTSCHAFTSINFORMATIK Westfälische Wilhelms-Universität Münster WIRTSCHAFTS INFORMATIK Das Symbolic Model Verifier (SMV) System Präsentation im Rahmen.

27

WIRTSCHAFTSINFORMATIK

Verifikation des Gigamax ProtokollsVerifikation des Gigamax Protokolls

Architektur des Systems:

UIC UIC

M P

UIC

M P

UIC

……

……

Globaler Bus

Lokaler Bus

Page 28: WIRTSCHAFTSINFORMATIK Westfälische Wilhelms-Universität Münster WIRTSCHAFTS INFORMATIK Das Symbolic Model Verifier (SMV) System Präsentation im Rahmen.

28

WIRTSCHAFTSINFORMATIK

Verifikation des Gigamax ProtokollsVerifikation des Gigamax Protokolls

In Fokus der Verifikation: Ein expliziter Speicherblock

Speicherblock im Cache „hit“

Speicherblock nicht im Cache „miss“

• In diesem Fall : Hauptspeicherzugriff

• Inhalte müssen aber konsistent gehalten werden

Im Folgenden: Abstrakte und modellhafte Umsetzung des

Cache Protokolls in der SMV Eingabesprache

Page 29: WIRTSCHAFTSINFORMATIK Westfälische Wilhelms-Universität Münster WIRTSCHAFTS INFORMATIK Das Symbolic Model Verifier (SMV) System Präsentation im Rahmen.

29

WIRTSCHAFTSINFORMATIK

Verifikation des Gigamax ProtokollsVerifikation des Gigamax Protokolls

Erstellung von 3 Modulen mit den zugehörigen Variablen:

module cache-device

• state (Zustand aus Sicht des Caches)

• snoop (boolesche Variable)

module bus-device

• master (Bus Master)

• cmd (Befehle)

• waiting (boolesche Variable)

module processor

Page 30: WIRTSCHAFTSINFORMATIK Westfälische Wilhelms-Universität Münster WIRTSCHAFTS INFORMATIK Das Symbolic Model Verifier (SMV) System Präsentation im Rahmen.

30

WIRTSCHAFTSINFORMATIK

Verifikation des Gigamax ProtokollsVerifikation des Gigamax Protokolls

Ein Speicherblock kann aus Sicht des Caches die folgenden Zustände haben:

owned ( read und write möglich)

shared ( nur read möglich)

invalid ( nicht im Cache vorhanden)

In der SMV Eingabesprache:

MODULE cache-device VAR state : {invalid,shared,owned};  DEFINE readable := ((state = shared) | (state = owned)) & !waiting; writable := (state = owned) & !waiting;

Page 31: WIRTSCHAFTSINFORMATIK Westfälische Wilhelms-Universität Münster WIRTSCHAFTS INFORMATIK Das Symbolic Model Verifier (SMV) System Präsentation im Rahmen.

31

WIRTSCHAFTSINFORMATIK

Verifikation des Gigamax ProtokollsVerifikation des Gigamax Protokolls

Bei jedem Bus Zyklus wird ein Master bestimmt

Alle anderen Einheiten werden als Slaves behandelt

Der Bus Master kann einen der folgenden Basisbefehle auf den Bus senden:

read : Bestehend aus einer Anfrage für einen bestimmten Speicherblock.Wird durch einen response Befehl beantwortet.

write : Speichert die Daten eines bestimmten Speicherblock im Hauptspeicher des Clusters.

write/resp: Sendet den durch read angeforderten Speicherblock an den Anfrager und speichert den Block im Hauptspeicher.

Page 32: WIRTSCHAFTSINFORMATIK Westfälische Wilhelms-Universität Münster WIRTSCHAFTS INFORMATIK Das Symbolic Model Verifier (SMV) System Präsentation im Rahmen.

32

WIRTSCHAFTSINFORMATIK

Verifikation des Gigamax ProtokollsVerifikation des Gigamax Protokolls

In Abhängigkeit vom gesendeten Befehl, ist der Folgezustand des Bus

Masters festgelegt:

akt. Zustand Befehl Folgezustand Grund

invalid read-shared shared read missinvalid or shared read owned owned write missowned write-invalid invalid copy-backowned write-resp-invalid invalid snoop read-ownedowned write-shared shared write-troughowned write-resp-shared invalid snoop read-shared

Page 33: WIRTSCHAFTSINFORMATIK Westfälische Wilhelms-Universität Münster WIRTSCHAFTS INFORMATIK Das Symbolic Model Verifier (SMV) System Präsentation im Rahmen.

33

WIRTSCHAFTSINFORMATIK

Verifikation des Gigamax ProtokollsVerifikation des Gigamax Protokolls

Zustandsübergänge in der SMV Eingabesprache:ASSIGN init(state) := invalid; next(state) := case abort : state; master : case CMD = read-shared : shared; CMD = read-owned : owned; CMD = write-invalid : invalid; CMD = write-resp-invalid : invalid; CMD = write-shared : shared; CMD = write-resp-shared : shared; 1 : state; esac; !master & state = shared & (CMD = read-owned | CMD = invalidate) : invalid;  state = shared : {shared,invalid}; 1 : state ;esac;

Page 34: WIRTSCHAFTSINFORMATIK Westfälische Wilhelms-Universität Münster WIRTSCHAFTS INFORMATIK Das Symbolic Model Verifier (SMV) System Präsentation im Rahmen.

34

WIRTSCHAFTSINFORMATIK

Verifikation des Gigamax ProtokollsVerifikation des Gigamax Protokolls

Alle Slaves hören den Bus ab und antworten auf den Befehl des Masters:

reply-waiting (Slave wartet auf einen Block, ein read des Bus Masters würde vernichtet)

reply-owned (veranlasst ein write/resp, snoop Variable wird gesetzt )

reply-stall (Slave kann nicht antworten)

DEFINE reply-waiting := !master & waiting;

DEFINE reply-owned := !master & state = owned;

Page 35: WIRTSCHAFTSINFORMATIK Westfälische Wilhelms-Universität Münster WIRTSCHAFTS INFORMATIK Das Symbolic Model Verifier (SMV) System Präsentation im Rahmen.

35

WIRTSCHAFTSINFORMATIK

Verifikation des Gigamax ProtokollsVerifikation des Gigamax Protokolls

Zustandsübergänge der snoop Variable

VAR snoop : boolean; ASSIGN init(snoop) := 0; next(snoop) := case abort : snoop;

state = owned & CMD = read-shared : 1;state = owned & CMD = read-owned : 1;CMD = write-resp-invalid : 0;

CMD = write-resp-shared : 0; 1 : snoop; esac;

Page 36: WIRTSCHAFTSINFORMATIK Westfälische Wilhelms-Universität Münster WIRTSCHAFTS INFORMATIK Das Symbolic Model Verifier (SMV) System Präsentation im Rahmen.

36

WIRTSCHAFTSINFORMATIK

Verifikation des Gigamax ProtokollsVerifikation des Gigamax Protokolls

MODULE bus-device VAR master : boolean; cmd : {idle,read-shared,read-owned,write-invalid,write-shared,

write-resp-invalid,write-resp-shared,invalidate,response}; waiting : boolean; reply-stall : boolean; ASSIGN init(waiting) := 0; next(waiting) := case abort : waiting; master & CMD = read-shared : 1; master & CMD = read-owned : 1; !master & CMD = response : 0; !master & CMD = write-resp-invalid : 0; !master & CMD = write-resp-shared : 0; 1 : waiting; esac;

Zustandsübergänge der waiting Variable:

Page 37: WIRTSCHAFTSINFORMATIK Westfälische Wilhelms-Universität Münster WIRTSCHAFTS INFORMATIK Das Symbolic Model Verifier (SMV) System Präsentation im Rahmen.

37

WIRTSCHAFTSINFORMATIK

Verifikation des Gigamax ProtokollsVerifikation des Gigamax Protokolls

Befehle die der Bus Master senden darf:

MODULE processor(CMD,REPLY-OWNED,REPLY-WAITING,REPLY-STALL)

 ASSIGN cmd := case master & state = invalid : {read-shared,read-owned}; master & state = shared & !waiting : read-owned; master & snoop & state = invalid : write-resp-invalid; master & snoop & state = shared : write-resp-shared; master & state = owned & !waiting : write-invalid; 1 : idle; esac;

Page 38: WIRTSCHAFTSINFORMATIK Westfälische Wilhelms-Universität Münster WIRTSCHAFTS INFORMATIK Das Symbolic Model Verifier (SMV) System Präsentation im Rahmen.

38

WIRTSCHAFTSINFORMATIK

Verifikation des Gigamax ProtokollsVerifikation des Gigamax Protokolls

Zusätzlich müssten noch die UIC Schnittstellen modelliert werden

Diese können „local“ oder „remote“ sein

Die local UIC können als Sender oder Empfänger fungieren

UIC UIC

M P

UIC

M P

UIC

……

……

Globaler Bus

Lokaler Bus

Page 39: WIRTSCHAFTSINFORMATIK Westfälische Wilhelms-Universität Münster WIRTSCHAFTS INFORMATIK Das Symbolic Model Verifier (SMV) System Präsentation im Rahmen.

39

WIRTSCHAFTSINFORMATIK

Verifikation des Gigamax ProtokollsVerifikation des Gigamax Protokolls

Überprüfung des Protokolls auf Deadlocks:

Das erstellte Modell muss der folgenden Spezifikation genügen

Zu jeder Zeit muss der explizit betrachtete Speicherblock die Möglichkeit

haben „writeable“ und auch wieder „readable“ zu werden

SPECAG(EF readable & EF writeable)

Page 40: WIRTSCHAFTSINFORMATIK Westfälische Wilhelms-Universität Münster WIRTSCHAFTS INFORMATIK Das Symbolic Model Verifier (SMV) System Präsentation im Rahmen.

40

WIRTSCHAFTSINFORMATIK

Verifikation des Gigamax ProtokollsVerifikation des Gigamax Protokolls

Ergebnis der Verifikation mit dem SMV System:

Das SMV System fand heraus, dass die Spezifikation nicht korrekt ist

Die Entwickler des Systems haben den Deadlock durch Simulation nicht finden können

Eine sehr komplexe Abfolge von 14 Schritten führt zu einem Deadlock

Durch Analyse der Schrittfolge zum Deadlock, konnte der Fehler im Gigamax Protokoll behoben werden

Page 41: WIRTSCHAFTSINFORMATIK Westfälische Wilhelms-Universität Münster WIRTSCHAFTS INFORMATIK Das Symbolic Model Verifier (SMV) System Präsentation im Rahmen.

41

WIRTSCHAFTSINFORMATIK

GliederungGliederung

1. Einleitung

2. Grundlagen des SMC

3. Das SMV System

4. Verifikation des Gigamax Protokolls

5. Zusammenfassung

Page 42: WIRTSCHAFTSINFORMATIK Westfälische Wilhelms-Universität Münster WIRTSCHAFTS INFORMATIK Das Symbolic Model Verifier (SMV) System Präsentation im Rahmen.

42

WIRTSCHAFTSINFORMATIK

ZusammenfassungZusammenfassung

Symbolisches Model Checking ermöglicht vollautomatische Verifikation

Mit dem SMV System ist die Abstraktionsebene frei wählbar

Wiederverwendung von Modulen erspart Kosten

Es können komplexe Fehler entdeckt werden

Aber auch das SMC kann an seine Grenzen stoßen

Page 43: WIRTSCHAFTSINFORMATIK Westfälische Wilhelms-Universität Münster WIRTSCHAFTS INFORMATIK Das Symbolic Model Verifier (SMV) System Präsentation im Rahmen.

43

WIRTSCHAFTSINFORMATIK

Vielen Dank

für die

Aufmerksamkeit !

Page 44: WIRTSCHAFTSINFORMATIK Westfälische Wilhelms-Universität Münster WIRTSCHAFTS INFORMATIK Das Symbolic Model Verifier (SMV) System Präsentation im Rahmen.

44

WIRTSCHAFTSINFORMATIK