Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Teil II.1 Wiederholung: Skript Esparza, Kapitel 1 und 2 Definition 1.3.3: Sei N ein Netz und sei M eine Markierung von N. Eine endliche Sequenz = t 1...

Ähnliche Präsentationen


Präsentation zum Thema: "Teil II.1 Wiederholung: Skript Esparza, Kapitel 1 und 2 Definition 1.3.3: Sei N ein Netz und sei M eine Markierung von N. Eine endliche Sequenz = t 1..."—  Präsentation transkript:

1 Teil II.1 Wiederholung: Skript Esparza, Kapitel 1 und 2 Definition 1.3.3: Sei N ein Netz und sei M eine Markierung von N. Eine endliche Sequenz = t 1... t n heißt von M aktivierte endliche Schaltfolge, wenn Markierungen M 1, M 2,...M n existieren, so dass M t 1 M 1 t 2 M 2 t 3... t n M n. Eine unendliche Sequenz = t 1 t 2 t 3... heißt von M aktivierte unendliche Schaltfolge, wenn Markierungen M 1, M 2,... existieren, so dass M t 1 M 1 t 2 M 2 t 3... Proposition Eine endliche oder unendliche Sequenz wird von einer Markierung M aktiviert genau dann, wenn jedes endliche Präfix von von M aktiviert wird. Lemma (Das Monotonielemma) Seien M und L Markierungen eines Netzes (1) Wenn M M für eine endliche Sequenz, dann (M + L) (M + L) (2) Wenn M für eine unendliche Sequenz, dann (M + L).

