In einem Erreichbarkeitsgraphen kann somit die Anzahl der m¨oglichen Pfadebeim Schalten der Transitionen reduziert werden, indem eine einzelne, repr¨asentati- ve Schaltfolge gew¨ahlt wir
Trang 1Beispiel 5.1.10 F¨ur das Petri-Netz aus Abb 5.3 auf Seite 158 aus Beispiel 5.1.7 folgt
⎞
⎟
⎟
⎠
Die kleinste ganzzahlige, strikt positive L¨osung lautet iT= (1,1,1,1,2) .
Die Existenz dieser L¨osung ist eine notwendige Bedingung f¨ur die Reversibilit¨atdes Petri-Netzes Zu zeigen ist noch, dass ein g¨ultiger Ablaufplan beginnend mit derAnfangsmarkierung f¨ur den Schaltvektor existiert Diese existiert allerdings nicht,weshalb, wie bereits zuvor mit den aufz¨ahlenden Verfahren gezeigt, das Petri-Netzirreversibel ist F¨ur alle anderen erreichbaren Markierungen kann allerdings mit der
Stelleninvariante iTgezeigt werden, dass es sich bei diesen Markierungen um zust¨ande des Petri-Netzes handelt
Grund-5.1.3 Partialordnungsreduktion
Eine wesentliche Eigenschaft von Systemen mit nebenl¨aufigen Prozessen ist, dassg¨ultige Ausf¨uhrungen dieser Prozesse in unterschiedlichen Reihenfolgen stattfindenk¨onnen W¨ahrend diese Eigenschaft im Entwurf zur Optimierung ausgenutzt werdenkann, stellt dies ein großes Problem bei der Verifikation solcher Systeme dar, dahierdurch der zu untersuchende Zustandsraum sehr groß wird Man spricht von der
sog Zustandsraumexplosion Im Folgenden werden M¨oglichkeiten untersucht, die es
erlauben, den Zustandsraum f¨ur Systeme mit nebenl¨aufigen Prozessen zu reduzieren.Oftmals h¨angt das Ergebnis der Verifikation von Systemen mit nebenl¨aufigenProzessen gar nicht von der tats¨achlichen Ausf¨uhrungsreihenfolge ab In einem sol-chen Fall ist es denkbar, dass alle m¨oglichen Permutationen in der Ausf¨uhrungs-reihenfolge durch eine einzelne, ausgew¨ahlte Ausf¨uhrungsreihenfolge repr¨asentiert
werden Sei beispielsweise unter einer Markierung M die Ausf¨uhrung der Folge
t1,t2 m¨oglich Sei weiterhin unter M die Ausf¨uhrung der Folge t2,t1 ebenfalls m¨oglich und die beiden Schaltfolgen erreichen die selbe Folgemarkierung M , d h
M[t1,t2 M = M[t2,t1M, so k¨onnen die beiden Sequenzen in einer ¨
Aquivalenz-klasse zusammengefasst werden
Man kann also beobachten, dass das Erreichen eines Zustands von der
Schaltfol-ge der Transitionen unabh¨angig sein kann Man sagt auch, das Schalten der
Transi-tionen und somit die TransiTransi-tionen selbst sind unabh¨angig voneinander Das
Schal-ten zweier Transitionen ist genau dann voneinander unabh¨angig, wenn sie nicht imKonflikt stehen (keine gemeinsame Stelle im Vorbereich besitzen) und keine kau-sale Abh¨angigkeit zwischen ihnen besteht (das Schalten einer Transition keine not-wendige Bedingung f¨ur die Aktivierung der anderen Transition ist) Unabh¨angigeTransitionen k¨onnen in einem Petri-Netz existieren, da ein Petri-Netz lediglich ei-
ne partielle Ordnung f¨ur die Schaltfolge der Transitionen definiert Entsprechend
Trang 2werden Verfahren, welche die Unabh¨angigkeit von Transitionen zur Reduktion des
Zustandsraumes ausnutzen, als Partialordnungsreduktionen bezeichnet.
Beispiel 5.1.11 Gegeben ist das Petri-Netz in Abb 5.8a) Der zugeh¨orige
Erreich-barkeitsgraph ist in Abb 5.8b) dargestellt Man erkennt ein typisches Rautenmuster,welches durch die partielle Ordnung von Transitionen in einem Petri-Netz entstehenkann
Abb 5.8 a) Petri-Netz und b) zugeh¨origer Erreichbarkeitsgraph [189]
Man beachte, dass im Erreichbarkeitsgraphen in Abb 5.8b) in der Markierung
[1,0,0,1,0,0,0] die Ausf¨uhrung von t1und t4unabh¨angig voneinander ist, weshalbdie beiden Schaltfolgent1,t4 und t4,t1 in der selben Folgemarkierung resultie-
ren Weitere unabh¨angige Transitionen k¨onnen im Erreichbarkeitsgraph identifiziertwerden:
• Markierung [0,1,0,1,0,0,0]: Die Transitionen t2 und t4sind unabh¨angig
• Markierung [1,0,0,0,1,0,0]: Die Transitionen t1 und t5sind unabh¨angig
• Markierung [0,1,0,0,1,0,0]: Die Transitionen t2 und t5sind unabh¨angig.Somit sind ausgehende von der Markierung[0,1,0,1,0,0,0] die Schaltfolgen t2,t4,
t5, t4,t2,t5 und t4,t5,t4 ¨aquivalent und k¨onnen beispielsweise durch t2,t4,t5repr¨asentiert werden
In einem Erreichbarkeitsgraphen kann somit die Anzahl der m¨oglichen Pfadebeim Schalten der Transitionen reduziert werden, indem eine einzelne, repr¨asentati-
ve Schaltfolge gew¨ahlt wird Das Ergebnis ist ein reduzierter Erreichbarkeitsgraph.
Genauer gesagt wird eine Schaltfolge im Erreichbarkeitsgraphen beginnend bei
ei-ner Markierung M durch eine Referenzschaltfolge repr¨asentiert, wenn diese Folge
einem Pr¨afix einer beliebigen g¨ultigen Permutation einer Schaltfolge im ten Erreichbarkeitsgraphen entspricht Im obigen Beispiel bedeutet dies, dass die
Trang 3reduzier-Schaltfolget4,t2 ein Pr¨afix der Schaltfolge t4,t2,t5 darstellt, was eine g¨ultige
Per-mutation der Referenzschaltfolget2,t4,t5 ist, und deshalb durch diese repr¨asentiert
werden kann
Bei der Reduktion des Erreichbarkeitsgraphen ist allerdings die zu pr¨ufendeEigenschaft zu ber¨ucksichtigen Hierzu werden Transitionen in einem Petri-Netz
zun¨achst in sichtbare und nicht sichtbare Transitionen klassifiziert Sichtbare
Tran-sitionen werden entweder direkt in der zu pr¨ufenden Eigenschaft verwendet oder
es werden Stellen aus dem Vor- oder Nachbereich dieser Transition verwendet Beider Reduktion d¨urfen lediglich die nicht sichtbaren Transitionen verwendet werden.Dabei m¨ussen drei grundlegende Anforderungen ber¨ucksichtigt werden:
1 Eine hinreichende Menge an Referenzschaltfolgen muss erhalten bleiben, umdie Beobachtbarkeit aller Schaltreihenfolgen sichtbarer Transitionen sicherzu-stellen
2 Als eine Konsequenz aus 1 d¨urfen lediglich nicht sichtbare Transitionen bei derReduktion Verwendung finden Es kann allerdings im Fall von Lebendigkeitsei-genschaften notwendig sein, nicht sichtbare Transitionen zu erhalten Aber nichtzwangsl¨aufig alle
3 Aus den ersten beiden Punkten folgt direkt die Frage, ob sich bei einer nen zu pr¨ufenden Eigenschaft eine Reduktion ¨uberhaupt lohnt Dies ist offen-sichtlich nicht der Fall, wenn alle Transitionen sichtbar sind
gegebe-Die Konstruktion des reduzierten Erreichbarkeitsgraphen wird in der Regel nichtdurch Reduktion des bereits konstruierten Erreichbarkeitsgraphen erfolgen, sonderndie Reduktion erfolgt bereits bei der Konstruktion Dies ist m¨oglich, da die Un-abh¨angigkeit von Transitionen aus der Struktur des Petri-Netzes erkennbar ist Dabeiwerden im Wesentlichen Konflikte zwischen Teilmengen von schaltbereiten Transi-tionen analysiert Existiert eine Teilmenge an schaltbereiten Transitionen, die nicht
im Konflikt mit schaltbereiten Transitionen außerhalb dieser Menge stehen, k¨onnendie Transitionen dieser Teilmenge schalten Dabei wird keiner der nicht ber¨ucksich-tigten Transitionen die Schaltbereitschaft entzogen Diese bleiben somit in sp¨aterenMarkierung weiterhin schaltbereit Allerdings kann es bei diesem Vorgehen passie-ren, dass relevante Schaltfolgen ¨ubersehen werden Hierf¨ur gibt es zwei Gr¨unde:
1 Das Ignoranzproblem entsteht, wenn eine schaltbereite Transition niemals
schal-tet Dies kann insbesondere auftreten, wenn Transitionen unter s¨amtlichen kierungen unabh¨angig bleiben Ein einfaches Beispiel hierf¨ur sind zwei nichtzusammenh¨angende Petri-Netze
Mar-2 Das Irritationsproblem entsteht, wenn eine Markierung niemals betreten wird,
obwohl diese eine Anfangsmarkierung f¨ur eine Referenzschaltfolge ist Ein
Bei-spiel hierf¨ur ist in Abb 5.8a) zu sehen Die Transitionen t1und t4sind in der
Anfangsmarkierung M0unabh¨angig voneinander Wird eine der beiden
Transi-tionen niemals ausgef¨uhrt (z B t4), gehen hierdurch alle Schaltfolgen verloren,
welche die Transition t6enthalten Dies liegt daran, dass der Konflikt, der
zwi-schen t1und t6besteht, unter der Anfangsmarkierung nicht gesehen wird dings wird dieser nach Ausf¨uhrung der Schaltfolget4,t5 sichtbar.
Trang 4Aller-Im Folgenden werden zwei Verfahren zur Partialordnungsreduktion vorgestellt.
Die Stubborn-Set-Methode und die Sleep-Set-Methode nutzen dabei die oben
disku-tierten Eigenschaften bei der Reduktion aus
Irritati-die mit Transitionen markiert sind, Irritati-die nicht in dem stubborn set enthalten sind,
wer-den gel¨oscht Da nicht zwangsl¨aufig alle schaltbereiten Transitionen enthalten sind,kann dies zu einer Reduktion des Erreichbarkeitsgraphen f¨uhren Durch die Aus-wahl der Transitionen ist dabei sichergestellt, dass jede schaltbereite Transition, die
nicht in dem stubborn set aufgenommen wird, unter jeder Folgemarkierung ebenfalls
2 Falls die ausgew¨ahlte Transition t ∈ T nicht schaltbereit ist, w¨ahle eine Stelle
p ∈ •t mit M(p) < W(p,t), also eine Stelle, die aufgrund fehlender Marken die Schaltbereitschaft von t verhindert Zu dieser Stelle werden alle Transitionen aus deren Vorbereich ebenfalls in das stubborn set aufgenommen, d h {t ∈ T | t ∈
•p}.
Diese Bedingungen haben zur Folge, dass die Bestimmung des stubborn set eine
Fixpunktberechnung ist Es k¨onnen in jedem Schritt, wenn neue Transitionen genommen werden, weitere Bedingungen verletzt sein, die wiederum die Aufnahme
hinzu-weiterer Transitionen in das stubborn set verlangen Im schlimmsten Fall sind schließend alle Transitionen des Petri-Netzes in dem stubborn set enthalten Das andere Extrem ist, dass lediglich eine unabh¨angige Transition in der stubborn set
an-enthalten ist
Beispiel 5.1.12 Es wird das Petri-Netz aus Abb 5.8a) betrachtet Unter der markierung M0sind die Transitionen t1und t4schaltbereit Das stubborn set ergibt
Anfangs-sich hierbei zu{t1,t6,t5,t4,t3,t2} Dabei wurde zun¨achst die schaltbereite Transition
t1ausgew¨ahlt Diese besitzt allerdings einen strukturellen Konflikt mit Transition t6,
weshalb t6ebenfalls mit in das stubborn set aufgenommen werden muss Da t6nicht
aktiviert ist, muss die Eingangsstelle p6betrachtet werden und alle Transitionen aus
dem Vorbereich von p6ebenfalls in das stubborn set aufgenommen werden Die
ein-zige Transition aus dem Vorbereich•p6 ist Transition t Da auch t nicht schaltbereit
Trang 5ist, wird auch t4mit aufgenommen Welche wiederum einen strukturellen Konflikt
mit t3besitzt Schließlich wird auch noch t2mit in das stubborn set aufgenommen,
da t3 nicht schaltbereit ist An dieser Stelle ist ein Fixpunkt erreicht Da die
Tran-sitionen t1und t4in dem stubborn set enthalten sind, kann in diesem ersten Schritt
keine Vereinfachung des Erreichbarkeitsgraphen (siehe Abb 5.8b)) erzielt werden
In der Folgemarkierung[0,1,0,1,0,0,0] kann die schaltbereite Transition t2gew¨ahlt werden Da diese bereits alle Anforderungen erf¨ullt, schaltet lediglich diese
aus-Man beachte, dass aber ebenfalls t4weiterhin schaltbereit war H¨atte man zuerst t4
in das stubborn set aufgenommen, h¨atte t4aufgrund der geforderten Bedingungenauf{t4,t3,t2} erweitert werden m¨ussen, was in diesem Schritt wiederum zu keiner
Zustandsraumreduktion gef¨uhrt h¨atte Der reduzierte Erreichbarkeitsgraph nach wendung der Stubborn-Set-Methode ist in Abb 5.9 zu sehen
Stubborn-• Der Wahl einer schaltbereiten Transition.
• Der Wahl der Eingangsstelle einer nicht schaltbereiten Transition.
• Der Prozedur, um dem Ignoranzproblem zu begegnen.
Je nachdem wie die Stubborn-Set-Methode umgesetzt ist, k¨onnen
unterschied-liche stubborn sets ermittelt werden Die Frage, welche dieser Mengen
verwen-det werden sollte, kann durch die Einschlussbedingung bestimmt werden In
Trang 6obi-gen Beispiel w¨are unter der Markierung[0,1,0,1,0,0,0] das stubborn set {t2} oder
{t4,t3,t2} m¨oglich Da {t2} in {t4,t3,t2} enthalten ist, kann {t2} ausgew¨ahlt werden,
da t2schaltbereit ist
Die Sleep-Set-Methode
In der Sleep-Set-Methode wird mit jedem Knoten im vollst¨andigen
Erreichbarkeits-graphen ein sog engl sleep set assoziiert Im Gegensatz zur Stubborn-Set-Methode repr¨asentiert das sleep set, welche schaltbereiten Transitionen nicht schalten soll-
ten Die Entscheidung, dass eine schaltbereite Transition nicht schalten soll, basiertauf dem Wissen, dass die Folgemarkierung, die durch das Schalten dieser Transiti-
on erreicht wird, auch auf anderem Weg erreicht werden kann Somit eliminiert dieSleep-Set-Methode Kanten aus dem Erreichbarkeitsgraphen
Sleep sets werden w¨ahrend der Konstruktion des Erreichbarkeitsgraphen baut Zu Beginn sind alle sleep sets leer Gegeben sei eine Markierung M und das assoziierte sleep set F¨ur alle unter M schaltbereiten Transitionen t mit Ausnahme der Transitionen in dem sleep set werden die Folgemarkierungen M bestimmt Ist durch
aufge-Schalten von t ein noch nicht besuchter Knoten mit Markierung M des
Erreich-barkeitsgraphen erreicht worden, so wird das zu M assoziierte sleep set berechnet, indem das sleep set von M kopiert wird Zu dem mit M assoziierten sleep set werden nun alle Transitionen, die in M vor t geschaltet haben, hinzugef¨ugt und alle Transi- tionen entfernt, die in einem Konflikt mit t unter der Markierung M stehen
Beispiel 5.1.13 Es wird wiederum das Petri-Netz aus Abb 5.8a) betrachtet F¨ur die Anfangsmarkierung M0ist das sleep set leer Es wird das Schalten der Transitionen
t1und t4in dieser Reihenfolge betrachtet F¨ur die Folgemarkierung M1mit M0[t1M1
ist das sleep set weiterhin leer F¨ur die Folgemarkierung M2mit M0[t4M2, welche
sich durch das Schalten von t4ergibt, besteht das sleep set aus dem Element t1, da t1
vor t4geschaltet hat Aus diesem Grund schaltet in M2lediglich t5, w¨ahrend in M1die
beiden Transitionen t2und t4schalten usw Der reduzierte Erreichbarkeitsgraph, dersich durch Anwendung der Sleep-Set-Methode ergibt, ist in Abb 5.10 dargestellt.Die Sleep-Set-Methode reduziert die Kanten in einem Erreichbarkeitsgraphenund somit die Anzahl der Vergleiche von neuen und bereits besuchten Markierungen.Eine Zustandsraumreduktion in dem Sinne, dass Knoten im Erreichbarkeitsgraphengel¨oscht werden, wie dies in der Stubborn-Set-Methode der Fall ist, wird dabei nichtvorgenommen, da die Sleep-Set-Methode das Ziel hat, alle erreichbaren Markierun-gen zu erhalten Dies sieht man auch, wenn man Abb 5.9 mit Abb 5.10 vergleicht
Da alle Knoten erhalten bleiben, kann man aber weiterhin alle eigenschaften, die auf dem nichtreduzierten Erreichbarkeitsgraphen gepr¨uft werdenk¨onnen, auch auf dem reduzierten Erreichbarkeitsgraphen pr¨ufen Allerdings las-sen sich Lebendigkeitseigenschaften nicht mehr allgemein verifizieren In Abb 5.10w¨urde die Markierung[0,1,0,0,0,1,0] f¨alschlicherweise als Verklemmung identifi-
Erreichbarkeits-ziert
Trang 7Die Sleep-Set-Methode l¨asst sich auch mit der Stubborn-Set-Methode
kombi-nieren Dabei werden in jeder Markierung die Transitionen des sleep set aus dem stubborn set entfernt.
Beispiel 5.1.14 Das Ergebnis der Kombination von Sleep-Set- und
Stubborn-Set-Methode ist in Abb 5.11 zu sehen Es wird wiederum das Petri-Netz aus Abb 5.8a)betrachtet Ausgangspunkt ist diesmal allerdings der reduzierte Erreichbarkeits-graph, der sich durch Anwendung der Stubborn-Set-Methode ergeben hat (sieheAbb 5.9) Entscheidend ist, dass in der Markierung[1,0,0,0,0,1,0] das stubborn set {t1,t6} sowie das sleep set {t1} gilt, weshalb lediglich t6weiter betrachtet wird.Der in Abb 5.11 gezeigte reduzierte Erreichbarkeitsgraph erlaubt keine weitere Re-duktion
5.2 Explizite Modellpr ¨ufung
F¨ur die im vorangegangenen Kapitel beschriebenen Verifikationsmethoden zur genschaftspr¨ufung von Petri-Netzen stellt der Erreichbarkeitsgraph ein zentrales Ele-ment dar Ist die Erreichbarkeitsmenge und somit der Zustandsraum endlich, k¨onnenPetri-Netze als temporale Strukturen (siehe Definition 2.4.1 auf Seite 73) repr¨asen-tiert werden F¨ur Modelle mit endlichem Zustandsraum wurden in den vergangenenJahren effiziente Verfahren zur ¨Uberpr¨ufung von Erreichbarkeits-, Gefahrlosigkeits-und Lebendigkeitseigenschaften entwickelt Da all diese Verfahren ein Modell des zu
Trang 85.2.1 CTL-Modellpr ¨ufung
CTL-Formeln werden aus aussagenlogischen Formeln gebildet, indem temporaleOperatoren, Pfadquantoren und logische Operatoren verwendet werden (siehe De-finition 2.4.6 auf Seite 78) Da jedem temporalen Operator direkt ein Pfadquantorvoran steht, gibt es in CTL acht Operatoren mit Verzweigungslogik, wobei die dreiOperatoren EX, EG und EU mit den aussagenlogischen Operatoren ∨ und ¬ eine
vollst¨andige Basis bilden, in der sich alle acht Operatoren darstellen lassen In
CTL-lassen sich Erreichbarkeits- (EF), Gefahrlosigkeits- (AG) und schaften (AG AF) formulieren Im Folgenden wird beschrieben, wie CTL-Formeln auf einer gegebenen temporalen Struktur M gepr¨uft werden k¨onnen.
Lebendigkeitseigen-Gegeben sei eine temporale Struktur M = (S,R,L), bestehend aus Zust¨anden S,
einer ¨Ubergangsrelation R, einem Anfangszustand s0∈ S und einer funktion L : S → 2 V, die jedem Zustand eine Teilmenge an aussagenlogischen Varia-
Markierungs-blen (atomaren Formeln) aus V zuordnet Weiterhin gegeben sei eine CTL-Formelϕ
Trang 9Die Aufgabe der Modellpr¨ufung besteht nun darin, alle Zust¨ande in der temporalen
Struktur M zu identifizieren, in denenϕgilt:
SAT(M,ϕ) := {s ∈ S | M,s |=ϕ} (5.10)
Oftmals ist die Verifikationsaufgabe in der Form M ,s0 |=ϕgegeben In diesem Fall
muss lediglich gepr¨uft werden, ob s0∈ SAT(M,ϕ) ist
Ein Algorithmus zur CTL-Modellpr¨ufung kann direkt aus der Semantik von CTL(siehe Definition 2.4.7 auf Seite 78) abgeleitet werden und basiert auf der Berech-nung von kleinsten und gr¨oßten Fixpunkten CTL-Fixpunktberechnung ist in An-hang C.4 beschrieben Gleichung (5.11) zeigt die Fixpunktdefinitionen f¨ur sechsOperatoren mit Verzweigungslogik, wobeiμy den kleinsten undνy den gr¨oßten Fix- punkt eines Funktionals y charakterisiert Zur Definition der Operatoren EXϕund
AXϕwird keine Fixpunktberechnung ben¨otigt
Die Berechnung der Zust¨ande SAT(M,ϕ), in denenϕgilt, erfolgt analog zur finition 2.4.7 der Relation|=, also auf der Struktur der Formel Dies bedeutet, dass
De-zun¨achst diejenigen Zust¨ande bestimmt werden, in denen die verwendeten genlogischen Variablen wahr sind Anschließend werden, basierend auf der Seman-tik von CTL f¨ur komplexere Teilformeln, die assoziierten Zust¨ande bestimmt Dieswird sukzessive wiederholt, bis alle Operatoren der CTL-Formel abgearbeitet sind
aussa-Beispiel 5.2.1 Gegeben ist eine temporale Struktur M und die CTL-Formel AG(ϕ⇒
AFψ) Diese Formel l¨asst sich als Syntaxbaum darstellen (siehe Abb 5.12) DerQuellknoten repr¨asentiert die gesamte CTL-Formel Bl¨atter des Syntaxbaums sindaussagenlogische Variablen
Zur Berechnung von SAT(M,ϕ) aus Gleichung (5.10) ist die Umsetzung derfolgenden Teilberechnungen hinreichend:
• Berechnung der Markierungsfunktion L(s) auf den Zust¨anden s ∈ S der ralen Struktur M
Trang 10⇒
ψ
Abb 5.12 Syntaxbaum der CTL-Formel AG(ϕ⇒ AFψ) [272]
• Berechnung von logischen Operatoren auf Mengen
• Auswertung des Operators EX
• Berechnung der Fixpunkte f¨ur EG und EU
Im Folgenden wird die Umsetzung dieser Teilberechnungen diskutiert
Die Verifikationsmethode
Zentraler Bestandteil der Fixpunktberechnungen und damit der
Verifikationsmetho-de ist die Berechnung Verifikationsmetho-des Operators EX p Ist f¨ur eine temporale Struktur M=
(S,R,L) bereits die Menge der Zust¨ande S p ⊆ S bekannt, in denen p gilt, so m¨ussen
f¨ur diese Zust¨ande die direkten Vorg¨anger bestimmt werden Eine Funktion, die dieserf¨ullt, ist COMPUTE EX:
Die Funktion erh¨alt als Argumente die temporale Struktur M und die Menge S p
der Zust¨ande, in denen p gilt Beginnend mit der Menge aller Zust¨ande S := S
Trang 11wird die Fixpunktberechnung durchgef¨uhrt Hierzu werden sukzessive Zust¨ande aus
S N gel¨oscht Daf¨ur werden in jedem Schritt die Vorg¨angerzust¨ande zu denjenigen
Zust¨anden bestimmt, die noch in S N enthalten sind und in denen p gilt Dies wird
solange wiederholt, bis keine Zust¨ande mehr gel¨oscht werden, also ein Fixpunkt reicht ist
er-Des weiteren wird eine Funktion ben¨otigt, die den Operator E p U q tiert Sei S p die Menge aller Zust¨ande, in denen p gilt, und S q die Menge aller
implemen-Zust¨ande, in denen q gilt Die Funktion muss diejenigen Zust¨ande bestimmen, die mit q markiert sind oder Anfang eines Pfades mit Zust¨anden nur aus S psind, bis er
mit mindestens einem Zustand aus S q endet Dies wird in der Funktion
Die Funktion erh¨alt als Argumente die temporale Struktur M und die Mengen S pund
S q Beginnend mit der leeren Menge S N:= ∅ wird die Fixpunktberechnung
durch-gef¨uhrt Hierzu werden sukzessive Zust¨ande zu S N hinzugef¨ugt Daf¨ur werden in
jedem Schritt diejenigen Zust¨ande bestimmt, in denen q gilt oder in denen p gilt und zus¨atzlich in einem darauf folgenden Schritt q Dies wird solange wiederholt, bis
keine Zust¨ande mehr hinzugef¨ugt werden
Schließlich wird eine Methode ben¨otigt, welche die Auswertung der rungsfunktion und die Berechnung von logischen Operatoren auf Mengen implemen-tiert Dies geschieht in der Methode COMPUTE Als Argumente erh¨alt die Methode
Markie-die temporale Struktur M sowie Markie-die CTL-Formelϕ
Trang 12rekursive Berechnung der Argumente und Aufruf der entsprechenden Funktionenrealisiert.
Beispiel 5.2.2 Gegeben ist die temporale Struktur M in Abb 5.13 Es sollen mit
der oben beschriebenen Verifikationsmethode diejenigen Zust¨ande bestimmt werden,welche die CTL-Formelϕerf¨ullen
Abb 5.13 Temporale Struktur
In einem ersten Schritt muss die CTL-Formelϕso umgeformt werden, dass sievon der Funktion COMPUTE bearbeitet werden kann, also nach ¨Aquivalenzumfor-mungen nur die ber¨ucksichtigte Basis an Operatoren verwendet wird:
ϕ = AF AG p
= AF ¬EF ¬p
= ¬EG EF ¬p
= ¬EG E T U ¬p
Trang 13Nun kann mittels der Funktion COMPUTE die Menge der Zust¨ande Sϕ bestimmtwerden, in denenϕgilt Die Berechnung erfolgt in mehreren Schritten:
1 S p:= {s0,s2,s3,s6}
2 S ¬ p:= S\S p = {s1,s4,s5}
3 SE T U¬ p:=COMPUTE EU(M, S, S¬ p) Die entsprechende
Fixpunktberech-nung ist in Abb 5.14 zu sehen Zun¨achst werden dabei alle Zust¨ande in S ¬ p
markiert (Abb 5.14a)) Im zweiten Schritt (Abb 5.14b)) werden diejenigen
Zust¨ande hinzugenommen, die einen Zustand aus S ¬ pin einem Schritt erreichenk¨onnen Im dritten Schritten werden die Zust¨ande hinzugenommen, die einen
Zustand in S ¬ pin zwei Zustands¨uberg¨angen erreichen k¨onnen In diesem drittenSchritt kommen keine weiteren Zust¨ande hinzu, weshalb der kleinste Fixpunkt
erreicht wurde Die Menge SE T U¬ pergibt sich zu{s0,s1,s2,s4,s5}.
Abb 5.14 Bestimmung von ET U ¬p In zwei Iterationsschritten ist der Fixpunkt erreicht
4 SEG E T U¬ p:= COMPUTE EG(M, SE T U¬ p) Die Fixpunktberechnung ist inAbb 5.15 zu sehen Da es sich um die Berechnung des gr¨oßten Fixpunktes han-delt, sind zun¨achst alle Zust¨ande Teil der L¨osung (Abb 5.15a)) Diese Menge
wird reduziert, indem alle Zust¨ande, die nicht Element in SE T U¬ psind, fernt werden (Abb 5.15b)) Von der resultierenden Menge an Zust¨anden wer-
ent-den diejenigen entfernt, die keinen Zustand s ∈ SETU¬ pin genau einem stands¨ubergang erreichen k¨onnen (Abb 5.15c)) Von dieser Menge an Zust¨anden
Zu-werden wiederum diejenigen Zust¨ande entfernt, die keinen Zustand s ∈ SETU¬ p
in genau zwei Zustands¨uberg¨angen erreichen k¨onnen (Abb 5.15d))
Anschlie-ßend werden noch diejenigen Zust¨ande entfernt, die keinen Zustand in SE T U¬ p
in genau drei Zustands¨uberg¨angen erreichen k¨onnen An dieser Stelle bleibtdie Zustandsmenge konstant und der gr¨oßte Fixpunkt ist gefunden Die Men-
ge SEG E T U¬ pergibt sich zu{s2,s4,s5}.
5 In einem letzten Schritt muss noch die Differenzmenge zur Zustandsmenge der
temporalen Struktur gebildet werden Sϕ = S¬EG E T U¬ p:= S\SEG E T U¬ p=
{s0,s1,s3,s6}.
Die Zust¨ande in Sϕ besitzen auf allen Berechnungspfaden, die in einem dieser stand beginnt, somit die Eigenschaft, dass irgendwann in der Zukunft alle weiteren
Trang 14Abb 5.15 Bestimmung von EG ET U ¬p
Berechnungen auf allen erdenklichen Pfaden die Markierung p besitzen Dies tiert aus der Schleife zwischen s3und s6 F¨ur die Zust¨ande s2, s4 und s5 existiert
resul-hingegen ein Pfad, auf dem nicht st¨andig p gilt Dieser Pfad verl¨auft exakt ¨uber diese
drei Zust¨ande
Die bis hier beschriebene Modellpr¨ufung basiert auf der expliziten Aufz¨ahlung
von Zust¨anden Deshalb wird dieses Verfahren auch als explizite Modellpr¨ufung zeichnet Eine implizite Modellpr¨ufung basiert auf der symbolischen Repr¨asentation
be-von Zustandsr¨aumen mittels charakteristischer Funktionen Diese Verfahren werden
in Abschnitt 5.3 beschrieben
5.2.2 LTL-Modellpr ¨ufung
W¨ahrend CTL-Formeln sog Zustandsformeln sind, handelt es sich bei LTL-Formeln
um Pfadformeln, die funktionale Eigenschaften von unendlich langen Pfaden
be-schreiben (siehe Abschnitt 2.4.2) Modellpr¨ufung f¨ur LTL-Formeln kann somit nichtmehr allein durch das bloße Markieren von Zust¨anden durchgef¨uhrt werden Diesliegt darin begr¨undet, dass ein endlicher Automat im Allgemeinen unendlich vieleverschiedene Ausf¨uhrungssequenzen mit unendlicher L¨ange besitzt
Beispiel 5.2.3 Betrachtet man die LTL-Formelϕ:= GF p, so muss es in einer poralen Struktur, die Modell f¨urϕ ist, eine unendliche Sequenzs0,s1, mit un- endlich vielen Positionen s n1,s n2, geben, in denen p gilt Zwischen diesen Positio-
tem-nen kann es beliebig, aber endlich viele Zust¨ande geben, in detem-nen¬p gilt Versucht
Trang 15man dies in einer Formel auszudr¨ucken, so erh¨alt man((¬p) ∗ p)ω, wobei∗ die
Be-deutung von
”beliebig, aber endlich“ undωvon
”unendlich“ vielen Wiederholungenbesitzt Ein Gegenbeispiel f¨urϕh¨atte entsprechend die Form(p ∨ ¬p) ∗ (¬p)ω.
Die in diesem Beispiel eingef¨uhrte Schreibweise wird zur Formulierung von sog
ω-regul¨aren Ausdr¨ucken verwendet Es handelt sich dabei um eine Erweiterung der bekannten regul¨aren Ausdr¨ucke W¨ahrend sich regul¨are Ausdr¨ucke noch mit endli-
chen Automaten modellieren lassen, ist dies f¨urω-regul¨are Ausdr¨ucke nicht mehrm¨oglich
LTL-Modellpr¨ufung basiert auf der Erkenntnis, dass zu jeder LTL-Formel ϕeinω-regul¨arer AusdruckEϕgebildet werden kann, der alle g¨ultigen Ausf¨uhrungs-sequenzen f¨ur ϕ darstellt Somit kann die Modellpr¨ufung M |= ϕ f¨ur eine ge-
gebene temporale Struktur M in folgende Frage umformuliert werden:
”Sind alle
Ausf¨uhrungssequenzen von M wie in Eϕbeschrieben?“
Die Repr¨asentation einesω-regul¨aren Ausdrucks kann mittels eines sog Automaten erfolgen.
B¨uchi-Definition 5.2.1 (B ¨uchi-Automat) Ein B¨uchi-Automat ist ein 4-Tupel B = (S B ,R B ,
• A B ⊆ S B die Menge akzeptierender Zust¨ande ist.
Die Markierungsfunktion L B ordnet jedem Zustand eine Menge
aussagenlogi-scher Variablen v ∈ V (atomaren Formeln) zu Die Zustands¨ubergangsrelation muss nicht total sein Weiterhin ist eine Menge an Anfangszust¨anden S B ,0 ⊆ S Bimplizitgegeben
Sei ˜s := s0,s1, ein unendlicher Pfad aus Zust¨anden si ∈ S B, mit ∀i ≥ 0 : (s i ,s i+1 ) ∈ R B , durch den B¨uchi-Automaten B gegeben, dann sei inf(˜s ⊆ S B) die
Menge an Zust¨anden s ∈ S B, die unendlich oft in ˜s auftreten Die Sprache L(B), die
von einem B¨uchi-Automaten akzeptiert wird, ist die Menge aller Pfade, in denen einakzeptierender Zustand unendlich oft auftritt, d h