2. Verifikation Ersch ö pfende Untersuchung aller Zust ä nde/Abl ä ufe eines Systems auf eine Eigenschaft System Modell Eigen- schaft Verifikations- werkzeug ok Slicing Dekomposition Abstraktion Abstraktions- verfeinerung Gegen- beispiel nicht ok Theorem- beweiser statische Analyse
3. Zustandsraumexplosion 1.000.000.000 Zust ä nde/s 31.557.600.000.000.000 Zust ä nde/Jahr 64 x 10 25 Zust ä nde seit Urknall 3600.000.000.000 Zust ä nde/h knapp 100 bits reichen, um 64 x 10 25 Zust ä nde zu repr ä sentieren ab 200 bits sollte man mit mehr als 64 x 10 25 Zust ä nden rechnen 1986: 10 6 1992: “Model Checking: 10 20 states and beyond” 1996: 10 100 2001: 10 1000 Verifikations- werkzeug
4. Symbolische und Explizite Methoden Elementare Objekte sind Zustandsmengen Gr öß e von Mengenobjekten unkorreliert zur Anzahl der Elemente Ü berapproximationen m ö glich symbolisch: explizit: Elementare Objekte sind einzelne Zust ä nde Eigenschaft wird aus einem reduzierten Zustandsraum abgeleitet Verifikation von Eigenschaften in Linearzeit
5. Gliederung System Modell Gegen- beispiel Eigen- schaft Verifikations- werkzeug ok nicht ok 1. Petrinetze 2. Temporale Logik 3. sture Mengen 4. Symmetrie 5. Ü berdeckbarkeit 6. Demos
6. Gliederung System Modell Gegen- beispiel Eigen- schaft Verifikations- werkzeug ok nicht ok 1. Petrinetze 3. sture Mengen 4. Symmetrien 5. Ü berdeckbarkeit 2. Temporale Logik 6. Demos
8. Petrinetze t1 t3 t4 t2 p1 p2 p3 p4 (1,0,0,0) (1,0,1,0) (1,0,2,0) t3 t3 (0,1,2,0) t1
9. Petrinetze t1 t3 t4 t2 p1 p2 p3 p4 (1,0,0,0) (1,0,1,0) (1,0,2,0) t3 t3 (0,1,2,0) t1 (0,0,2,0) t2
10.
11. Gliederung System Modell Gegen- beispiel Eigen- schaft Verifikations- werkzeug ok nicht ok 1. Petrinetze 3. sture Mengen 4. Symmetrien 5. Ü berdeckbarkeit 2. Temporale Logik 6. Demos
12. Temporale Logik CTL* elementare Ausdr ü cke: (1,0,2,0) p3 > 0 ; (1,0,2,0) p2 = 15 boolesche Verkn ü pfungen: , , Temporaloperatoren: ... X ... F ... G ... U Pfadquantoren: A E ...
13. Temporale Logik CTL* ... X ... F ... G ... U A E Erreichbarkeit: E F R ü cksetzbarkeit: A G E F initial A G ( A F ) G F Deadlockfreiheit: A G t t enabled
14. Gliederung System Modell Gegen- beispiel Eigen- schaft Verifikations- werkzeug ok nicht ok 1. Petrinetze 3. sture Mengen 4. Symmetrien 5. Ü berdeckbarkeit 2. Temporale Logik 6. Demos
15. Nebenl ä ufigkeit und Zustandsraumexplosion a a a a b c a b a b a a a a b c a a b b a b a b a c a a b b a a c c c c c c a c b b c a c a c c b c b b b c c b c c c b b c c c b a c a b b a c b c a a b c a c b b b b
16. Nebenl ä ufigkeit und Zustandsraumexplosion a a a a b a b a a a a b c a a b b a b a b c c c a c a a b b a a c c c a c b b c a c a c c b c b b b c c b c c c b b c c c b a c a b b a c b c a a b c a c b b b b a b c
17. Nebenl ä ufigkeit und Zustandsraumexplosion a a a a b a b b a c c c b c b c c b b c a a b c
18. Partial Order Reduction Zust ä nde Abl ä ufe alle Deadlocks mind. ein unendlicher Ablauf (1988) sichtbare/unsicht- bare Transitionen Sicherheitseigenschaften (1990) LTL (1993) CTL* (1996) lokale Eigenschaften globale Eigenschaft(en)
19. Sture Mengen sture Menge a b c b a a b b b b b a a a a a c b a b b a b a b c b
20. Up-Mengen m Up(m, ) kann f ü r beliebige CTL-Formeln definiert werden. Up(m, ) Up (m,p > k) = p
21. Sture Mengen f ü r Erreichbarkeit Satz: Wenn jede sture Menge Up(m, ) enth ä lt, dann gibt es im reduzierten Zustandsraum –Zust ä nde genau dann, wenn es im vollen Zustandsraum –Zust ä nde gibt in Up(m, ) erste sture Trans. Zustandsraum red. Zst.- raum Anfangszustand
22. Sture Mengen: Zusammenfassung viele globale Standardeigenschaften erfa ß t Verifikation von CTL mit EF (“erreichbar”) und AG Methode unabh ä ngig vom Modellierungsformalismus k ü rzeste Wege zu –Zust ä nden werden bewahrt
23. Gliederung System Modell Gegen- beispiel Eigen- schaft Verifikations- werkzeug ok nicht ok 1. Petrinetze 3. sture Mengen 4. Symmetrien 5. Ü berdeckbarkeit 2. Temporale Logik 6. Demos
24.
25. Symmetrie 1984: High-Level Petrinetze – Symmetrieinformation mu ß mitgeliefert werden 1990: High-Level-Petrinetze – automatische Deduktion mancher Symmetrien 1990: Petrinetze - Symmetrie als Automorphismen Mitte 90er: - Symmetrie für CTL*-Modelchecking
26. Graphautomorphismen ... sind Permutationen der Knoten, die die Bogenrelation und Knotenart respektieren. Graph kann exp. viele Auto- morphismen haben Ex. immer polynomiell gro ßes Erzeugendensystem Die Entscheidung, ob zwei Zust ände durch einen Automorphismus ineinander überführbar sind, ist äquivalent zu Graphisomorphie
27. Symmetrie - Algorithmen Probier -Algorithmus zur Berechnung eines poly. gro ßen Erzeugendensystems der Automorphismen ... arbeitet praktisch backtrackingfrei . 4 Verfahren zur Suche nach symmetrischen Zust änden ... eins geeignet f ür kleine Automorphismengruppen ... eins geeignet f ür große Automorphismengruppen ... eins polynomiell, sehr schnell, aber approximativ ... eins approximativ, braucht kein Erzeugendensystem Petrinetze bis 10.000 Knoten beherrschbar
28. Symmetrie - Zusammenfassung Mit Automorphismen lassen sich mehr Symmetrien beherrschen als mit anderen Ans ätzen mehr Reduktion 48 Auto- morphismen Symmetrie kann mit sturen Mengen kombiniert werden. Automorphismen k önnen auch in anderen Modellierungs- formalismen verwendet werden
29. Gliederung System Modell Gegen- beispiel Eigen- schaft Verifikations- werkzeug ok nicht ok 1. Petrinetze 3. sture Mengen 4. Symmetrien 5. Ü berdeckbarkeit 2. Temporale Logik 6. Demos
30. Ü berdeckbarkeitsgraph - Idee (1, 0 ,2, 3 ) (1, 1 ,2, 5 ) .... Ü berdeckbarkeitsgraph ist immer endlich 1969: Ü berdeckbarkeitsgraph 1990: minimaler Ü berdeckbarkeitsgraph (1, 2 ,2, 7 ) (1, 3 ,2, 9 ) (1, 5 ,2, 13 ) (1, 4 ,2, 11 ) (1, 6 ,2, 15 ) (1, 0 ,2, 3 ) (1, ,2, )
31. Ü berdeckbarkeitsgraph analysierbare Eigenschaften: Beschr änktheit von Stellen tote Transitionen Regularität alle A -CTL*-Eigenschaften, die sich nur auf beschr änkte Stellen beziehen Teile von E -CTL*
32. Simulation Bremse Gas “ Ampel” simuliert “Pedale” A simuliert B Jede ACTL*-Eigenschaft von B gilt in A Zustandsraum simuliert Überdeckbarkeitsgraph
34. Existenzeigenschaften Wenn 1 2 im Überdeckbarkeitsgraph und 2 lim oder 2 lim EF , dann 1 lim EF 1 2
35. Ü berdeckbarkeitsgraph - Zusammenfassung eine der ersten infinite-state Verifikationstechniken wesentlich erweiterte Analysef ähigkeiten kombinierbar mit Symmetrie und z.T. mit sturen Mengen absolut Petrinetz-spezifisch
36. Gliederung System Modell Gegen- beispiel Eigen- schaft Verifikations- werkzeug ok nicht ok 1. Petrinetze 3. sture Mengen 4. Symmetrien 5. Ü berdeckbarkeit 2. Temporale Logik 6. Demos
38. explizite Verifikationstechniken Zusammenfassung vor allem f ür verteilte Systeme einsetzbar wettbewerbsfähig mit symbolischen Techniken Speicherplatz bleibt knappere Ressource viele Reserven in bekannten Methoden Kombination verschiedener Techniken vorteilhaft restriktive Modellierungssprachen bieten Vorteile bei der Verifikation