Explizite Zustandsraumanalyse Karsten Schmidt [email_address]
Verifikation Ersch ö pfende  Untersuchung aller Zust ä nde/Abl ä ufe eines Systems auf eine Eigenschaft System Modell Eige...
Zustandsraumexplosion 1.000.000.000 Zust ä nde/s 31.557.600.000.000.000 Zust ä nde/Jahr 64 x 10 25  Zust ä nde seit Urknal...
Symbolische und Explizite Methoden Elementare Objekte sind Zustandsmengen Gr öß e von Mengenobjekten unkorreliert zur Anza...
Gliederung System Modell Gegen- beispiel Eigen- schaft Verifikations- werkzeug ok nicht ok 1. Petrinetze 2. Temporale Logi...
Gliederung System Modell Gegen- beispiel Eigen- schaft Verifikations- werkzeug ok nicht ok 1. Petrinetze 3. sture Mengen 4...
Petrinetze (1,0,0,0) p1 p2 p3 p4 t3 t4 t2 t1    (1,0,1,0) t3  (1,0,2,0) t3
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
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
Petrinetze Petrinetze andere Formalismen Petrinetze andere Formalismen Ausdrucksst ä rke bei derModellbildung verf ü gbare...
Gliederung System Modell Gegen- beispiel Eigen- schaft Verifikations- werkzeug ok nicht ok 1. Petrinetze 3. sture Mengen 4...
Temporale Logik CTL* elementare Ausdr ü cke:  (1,0,2,0)     p3 > 0 ;  (1,0,2,0)     p2 = 15 boolesche Verkn ü pfungen:  ...
Temporale Logik CTL* ...     X      ...     F      ...     G      ...        U      A         E      Erreichb...
Gliederung System Modell Gegen- beispiel Eigen- schaft Verifikations- werkzeug ok nicht ok 1. Petrinetze 3. sture Mengen 4...
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 ...
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 ...
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
Partial Order Reduction Zust ä nde Abl ä ufe alle Deadlocks mind. ein unendlicher Ablauf (1988) sichtbare/unsicht- bare Tr...
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
Up-Mengen m       Up(m,     ) kann f ü r beliebige CTL-Formeln    definiert werden. Up(m,   ) Up (m,p > k) =  p
Sture Mengen f ü r Erreichbarkeit Satz: Wenn jede sture Menge Up(m,  ) enth ä lt, dann gibt es im reduzierten Zustandsrau...
Sture Mengen: Zusammenfassung viele globale Standardeigenschaften erfa ß t  Verifikation von CTL mit EF (“erreichbar”) und...
Gliederung System Modell Gegen- beispiel Eigen- schaft Verifikations- werkzeug ok nicht ok 1. Petrinetze 3. sture Mengen 4...
Symmetrie - Idee <ul><li>Aufgaben: </li></ul><ul><li>Welche Symmetrien </li></ul><ul><li>hat ein System? </li></ul><ul><li...
Symmetrie 1984: High-Level Petrinetze – Symmetrieinformation mu ß mitgeliefert werden 1990: High-Level-Petrinetze – automa...
Graphautomorphismen ... sind Permutationen der Knoten, die die Bogenrelation und Knotenart respektieren. Graph kann  exp. ...
Symmetrie - Algorithmen Probier -Algorithmus zur Berechnung eines poly. gro ßen Erzeugendensystems der Automorphismen ... ...
Symmetrie - Zusammenfassung Mit Automorphismen lassen sich mehr Symmetrien beherrschen als mit anderen Ans ätzen    mehr ...
Gliederung System Modell Gegen- beispiel Eigen- schaft Verifikations- werkzeug ok nicht ok 1. Petrinetze 3. sture Mengen 4...
Ü berdeckbarkeitsgraph - Idee (1, 0 ,2, 3 ) (1, 1 ,2, 5 ) .... Ü berdeckbarkeitsgraph ist immer endlich 1969:  Ü berdeckba...
Ü berdeckbarkeitsgraph analysierbare Eigenschaften: Beschr änktheit von Stellen tote Transitionen Regularität alle  A -CTL...
Simulation Bremse Gas “ Ampel” simuliert “Pedale” A simuliert B    Jede ACTL*-Eigenschaft von B gilt in A Zustandsraum si...
Existenzeigenschaften (1, 0 ,2, 3 ) (1, 1 ,2, 5 ) (1, 2 ,2, 7 ) (1, 3 ,2, 9 ) (1, 5 ,2, 13 ) (1, 4 ,2, 11 ) (1, 6 ,2, 15 )...
Existenzeigenschaften Wenn   1      2 im  Überdeckbarkeitsgraph und   2   lim    oder   2   lim  EF    , dann   ...
Ü berdeckbarkeitsgraph - Zusammenfassung eine der ersten infinite-state Verifikationstechniken wesentlich erweiterte Analy...
Gliederung System Modell Gegen- beispiel Eigen- schaft Verifikations- werkzeug ok nicht ok 1. Petrinetze 3. sture Mengen 4...
Beispielsysteme  ph5.hl data4.hl
explizite Verifikationstechniken Zusammenfassung vor allem f ür verteilte Systeme einsetzbar wettbewerbsfähig mit symbolis...
Nächste SlideShare
Wird geladen in …5
×