2 Lemma (Das Vertauschungslemma) Sei N (S; T; F) ein Netz und seien U, V disjunkte Teilmengen von T mit U V =. Sei eine (endliche oder unendliche) Sequenz von Transitionen mit A( ) U V, wobei A( ) das Alphabet von ist (d.h. die Menge der t aus T ist, die in vorkommen). Sei ferner = / U und = / V. (1) Ist endlich und gilt M M, dann gilt M M. (2) Ist unendlich, ist endlich und gilt M, dann gilt M. (3) Ist unendlich, ist unendlich und gilt M, dann gilt M. Zum Beweis vgl. Teil 1, Folie 21: Feststellung: * Seien u, v aus T mit v u =, dann gilt mit m[vu > m´ auch m[uv > m´. Also können die in vorkommenden u aus U der Reihe nach nach links gebracht (vor allen v aus V in ausgeführt) werden.

3 2.0.1 Ein Puffer mit Kapazität n Wir modellieren einen Puffer mit Kapazität für n Nachrichten. Abbildung 2.1 zeigt das Netzsystem für n = 3. Das System besteht aus n Zellen, jeweils mit Kapazität für eine Nachricht. Die Eingabe einer neuen Nachricht wird durch das Schalten von t 1 modelliert. Das Schalten einer Transition t i, 1

4 Konsistenz: Keine Zelle ist gleichzeitig leer und voll (d.h., keine erreichbare Markierung markiert gleichzeitig die Stelle s i und die Stelle s i+1 für i =1, 2, 3). Sicherheit: Keine erreichbare Markierung hat mehr als eine Marke auf einer Stelle. Deadlock-Freiheit: Jede erreichbare Markierung hat mindestens einen Nachfolger. Sogar: Jede Zelle kann immer wieder gefüllt und geleert werden (jede Transition kann immer wieder schalten). Kapazität n: Der Puffer hat tatsächlich Kapazität n, d.h., es gibt eine erreichbare Markierung, in der alle Zellen voll sind (in der die Stellen s 1, s 3, s 5 markiert sind). Die Anfangsmarkierung kann immer wieder erreicht werden. Zwischen zwei beliebigen erreichbaren Markierungen gibt es einen Weg mit Länge höchstens 6. Weitere Beispiele (wechselseitiger Ausschluss (Petersons Algorithmus), Aktion/Reaktion-Protokoll).

5 Definition: Die Schranke einer Stelle S in einem beschränkten System (N;M 0 ) ist die Zahl max{ M(s) | M [M 0 >}. (N;M 0 ) heißt b-beschränkt, wenn keine Stelle eine größere Schranke als b hat. In der Vorlesung werden folgende Probleme untersucht: Verklemmungsfreiheit: Ist ein gegebenes Netzsystem (N;M 0 ) verklemmungsfrei? Lebendigkeit: Ist ein gegebenes Netzsystem (N;M 0 ) lebendig? Beschränktheit: Ist ein gegebenes Netzsystem (N;M 0 ) beschränkt? b-Beschränktheit: Gegeben b IN und (N;M 0 ), ist (N;M 0 ) b-beschränkt? Erreichbarkeit: Gegeben ein Netzsystem (N;M 0 ) und eine Markierung M von N, ist M erreichbar aus M 0, d.h. ist M [M 0 >?

6 Proposition (1) Ist (N;M 0 ) lebendig, so ist (N;M 0 ) verklemmungsfrei. (2) Ist (N;M 0 ) beschränkt, so ist(N;M 0 ) b-beschränkt für eine Zahl b. (3) Ist (N;M 0 ) beschränkt, so hat (N;M 0 ) nur endlich viele erreichbare Markierungen. Beweis. (1) und (2) folgen ummittelbar aus den Definitionen. (3) folgt aus den Definitionen und aus der Tatsache, daß ein Netzsystem nur endlich viele Stellen und Transitionen hat. Definition (Wohlgeformte Netze) Ein Netz N ist wohlgeformt, wenn eine lebendige und beschränkte Markierung von N existiert. Wir werden auch folgendes Problem betrachten: Wohlgeformtheit: Ist ein gegebenes Netz N wohlgeformt?

7 II.2 Skript Esparza, Teil II, Analysemethoden Im Kapitel 3 wird gezeigt (meistens ohne Beweise), dass die Probleme Verklemmungsfreiheit, Lebendigkeit, Beschränktheit, b-Beschränktheit und Erreichbarkeit entscheidbar sind. Die Algorithmen, die diese Probleme lösen, haben aber eine sehr hohe Komplexität, und Ergebnisse der Komplexitätstheorie zeigen, dass keine effizienten Algorithmen für diese Probleme existieren. Weil Effizienz unentbehrlich für die praktische Anwendung ist, muss man sich mit Halbentscheidungsalgorithmen für allgemeine Systeme oder mit Entscheidungsalgorithmen für eingeschränkte Systemklassen zufrieden geben. Unter einem effizienten Halbentscheidungsalgorithmus für die Eigenschaft P verstehen wir einen schnellen positiven (negativen) Test für P: Wenn die Eingabe den Test besteht, dann gilt P (nicht P), wenn nicht, dann kann man nichts über P sagen. Kapitel 4 ist den Halbentscheidungsalgorithmen gewidmet. In Kapitel 5 werden effiziente Entscheidungsalgoritmen für drei Systemklassen entwickelt: S-, T-, und Free-Choice-Systeme.

8 II.2.1 Ein Algorithmus für das Beschränktheitsproblem Das Problem b-Beschränktheit ist offensichtlich entscheidbar: Wenn das Eingabe-Netz (N;M 0 ) n Stellen hat, dann gibt es (b+1) n b-beschränkte Markierungen des Netzes N. Um b-Beschränktheit zu entscheiden, kann man den Erreichbarkeitsgraphen von (N;M 0 ) schrittweise konstruieren, bis entweder die Konstruktion terminiert oder bis eine erreichbare Markierung gefunden wird, die nicht b-beschränkt ist. Beschränktheit ist offensichtlich rekursiv aufzählbar: Man konstruiert wieder den Erreichbarkeitsgraphen des Systems, Schritt für Schritt. Wenn das System beschränkt ist, dann terminiert die Konstruktion, weil es nur endlich viele erreichbare Markierungen gibt. Für unbeschränkte Systeme terminiert die Konstruktion nicht, und man erhält keine Antwort. Wir zeigen nun, dass Beschränktheit nicht nur rekursiv aufzählbar, sondern sogar entscheidbar ist. Dafür brauchen wir das folgende wichtige Lemma:

9 Lemma 3.1.1: Jede unendliche Folge A 0, A 1, A 2,... A j,... IN k mit |{ A i | i IN }| = enthält eine unendliche monotone Teilfolge A j 0 < A j 1 < A j 2 <... < A j m <... mit j n < j n+1 für n IN. [Dabei sei (a 1,a 2,..., a k ) < (b 1,b 2,..., b k ) gdw. a i b i für alle i mit 1ik und a p < b p für mindestens ein p mit 1pk.] Beweis: Durch Induktion über k. Basis: k = 1. Trivial, weil dann alle A i IN. Man kann die Teilfolge so aufbauen: Es sei A j m+1 die kleinste der Zahlen A n mit n >j m und A n > A j m. Schritt: k > 1. Jedes A i = (a i 1,... a i k ) wird zerlegt in A i = (a i 1,... a i k-1 ) und a i k. Wir setzen A i = (A i | a i k ). Mindestens eine der Mengen A = { A i | i IN } oder A = { a | Es existieren i IN und A i mit (A i |a) = A i } muss unendlich sein, wenn |{ A i | i IN }| = gilt.

10 A Ist A endlich, also A unendlich, dann gibt es eine nat. Zahl c, die als k-te Komponente in unendlich vielen Elementen A i der gegebenen Folge auftritt; d.h. für diese Elemente gilt A n = (A n |c), wobei n { p 1, p 2, p 3,... } IN und stets p m < p m+1. Für die Folge der zugehörigen A n folgt aus der Induktionsannahme, dass eine unendliche monotone Teilfolge A h 1 < A h2 < A h3 <.... existiert. Dann ist (A h 1 |c) < (A h2 |c) < (A h3 |c) <.... eine unendliche monotone Teilfolge der ursprünglich gegebenen Folge. Ist A endlich, so gibt es analog zum vorigen Fall ein (k-1)-Tupel C = (c 1, c 2,..., c k-1 ), das in unendlich vielen A i auftritt; diese haben also die Form A n = (C|a n ), wobei n { p 1, p 2, p 3,... } IN und stets p m < p m+1. Zur Folge der a pj gibt es eine unendliche monotone Teilfolge a h1 < a h2 < a h3 <.... Also ist (C, a h1 ) < (C, a h2 ) < (C|a h3 ) <... eine unendliche monotone Teilfolge der gegebenen Folge.

11 A Seien nun A und A unendlich. Aufgrund der Induktionsannahme für die Folge der A i gibt es eine unendliche monotone Teilfolge A h 1 < A h2 < A h3 <.... der Folge der A i. Aus der Teilfolge (A h1, a h1 ), (A h2, a h2 ), (A h3, a h3 ),... der Folge der A i lässt sich eine unendliche monotone Teilfolge der ursprünglichen Folge gewinnen, indem eine unendliche monotone Teilfolge der Folge a h1, a h2, a h3,.... konstruiert wird - etwa die Folge a q1 < a q2 < a q3 <.... Mit den zugehörigen A qi erhält man daraus die gesuchte Teilfolge (A q1, a q1 ), (A q2, a q2 ), (A q3, a q3 ),.... Fertig.

12 Satz (N;M 0 ) ist unbeschränkt gdw. es Markierungen M und L gibt mit L 0 und M 0 * M * (M + L). Bew.: : Aus dem Monotonielemma folgt M 0 * M * (M + L) * (M + 2 L) *.... Also ist [M 0 > unendlich und (N,M 0 ) unbeschränkt. : Wenn (N,M 0 ) unbeschränkt ist, dann ist [M 0 > unendlich. Zwischenbehauptung: Da [M 0 > unendlich ist, gibt es eine unendliche Schaltfolge M 0 t 1 M 1 t 2 M 2 t 3... mit |{M i |i IN}| =. Bew.: Da T endlich ist, hat jedes M aus [M 0 > nur endlich viele direkte Nachfolger M mit M t M und t T. Der Markierungsgraph des Netzsystems (N,M 0 ) hat also endlichen Ausgangsgrad. Wenn auf jedem unendlich langen Weg im Graphen von M 0 aus nur endlich viele verschiedene M aus [M 0 > vorkämen, müßte [M 0 > endlich sein. (Vgl. Lemma von König)

13 Aus Lemma folgt, dass in der Schaltfolge Markierungen M i und M j auftreten mit M i < M j und M 0 * M i * M j. Mit M = M i und L = M j - M i folgt dann die Behauptung. Satz Es gibt einen Algorithmus, der entscheidet, ob ein gegebenes Netzsystem (N;M 0 ) beschränkt ist. Beweis: Der Algorithmus konstruiert breadth first immer größere endliche Teile des Erreichbarkeitsgraphen, und testet nach Hinzufügen jeder neuen Kante, ob es eine Schaltsequenz M 0 * M * (M + L) mit L 0 gibt. Der Algorithmus terminiert entweder, wenn eine solche Sequenz gefunden wird, oder wenn keine neue Kante hinzugefügt werden kann. Im ersten Fall antwortet der Algorithmus unbeschränkt" und im zweiten Fall beschränkt".

14 Wenn (N;M 0 ) beschränkt ist, dann ist der erste Terminierungsfall unmöglich - wegen Satz Weil es nur endlich viele erreichbare Markierungen gibt, kommt aber der zweite Fall irgendwann einmal vor. Also terminiert in diesem Fall der Algorithmus und gibt die korrekte Antwort aus. Wenn (N;M 0 ) unbeschränkt ist, dann gibt es unendlich viele erreichbare Markierungen, und der zweite Terminierungsfall ist unmöglich. Wegen Satz kommt aber der erste Terminierungsfall irgendwann einmal vor. Also terminiert der Algorithmus auch in diesem Fall und gibt die korrekte Antwort aus. Bemerkung: Platzkomplexität O( 2 n ), n Anzahl der Stellen und Transitionen.

15 II.2.2 Algorithmen für die restlichen Probleme Die Entscheidbarkeit des Erreichbarkeitsproblems war ca. 10 Jahre lang offen und wurde von Pro. E.W. Mayr 1980 in seiner Dissertation (an der TUM) bewiesen. Leider ist der Algorithmus zu kompliziert für diese Vorlesung (hyperexponentieller Platz!). Wir werden nur zeigen, dass Verklemmungsfreiheit sich auf Erreichbarkeit reduzieren lässt. D.h. wir zeigen: Wenn es einen Algorithmus für Erreichbarkeit gibt, dann gibt es auch einen Algorithmus für Verklemmungsfreiheit. Zusammen mit dem Ergebnis von Pro. Mayr wird so gezeigt, dass Verklemmungsfreiheit entscheidbar ist. Der Beweis erfolgt in zwei Schritten. Wir betrachten zuerst das folgende Hilfsproblem P. P: Gegeben ist ein Netzsystem (N;M 0 ) und eine Menge R S von Stellen von N. Gibt es eine erreichbare Markierung M mit M(s) = 0 für alle s R? Dann zeigen wir, dass Verklemmungsfreiheit auf P, und P auf Erreichbarkeit reduzierbar ist.

16 Satz 3.2.1: Verklemmungsfreiheit ist auf P reduzierbar. Beweis. Sei (N;M 0 ) ein Netzsystem, und sei N = (S; T; F). Definiere S = { R S | t T : t R } d.h., ein Element von S enthält für jede Transition t mindestens eine Stelle im Vorbereich von t. Die folgenden zwei Aussagen sind unmittelbare Konsequenzen der Definition von S: (1) S ist endlich. (2) Eine Markierung M von N ist tot, gdw. die Menge R M = { s S | M(s) = 0 } der Stellen, die von M nicht markiert werden, Element von S ist. ( Denn M tot heißt t T: s t: M(s) = 0, was R M S bedeutet.) (N,M 0 ) ist verklemmungsfrei, wenn für kein M [M 0 > gilt R M S. Mit einem Algorithmus zur Entscheidung von P kann man für jede der endlich vielen Mengen R aus S entscheiden, ob ein M aus [M 0 > existiert mit R = R M. Also kann man mit einem Algorithmus für P entscheiden ob (N,M 0 ) verklemmungsfrei ist.

17 Satz 3.2.2: P ist auf Erreichbarkeit reduzierbar. Beweis: Seien (N;M 0 ) ein Netzsystem mit N = (S; T; F) und R eine Menge von Stellen von N. Wir konstruieren ein neues System (N,M 0 ), indem wir neue Stellen, Transitionen, Kanten und Marken zu (N,M 0 ) hinzufügen. Das machen wir in zwei Etappen (Abb. 3.1): Füge neue Stellen s 0 und r 0 hinzu. Lege eine Marke auf s 0. Füge eine Transition t 0 sowie Kanten (s 0, t 0 ) und (t 0, r 0 ) hinzu. Für jede Transition t T füge die Kanten (s 0, t) und (t, s 0 ) hinzu. Nur solange s 0 markiert bleibt, können die Transitionen von T ungehindert schalten. Die Transition t 0 kann jedoch jederzeit schalten, und wenn sie dies tut werden alle Transitionen von T tot", d.h. das System (N;M 0 ) wird gefroren". Für jede Stelle s S\R füge eine neue Transition t s und die Kanten (s, t s ), (r 0, t s ), (t s, r 0 ) hinzu. Wenn eine Marke auf r 0 liegt, dann können die Transitionen t s schalten. Diese Transitionen entleeren" die Stellen in S\R. Damit ist die Definition von (N,M 0 ) beendet.

18 Sei M r die Markierung von N, bei der nur auf r 0 eine Marke liegt, und sonst keine. Dann gilt: (1) Wenn es eine erreichbare Markierung M von (N,M 0 ) gibt, die keine Stelle von R markiert, dann ist M r erreichbar in (N,M 0 ). Um M r zu erreichen, schalte man erst Transitionen von T solange, bis M erreicht wird. Dann schalte man die Transition t 0, und anschließend Transitionen t s, bis keine Marken mehr auf den Stellen von S liegen. (2) Wenn M r erreichbar in (N, M 0 ) ist, dann gibt es eine erreichbare Markierung M von (N,M 0 ), die keine Stelle von R markiert. M r kann nur erreicht werden, wenn die Transition t 0 schaltet und vor dem Schalten dieser Transition keine Marken auf Stellen von R liegen (denn die Stellen von R können später nicht entleert werden). M ist die Markierung von N vor dem Schalten von t 0. Aus (1) und (2) folgt: Um zu entscheiden, ob es eine erreichbare Markierung M von (N,M 0 ) gibt, die keine Stelle von R markiert, reicht es, das System(N,M 0 ) zu konstruieren, und dann zu entscheiden, ob die Markierung M r erreichbar ist. Mit einem Algorithmus für Erreichbarkeit kann man also P entscheiden.

19 II.2.3 Algorithmen für beschränkte Netzsysteme In vielen Fällen der Praxis ist leicht zu zeigen, daß ein Netzsystem beschränkt ist. Dann ist die Menge der erreichbaren Markierungen endlich, und der Erreichbarkeitsgraph kann im Prinzip berechnet und gespeichert werden. Wenn der Erreichbarkeitsgraph vorhanden ist, dann sind Beschränktheit, b- Beschränktheit und Erreichbarkeit trivial. Wir zeigen nun, dass Verklemmungsfreiheit und Lebendigkeit sich auch leicht lösen lassen. Sei G = (V;E) der Erreichbarkeitsgraph eines Systems (N,M 0 ). Wir definieren die Relation * V V auf die folgende Weise: M * M gdw. M * M und M * M. * ist offensichtlich eine Äquivalenzrelation auf V. Jede Äquivalenzklasse V V von * definiert mit E= E (V V) eine starke Zusammenhangskomponente (V,E) von G. Starke Zusammenhangskomp. sind durch die Relation < geordnet: (V,E). Bem.: Es genügt zu fordern,dass M V, M V: M [M> gilt.

20 Definition 3.4.1: Eine starke Zusammenhangskomponente heißt maximal, wenn sie maximal bezüglich der Ordnung < ist. Proposition 3.4.2: Sei (N,M 0 ) ein Netzsystem. 1. (N,M 0 ) ist verklemmungsfrei gdw. jeder Knoten seines Erreichbarkeitsgraphen einen Nachfolger hat. 2. Falls das System (N,M 0 ) beschränkt ist, ist es lebendig gdw. in jeder maximalen starken Zusammenhangskomponente des Erreichbarkeitsgraphen für jede Transition t von N eine Markierung existiert, die t aktiviert. Beweis: Trivial. Mit Hilfe dieser Charakterisierung lassen sich Algorithmen für Verklemmungsfreiheit und Lebendigkeit in beschränkten Petrinetzen ableiten, die linear in der Größe des Erreichbarkeitsgraphen sind. Leider kann die Anzahl der erreichbaren Markierungen exponentiell in der Größe des Netzes wachsen. Deswegen sind die Algorithmen, die den Erreichbarkeitsgraphen konstruieren, zwar sehr nützlich, aber keine endgültige Lösung der Verifikationsprobleme.

21 II.3 Skript Esparza: Halbentscheidungsmethoden II.3 Lineare Algebra und lineare Programmierung In den nächsten zwei Sektionen werden wir Systeme von linearen Gleichungen und Ungleichungen mit ganzzahligen Koeffizienten konstruieren, die partielle Informationen über unsere Verifikationsprobleme liefern. Sei A eine Matrix und seien X und b Vektoren. Wir werden Aussagen folgender Art beweisen:

22 Wenn das Ungleichungssystem A X b eine rationalzahlige Lösung hat, dann ist das Netzsystem (N,M 0 ) beschränkt (hinreichende Bedingung) oder Wenn die Markierung M erreichbar ist, dann hat das Gleichungssystem A X = b eine natürlichzahlige Lösung" (notwendige Bedingung). Diese Aussagen führen unmittelbar zu Halbentscheidungsalgorithmen für Beschränktheit und die restlichen Verifikationsprobleme. Die Komplexität dieser Algorithmen hängt von der Komplexität ab, Lösungen für die verschiedenen Gleichungssysteme zu finden.

23 Die Größe eines Gleichungssystems A X = b oder eines Ungleichungssystems A X b mit A =(a ij ), i=1,...n, j=1,....m und b = (b j ), j=1,...m definieren wir als Summe aller log 2 |a ij | und log 2 |b j | für 1 i n, 1 j m. Das Problem, zu entscheiden, ob A X = b eine - rationale Lösung hat, ist in polynomieller Zeit lösbar, - ganzzahlige Lösung hat, ist in polynomieller Zeit lösbar - natürlichzahlige Lösung hat, ist NP-vollständig.

24 Die Markierungsgleichung Def. (Die Inzidenzmatrix) Die Inzidenzmatrix N : (S T) ist definiert durch Eine Markierung m von N wird als |S|-stelliger Spaltenvektor M über /N geschrieben. N(s,t) = { 0 falls (s, t) F und (t, s) F oder (s, t) F und (t, s) F -1 falls (s, t) F und (t, s) F 1 falls (s, t) F und (t, s) F

25 s 2 t 1 t 2 t 4 s 1 s 4 s 3 s 5 t 3 t 3 t 1 t 2 t 4 s 1 s 2 s 3 s 4 s

26 Def. (Die Markierungsgleichung) Die Markierungsgleichung eines Netzsystems (N, M 0 ) mit N = (S, T, F) ist M = M 0 + N · X (X Unbekannte) mit Variablen M (|S|-stelliger Vektor) und X (|T|-stelliger Vektor). Lemma (Das Markierungsgleichungslemma) Sei N ein Netz und sei M [ > M eine Schaltfolge von N. Dann gilt M = M + N · Def. (Parikh-Vektor einer Transitionsfolge) Sei eine endliche Folge von Transitionen. Der Parikh-Vektor N von wird definiert als Spaltenvektor durch (t) = Anzahl der Vorkommen von t in

27 Die Markierungsgleichung führt zu Halbentscheidungsalgorithmen für Beschränktheit, b-Beschränktheit, (Nicht)-Erreichbarkeit, und Verklemmungsfreiheit: Satz: Sei (N, M 0 ) ein System. Wenn das Optimierungsproblem maximize s S M(s) subject to M = M 0 +N · X eine optimale Lösung n hat, dann ist (N, M 0 ) n- beschränkt.

28 Satz: Sei (N, M 0 ) ein System und sei L eine Markierung von N. Wenn die Gleichung L = M 0 + N · X(nur X als Variable) keine Lösung hat, dann ist L nicht von M 0 erreichbar. Satz: Sei (N, M 0 ) ein 1-beschränktes System mit N = (S, T, F). Wenn das folgende System von Gleichungen und Ungleichungen keine Lösung hat, dann ist (N, M 0 ) verklemmungsfrei. M = M 0 + N · X s t M (s) <| t| für jede Transition t.

29 S- und T-Invarianten Satz: (Fundamentale Eigenschaft von S-Invarianten) Sei (N, M 0 ) ein markiertes Netz und I eine S-Invariante von N. Wenn M von M 0 aus erreichbar ist dann gilt I · M = I · M 0. Satz: I ist eine S-Invariante von N gdw. t T: s t I(s) = s t I(s). Def. Ein Vektor I: S heißt S-Invariante, wenn I · N = 0. I Q

30 Definition (Semi-positive und positive S-Invarianten) Sei I eine S-Invariante von N = (S; T; F). I ist semi-positiv, wenn 0 I und I 0; I ist positiv, wenn I > 0 (d.h. I(s) > 0 für jedes s aus S). = {s S | I(s) > 0} bezeichnet die Trägermenge einer semi-positiven Invarianten I. Proposition [Eine hinreichende Bedingung für Beschränktheit] Sei (N;M 0 ) ein System. Wenn N eine positive S- Invariante I besitzt, dann ist (N;M 0 ) beschränkt. Genauer: (N;M 0 ) ist n-beschränkt mit n = max { I M 0 /I(s) | s aus S ).

31 Proposition (Eine notwendige Bedingung für Lebendigkeit) Wenn (N;M 0 ) lebendig ist, dann gilt IM 0 > 0 für jede semi- positive S-Invariante von N. Beweis. Sei I eine semi-positive S-Invariante und sei s eine Stelle von. Da (N;M 0 ) lebendig ist, existiert eine erreichbare Markierung M, die s markiert, d.h. M(s) > 0. Da I semi-positiv ist, gilt IM I(s)M(s) > 0. Da I eine S-Invariante ist, gilt IM 0 = IM >0.

32 Diese zwei Propositionen führen ummittelbar zu zwei effizienten Halbentscheidungsalgorithmen für Beschränkheit bzw. für Lebendigkeit. Definition (Die Relation ~ ) Seien M und L Markierungen und I eine S-Invariante des Netzes N. M und L stimmen überein bezüglich I, wenn IM = IL. Wir schreiben M ~ L, wenn M und L bezüglich aller S-Invarianten von N übereinstimmen. Proposition [Eine notwendige Bedingung für Erreichbarkeit] Sei (N;M 0 ) ein Netzsystem. Für M [M 0 > gilt M ~ M 0.

33 Der folgende Satz erlaubt, effizient zu entscheiden, ob M ~ L für zwei gegebene Markierungen M und L gilt. Satz : Sei N ein Netz und seien M und L zwei Markierungen von N. M ~ L gdw. die Gleichung M = L + N X eine rationale Lösung hat. Beweis. ( ) : M und L stimmen auf den Elementen einer Basis {I 1,..., I k } des Vektorraums aller S-Invarianten überein. Für jeden Vektor I j dieser Basis gilt I j (L-M) = 0 Nach linearer Algebra gilt: Die Spalten von N enthalten eine Basis des Lösungsraums von I j X = 0; (1jk). Damit ist (L-M) Linearkombination über Q dieser Spalten, d.h. die Gleichung NX = (L-M) hat eine rationale Lösung

34 ( ) : Sei I eine S-Invariante von N. Mit IN = 0 gilt IL = IM+INX = IM Wir haben also die folgenden Implikationen: M ist erreichbar aus L M = L + NX hat eine Lösung X IN |T| M = L +N X hat eine Lösung X Q |T| M ~ L

35 Satz: J ist eine T-Invariante gdw. s S: t s J(t) = t s J(t). Def. Ein Vektor J : T heißt T-Invariante, wenn N · J = 0. I Q Satz: (Fundamentale Eigenschaften von T-Invarianten) Sei eine Sequenz von Transitionen von N, die von einer Markierung M aktiviert wird. Der Parikh-Vektor ist eine T-Invariante von N gdw M [ M. Beweis. ( ) : Sei M die Markierung mit M[ M. Aus der Markierungsgleichung folgt M = M + N. Mit N =0 gilt M=M ( ) : Aus der Markierungsglg. folgt M = N + N und daher N = 0.

36 Satz 4.4.4: Ist ein markiertes Netz lebendig und beschränkt (d.h. wohlgeformt), so besitzt es eine positive T-Invariante (positiv ~ alle Komponenten positiv). Bew.: Habe N die lebendige und beschränkte Markierung M 0. Wg. Lebendigkeit ex. eine unendliche Folge 1, 2, 3,... endlicher Sequenzen von Transitionen i, in denen jeweils alle Transitionen von N vorkommen, so daß gilt: M i [ i+1 >M i+1 für alle i= 0, 1, 2, 3,.... Wg. Beschränktheit können nicht alle M i verschieden sein, d.h. es ex. i M i, und J = Summe der Parikh-Vektoren der k ist eine T-Invariante. J ist positiv, weil in der Folge i+1... j jede Transition mindestens einmal vorkommt.

37 Siphons und Traps Def. R S heißt Siphon, wenn R R Satz: (Fundamentale Eigenschaft von Siphons) Sei R Siphon von (N, M) und gelte M[ > M. Aus M(R) = 0 folgt dann M(R) = 0 (M(R) ~ Anzahl der Marken von M in R). Betrachten von nun an Netze ohne isolierte Stellen und mit T ø R R impliziert: Die Transitionen, die R markieren können, können nur schalten, wenn R schon markiert ist. Also: Nichtmarkierte Siphons bleiben nicht markiert.

38 Satz: (Notwendige Bedingung für Lebendigkeit) Ist (N, M 0 ) lebendig, so gilt M(R) 0 für jeden Siphon R ø von N. Satz: Ist (N, M 0 ) verklemmt, so ist die Menge der Stellen, die von M 0 nicht markiert sind, ein nichtleerer Siphon. Folgerung: Werden in (N, M 0 ) von jeder erreichbaren Markierung alle Siphons markiert, so ist (N, M 0 ) verklemmungsfrei. Beweis. Sei R ein echter Siphon von N und sei s aus R. Wg. Lebendigkeit ex. erreichbare Markierung M, die s markiert. Damit markiert M auch den Siphon R. Aus der Proposition folgt, daß auch M 0 den Siphon R markiert. Beweis. Sei R = {s | M 0 (s) = 0}. Zu jeder Transition t ex. Stelle s aus t mit M 0 (s) = 0 (sonst wäre t aktiviert). Also enthält R alle Transitionen von N. Es folgt R R.

39 Die Existenz eines unter M 0 nicht markierten Siphons kann in polynomieller Zeit mit Hilfe des folgenden Algorithmus getestet werden. Der Algorithmus berechnet den größten Siphon, der in einer gegebenen Menge R von Stellen enthalten ist. Es reicht also, R zu wählen als die Menge der Stellen s mit M 0 (s) = 0. Input: Ein Netz N = (S; T;F) und R S. Output: Q R. Initialisierung: Q = R. begin while es gibt s in Q und t in s mit t Q do Q:= Q\ {s} endwhile end

40 Def. R S heißt Trap, wenn R R Satz: (Fundamentale Eigenschaft von Traps) Sei R ein Trap und M[ > M. Aus M(R) > 0 folgt dann M(R) > 0. Satz: (Hinreichende Bedingung für Verklemmungsfreiheit) Enthält jeder nichtleere Siphon von N einen von M 0 markierten Trap so ist (N, M 0 ) verklemmungsfrei.

41 II.4 Systemklassen mit effizienten Verifikationsalgorithmen. In den drei Sektionen des Kapitels untersuchen wir drei Systemklassen: S-Systeme, T-Systeme und Free-Choice-Systeme. Alle Sektionen haben eine ähnliche Struktur. Nach der Definition der Klasse, werden drei Sätze vorgestellt: der Lebendigkeitssatz, der Beschränkheitssatz, und der Erreichbarkeitssatz. Der Lebendigkeitssatz charakterisiert die Systeme der Klasse, die lebendig sind. Der Beschränkheitssatz charakterisiert die lebendigen Syste- men, die beschränkt bzw. b-beschränkt sind. Der Erreichbarkeitssatz charakterisiert die erreichbaren Markierungen der lebendigen und beschränkten Systeme. Der Beweis dieser drei Sätze benötigt oft einige Ergebnisse über die Struktur der S- und T-Invarianten der Systeme, die ebenfalls vorgestellt werden.

42 5.1 S-Systeme Definition (S-Netze, S-Systeme) Ein Netz heißt S-Netz, wenn |t| =1 = |t| für jede Transition t. (N;M 0 ) heißt S-System, wenn N ein S-Netz ist. Proposition (Fundamentale Eigenschaft von S- Systemen) Sei (N;M 0 ) ein S-System, S die Menge der Stellen in N 0 und M eine erreichbare Markierung. Dann gilt M 0 (S) = M(S). Satz (Lebendigkeitssatz) Ein S-System (N;M 0 ) ist lebendig, gdw. N stark zusammenhängend ist und M 0 mindestens eine Stelle markiert.

43 Satz (Beschränktheitssatz) Ein lebendiges System (N;M 0 ) ist b-beschränkt, gdw. M 0 (S) b. Satz (Erreichbarkeitssatz): Seien (N;M 0 ) ein lebendiges S-System und M eine Markierung von M. M ist erreichbar, gdw. M 0 (S) = M(S). Proposition (S-Invarianten von S-Netzen) Sei N = (S, T,F) ein zusammenhängendes S-Netz. Ein Vektor I : S Q ist eine S-Invariante von N, gdw. I = (x,...,x) für eine Zahl x aus Q.

44 5.2 T-Systeme Definition (T-Netze, T-Systeme) Ein Netz heißt T-Netz, wenn |s| = 1 = |s| für jede Stelle s. Ein System (N;M 0 ) heißt T-System, wenn N ein T-Netz ist ( Es heißt markierter Graph, wenn es ausserdem stark zusammenhängend ist). Proposition (Fundamentale Eigenschaft von T-Systemen) Seien ein Kreis eines T-Systems (N;M 0 ) und M eine erreichbare Markierung. Dann gilt M( ) = M 0 ( ) Lebendigkeit Satz (Lebendigkeitssatz) Ein T-System (N;M 0 ) ist lebendig, gdw. M 0 ( ) > 0 für jeden Kreis von N.

45 5.2.2 Beschränkheit Satz (Beschränktheitssatz) Ein lebendiges T-System (N;M 0 ) ist b-beschränkt gdw. jede Stelle s in einem Kreis mit M 0 ( ) b enthalten ist. Korollar Sei (N;M 0 ) ein lebendiges T-System 1. Eine Stelle ist beschränkt gdw. sie zu einem Kreis gehört. 2. Sei s eine beschränkte Stelle, dann gilt max{ M(s) | M 0 * M } = min{ M 0 ( ) | enthält s } 3. (N;M 0 ) ist beschränkt gdw. N stark zusammenhängend ist.

46 5.2.3 Erreichbarkeit Für den Erreichbarkeitssatz müssen wir erst die T-Invarianten von T-Netzen näher betrachten: Proposition (T-Invarianten von T-Netzen) Sei N = (S, T, F) ein zusammenhängendes T-Netz. Ein Vektor J: T Q ist eine T-Invariante gdw. J = (x,..., x) für eine Zahl x aus Q. Satz (Erreichbarkeitssatz) Sei (N;M 0 ) ein lebendiges T-System. Eine Markierung M ist erreichbar gdw. M 0 ~ M.

47 Weitere Eigenschaften Satz Sei (N;M 0 ) ein stark zusammenhängendes T- Netz. Die folgenden Aussagen sind äquivalent: (1) (N;M 0 ) ist lebendig. (2) (N;M 0 ) ist verklemmungsfrei. (3) (N;M 0 ) hat eine unendliche Schaltsequenz. Satz (Genrich'scher Satz) Sei N ein stark zusammenhängendes T-Netz mit mindestens einer Stelle und einer Transition. Es gibt eine Markierung M 0 von N, so daß (N;M 0 ) lebendig und 1-beschränkt ist.

48 5.3 Free-Choice-Systeme Def (Free-Choice-Netze, Free-Choice-Systeme) Ein Netz N = (S; T; F) heißt free-choice, wenn t s F für jedes s aus S und t aus T mit (s; t) F. Ein System (N;M 0 ) heißt free-choice, wenn N ein Free-Choice- Netz ist. Proposition (Alternative Definitionen von Free-Choice-Netzen) (1) Ein Netz ist free-choice, wenn für alle Transitionen t 1, t 2 gilt: (t 1 t 2 ^ t 1 t 2 ) t 1 = t 2. (2) Ein Netz ist free-choice, wenn für alle Stellen s 1, s 2 gilt: (s 1 s 2 ^ s 1 s 2 ) s 1 = s 2

49 5.3.1 Lebendigkeit Satz (Commoner'scher Lebendigkeitssatz) Ein Free-Choice-System (N;M 0 ) ist lebendig gdw. jeder Siphon von N einen unter M 0 markierten Trap enthält. Satz (Komplexität) Das Problem Gegeben: Ein free-choice System (N;M 0 ) Frage: Ist (N;M 0 ) nicht lebendig? ist NP-vollständig.

50 5.3.2 Beschränkheit Definition (S-Komponente) Sei N = (S, T, F) ein Netz und sei N = (S, T, F) ein Teilnetz von N. N heißt S-Komponente von N, wenn es die folgenden Bedingungen erfüllt: 1. T = S S 2. N ist stark zusammenhängend. Proposition Sei (N;M 0 ) ein System und sei N = (S, T, F) eine S-Komponente von N. Für jede erreichbare Markierung M gilt M 0 (S) = M(S).

51 Satz (Hack'scher Beschränktheitssatz) Sei (N;M 0 ) ein lebendiges free-choice System. (N;M 0 ) ist beschränkt gdw. jede Stelle von N in einer S-Komponente enthalten ist. Proposition (Schranken von Stellen) Sei (N;M 0 ) ein lebendiges und beschränktes free-choice System, und sei s eine Stelle von N. Es gilt max{M(s) | M 0 * M} = min{M 0 (S) | S ist die Menge der Stellen einer S-Komponente von N}.

52 Definition (Cluster) Sei N = (S, T, F) ein Netz. Ein Cluster ist eine Äquivalenzklasse der Relation ((F (S T)) (F (S T)) -1 )* Satz (Rangssatz) Ein Free-Choice-System (N;M 0 ) ist lebendig und beschränkt gdw. die folgenden Bedingungen gelten: 1. N hat eine positive S-Invariante. 2. N hat eine positive T-Invariante. 3. Rang (N) = c -1, wobei c die Anzahl der Cluster von N ist. 4. Jeder Siphon von N ist unter M 0 markiert.

53 5.4 Erreichbarkeit Wenn P NP, dann kann es leider keinen polynomiellen Algorithmus für Erreichbarkeit in Free-Choice-Netzen geben, weil: Satz Erreichbarkeit für lebendige und beschränkte free- choice Systeme ist NP-vollständig. Satz (Erreichbarkeitssatz) Sei (N;M 0 ) ein lebendiges, beschränktes und zyklisches Free-Choice-System. Eine Markierung M von N ist erreichbar aus M 0 gdw. M 0 ~ M.

54 Korollar Das Problem Gegeben: ein lebendiges, beschränktes und zyklisches Free- Choice-System (N;M 0 ) und eine Markierung M Frage: Ist M erreichbar? ist in polynomieller Zeit lösbar. Dieses Ergebnis ist nur nützlich, wenn man effizient entscheiden kann, ob ein lebendiges und beschränktes Free- Choice-System zyklisch ist. Der folgende Satz sagt, daß das der Fall ist: Satz Ein lebendiges und beschränktes Free-Choice- System (N;M 0 ) ist zyklisch gdw. jeder Trap von N unter M 0 markiert ist.


Herunterladen ppt "Teil II.1 Wiederholung: Skript Esparza, Kapitel 1 und 2 Definition 1.3.3: Sei N ein Netz und sei M eine Markierung von N. Eine endliche Sequenz = t 1..."

Ähnliche Präsentationen


Google-Anzeigen