Diese Präsentation wurde erfolgreich gemeldet.
Wir verwenden Ihre LinkedIn Profilangaben und Informationen zu Ihren Aktivitäten, um Anzeigen zu personalisieren und Ihnen relevantere Inhalte anzuzeigen. Sie können Ihre Anzeigeneinstellungen jederzeit ändern.
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

782 Aufrufe

Veröffentlicht am

Habilitationsvortrag

Veröffentlicht in: Technologie, Bildung
  • Als Erste(r) kommentieren

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

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

×