Explizite Zustandsraumanalyse

710 Aufrufe

Veröffentlicht am

Habilitationsvortrag

Veröffentlicht in: Technologie, Bildung
0 Kommentare
0 Gefällt mir
Statistik
Notizen
  • Als Erste(r) kommentieren

  • Gehören Sie zu den Ersten, denen das gefällt!

Keine Downloads
Aufrufe
Aufrufe insgesamt
710
Auf SlideShare
0
Aus Einbettungen
0
Anzahl an Einbettungen
2
Aktionen
Geteilt
0
Downloads
0
Kommentare
0
Gefällt mir
0
Einbettungen 0
Keine Einbettungen

Keine Notizen für die Folie

Explizite Zustandsraumanalyse

  1. 1. Explizite Zustandsraumanalyse Karsten Schmidt [email_address]
  2. 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. 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. 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. 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. 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
  7. 7. Petrinetze (1,0,0,0) p1 p2 p3 p4 t3 t4 t2 t1  (1,0,1,0) t3  (1,0,2,0) t3
  8. 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. 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. 10. Petrinetze Petrinetze andere Formalismen Petrinetze andere Formalismen Ausdrucksst ä rke bei derModellbildung verf ü gbare Verifikations- techniken <ul><li>ein Formalismus f ü r alle Techniken </li></ul><ul><li>Vorteile restriktiver Modellierungs-sprachen werden transparent </li></ul><ul><li>einfache Syntax erleichtert formale Argumentation </li></ul>
  11. 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. 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. 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. 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. 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. 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. 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. 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. 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. 20. Up-Mengen m     Up(m,  ) kann f ü r beliebige CTL-Formeln  definiert werden. Up(m,  ) Up (m,p > k) = p
  21. 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. 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. 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. 24. Symmetrie - Idee <ul><li>Aufgaben: </li></ul><ul><li>Welche Symmetrien </li></ul><ul><li>hat ein System? </li></ul><ul><li>2. Wie kann ich feststellen, </li></ul><ul><li>ob ein symmetrischer </li></ul><ul><li>Zustand bereits vorhanden </li></ul><ul><li>ist? </li></ul>(0,0,1,0,0) (0,1,0,0,0) (1,0,0,0,0) (0,0,0,1,0) (0,0,0,0,1)
  25. 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. 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. 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. 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. 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. 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. 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. 32. Simulation Bremse Gas “ Ampel” simuliert “Pedale” A simuliert B  Jede ACTL*-Eigenschaft von B gilt in A Zustandsraum simuliert Überdeckbarkeitsgraph
  33. 33. Existenzeigenschaften (1, 0 ,2, 3 ) (1, 1 ,2, 5 ) (1, 2 ,2, 7 ) (1, 3 ,2, 9 ) (1, 5 ,2, 13 ) (1, 4 ,2, 11 ) (1, 6 ,2, 15 ) .... (1,  ,2,  ) (1,  ,2,  )  lim  falls in jeder gegen (1,  ,2,  ) konvergenten Folge fast alle Zust ände  erf üllen (1,  ,2,  )  lim p2 > 15 (1,  ,2,  )  lim p3 = 2 (1,  ,2,  )  lim 2 | p2
  34. 34. Existenzeigenschaften Wenn  1   2 im Überdeckbarkeitsgraph und  2  lim  oder  2  lim EF  , dann  1  lim EF   1  2
  35. 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. 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
  37. 37. Beispielsysteme ph5.hl data4.hl
  38. 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

×