Beispiel ein Netz da, das war reversibel.
Und weil alle Transitionen vorkamen, in Erreichbarkeitsgrafen,
hatten wir automatisch die Eigenschaft, dass es lebendig ist.
Und jetzt könnte man sich fragen, ist das allgemein so oder war das Zufall?
Also impliziert Reversibilität beispielsweise lebendig? Oder heißt,
wenn nicht immer wieder zum Staatszustand zurückkommen kann,
heißt das vielleicht, dass ich ein beschränktes Netz haben muss?
Es könnte ja sein, dass bei Unbeschränkten ich nie die Chance wieder habe,
weil ich mich verlaufen kann und so weiter sofort.
Das sind also natürliche Fragen, welche Eigenschaften schließen einander aus,
welche Implizierenden dann und so weiter.
Und Quintessenz des Ganzen ist, gilt nichts von alledem.
Beschränktheit, Lebendigkeit und Reversibilität sind völlig unabhängig voneinander, logisch.
Und wie kann man das sehen? Das kann man sehen,
dass man für jede Kombination für jede der acht Varianten gilt, gilt nicht.
Zwei Möglichkeiten, drei Varianten sind zwei oder drei Möglichkeiten.
Also acht verschiedene Netze sind hier aufgezeigt, die diese Eigenschaften haben.
Zum Beispiel links oben steht B-Quer-L-Quer-R quer. Das heißt,
es ist weder beschränkt, noch lebendig, noch reversibel.
Gucken wir uns das mal an
Nacheinander. Also das erste Netz. Das soll nicht beschränkt,
nicht lebendig, nicht reversibel sein. So,
woran sieht man beispielsweise, dass es nicht beschränkt ist?
Ja, an der Stelle rechts. Das ist eine
ganz reiche,
zweite Kommission
Und dann hat er gesagt, ich entfernt,
und dann hat er gedacht, ich war wieder falsch.
Also mit der Stelle rechts bin ich einverstanden. Ich hätte jetzt spontan gesagt,
die obere Transition zeigt mir, dass das Unbeschränkt ist.
Ja, die obere hat mich so die Eigenschaft,
also das erste, was man so feststellen kann,
ist, wir können hier so im Kreis munter laufen.
Also ich kann mit dieser Marke links rumlaufen und habe mir dann
die Marke wieder regeneriert. Aber wenn ich das einmal mache,
man hat die obere Transition, die Eigenschaft,
mir eine Extramarke spendiert zu haben auf dem rechten Platz.
Und kein Mensch hindert mich daran,
dass beliebig häufig zu tun und beliebig viele Marken auf
dem Platz rechts zu erzeugen
So, das ist so das Erste, das ganze Netz
ist nicht beschränkt, weil der Platz rechtsaußen unbeschränkt ist.
So, die zweite Tatsache, wir sehen also schon mal die Transition,
die auf diesem Kreislauf liegen, da habe ich nicht so die Probleme,
sie zu aktivieren.
Warum? Naja, wenn ich nur den Kreislauf schalte,
werde ich die Marke da nicht los.
Und die Transition im Mitten des Kreislaufs
kann dann eben nicht schalten
Ja, ich gucke mir den Kreislauf an, stelle fest,
wenn da eine Marke drin ist, dann bleibt da immer eine Marke drin.
Das heißt, in jeder reichbaren Markierung gilt,
dass ich nicht schaffen kann, dass die beiden Plätze links markiert sind.
Da das eine Eigenschaft ist, kann die mittlere Transition innerhalb dieses Kreislaufes nie schalten,
die braucht mich gerade diese zwei Marken. Wenn das der Fall wäre,
dann könnte ich schon überlegen, ja,
das Ganze ist dann vielleicht irgendwie doch beschränkt oder nicht lebendig oder sowas,
aber wir sehen auf jeden Fall diese Transition in der Mitte,
kann eh nie schalten,
ich kann sie nicht zum Schalten bringen
Deswegen ist das ganze Netz nicht lebendig. Alle anderen Transitionen,
ja, da kann nichts passieren, die schalten immer munter im Kreis durch.
Und warum ist das Netz nicht reversibel?
Ganz rechte Begrüßung, die Marken sind immer raus.
Ja, also wenn ich einmal durchlaufe, dann habe ich
eine Marke da drin und die verschwindet nicht wieder.
Die Anfangsmarkierung hat da gar keine Marke. So,
nachdem ich also einmal den Bereich verlassen habe und die Marke
da nicht wieder loswerden kann,
komme ich also nie wieder in die Anfangsmarkierung zurück
Ich komme immer in eine Markierung zurück,
die auf allen anderen Plätzen gleich aussieht und echt größer ist.
Aber genau die Anfangsmarkierung erreiche ich nicht. Gut,
also das Netz ist weder beschränkt noch lebendig noch reversibel.
Die rote Transition ist die genau die nicht lebendige.
Jetzt eine Situation besser, also wir zählen wie näher hoch.
Die letzte Mannschaft gilt jetzt, 001 ist das Element,
das wir betrachten. Das ist jetzt nicht beschränkt.
Woran sieht man das
Auch dieses Geräusch kann extrem nerven sein.
Warum ist das Netz
nicht beschränkt
. Also diesen Kreislauf, der da vorgehoben ist,
den können wir schalten, beliebig häufig und beim beliebig häufigen Schalten
erzeuge ich mir beliebig viele Marken in dem Platz rechts drunter.
Also schon mal der Platz ist unbeschränkt,
wenn ich da munter im Kreislauf schalte.
Deswegen weiß ich schon mal,
es ist nicht beschränkt das Netz
Gut, die beiden Transitionen, sagen wir mal,
sind vielleicht nicht die besten Kandidaten.
Klar, ich kann das irgendwie hinkriegen. Vielleicht sind sie
doch nicht lebendig. Aber da gucken wir mal lieber nicht,
aus dem einfachen Grunde, es ist ziemlich schwierig,
aus diesem Kreislauf, der hervorgehoben ist, die Marken rauszubekommen.
Wenn eine Marke drin ist, eine reicht mir ja
zum Schalten und die Marke kriegt dann nicht wieder raus.
So, das heißt, das ist ein relativ ungestörter Bereich,
an dem wird Lebendigkeit deswegen nicht scheitern.
Könnt also woanders
dran liegen
Welcher Bereich hat die höchste Wahrscheinlichkeit, dass es scheitern kann?
Ja, mal solchen kleinen Beispielen, gucken wir mal an.
Die Heuristik. Also wir wissen schon,
der Platz unten in der Mitte ist unbeschränkt.
Der stört nicht so sehr. Das heißt,
die untere Transition, die braucht von der rechten ganz rechtsaußen,
da braucht sie was. Das kriege ich aber leicht dadurch,
dass ich die Marke durch die mittlere Transition rüberschiebe.
Und rüberschieben geht wohl auch, also die Marke da so.
Aber da drüber ist eine Transition, die hat zwei Kanten.
Jetzt kann man schon mal gucken mit der Hypothese,
schaffe ich das überhaupt, zwei Marken da oben gleichzeitig drin zu haben?
Dann stellt man eben fest, das ist ziemlich schwierig.
Diesen Bereich da, ja,
da ich beliebig viele Marken von links kommen habe,
kann ich das auch beliebig häufig machen.
Mal muss ich nur den linken Kreislauf beliebig häufig
da schalten lassen. Dann kann ich auch da rechts
munter laufen
Aber egal, wie lange ich in diesem rechten Kreislauf rumlaufe,
ich werde es nicht schaffen,
die Anzahl der Marken auf diesen beiden Plätzen zu vergrößern,
sodass da zwei Marken liegen.
Das heißt, die obere Transition, die kriege ich nicht lebendig gemacht.
Das ist also das Problem. Ja, und Reversibilität,
das liegt daran, dass wenn ich den linken Kreislauf mache,
dann pumpe ich mir Marken da in den Zwischenplatz rein.
Und wenn ich den rechten Kreis laufe,
da ordentlich anschalten, sehe ich, naja,
ich kriege es im Prinzip auch leer.
Die rechte untere Transition kann nämlich
diesen Platz wieder auf Null bringen
Und beim letzten Mal schalten, das auf Null bringens,
liegt die Marke da wieder auf der linken Seite.
Das heißt, obwohl das Ganze nicht lebendig ist,
kriege ich es wieder zurückgeführt, indem ich sage,
links ist zwar unbeschränkt da, was reingefüllt worden,
aber rechts kann ich auch genauso oft wieder was abholen.
Und dann erreiche ich den Staatszustand. Next please, was
haben wir hier? Die Beniere 2, also ein Netz,
das ist nicht beschränkt, es soll lebendig sein,
es soll reversibel sein.
Woran erkennt man, dass es
nicht beschränkt ist
Optisch ist jetzt naheliegend zu sagen, es ist diese Asymmetrie.
Das, was an diesem Netz asymmetrisch ist, ist dieser Rechtsschlenker da.
Denn wenn ich diesen Hauptast hier mal betrachte,
dann passiert ja die eine Marke, wird zu zwei Marken,
wird wieder konsumiert. Ich habe wieder eigentlich in den Ausgangsstartpunkt
zurück. Aber bei einem Durchlauf sieht man dieser Rechtsaußenschlenker,
der sorgt dafür, dass da eine neue Marke hinzukriegt,
kommt. Die kriegt quasi geschenkt. Das heißt,
der Platz rechts oben, den kann ich
beliebig voll machen
Die anderen Plätze kann ich nicht beliebig voll machen. Also doch,
also ich kann den rechten unteren Platz auch beliebig voll machen,
denn wenn ich rechts oben beliebig viele Marken habe,
dann kann ich die natürlich alle einmal weiter nach unten schieben.
Aber das nützt mir nichts, denn der linke Kreislauf gewissermaßen,
da ist immer nur eine Marke drin,
da kann ich sie also gewissermaßen nicht abholen.
Die staunen sich dann alle rechts unten. Gut,
also zwei Plätze, die unbeschränkt sind, die rechten Äußeren.
Die anderen Plätze beschränkt. Und dieser Kreislauf zeigt mir insbesondere auch,
naja, Ich schaffe es nicht, aus dem linken Kreislauf
die Marken so gewissermaßen rauszukriegen, am rechten auch nicht.
Oder ich bin in der Mitte. Das heißt,
ich kann beliebig häufig diesen Doppelzyklus machen. Und ich habe
auch gar keine andere Chance, als das zu tun.
Was anderes kann ich gar nicht schalten.
Wenn ich in der Mitte eine Marke habe,
dann kann mich kein Mensch daran hindern, das einmal durchzuschalten.
Da liegen da Rechtsmarken, dann kann ich unten wieder ankommen.
Und dieses iterative Verhalten ist das Einzige,
was ich machen kann, plus das Durchschieben der überzählig generierten
Marken rechts
So, in dem Sinne ist es immer möglich,
egal wie viele Marken da rechts zusätzlich generiert werden.
Ich kann immer alle vier Transitionen nochmal neu schalten,
weil ich die Marken, die da in den beiden Schleifen,
in den beiden Ohren vorhanden sind, nicht wegkriege.
Naja, und Reversibilität gilt nicht,
denn nach einem Durchlauf habe ich das Land der seligen verlassen,
dann ist mich eine Marke mehr am rechten Ast.
Da sind dann, habe ich eine hinzugewonnen, noch einen Durchlauf,
da habe ich zwei hinzugewonnen und die Marken in dem rechten Teil,
Asperde ich nie wieder los.
Also Reversibilität kann ich gelten
Diesem Fall, weil die überschüssig generierten Marken nicht wieder verschwinden.
Nächstes Netz. Warum ist dieses Netz beschränkt? Das Netz
ist beschränkt, aber es kann dann großartig passieren.
Also links sehen wir so etwas wie einen Kreislauf,
da kann die Marke im Kreis laufen.
Rechts sehen wir auch einen Kreislauf. Da kann also
die rechte Marke eigentlich nur im Kreis laufen. Nur,
jetzt kommt noch die Zusatzbedingung hinzu, die das Ganze einschränkt,
Wenn ich den rechten Kreislauf starten möchte,
brauche ich dafür eine Marke von der linken Seite?
Das heißt, rechts kann ich munter immer im Kreis laufen,
da kommen aber keine Marken hinzu.
Wenn ich da die Quersumme der linken beiden betrachte,
wie bleibt da im Kreis gefangen? Rechts habe ich noch
nicht mal die Möglichkeit, beliebig lang im Kreis zu laufen.
Sobald ich die Transition oben rechts einmal schalte,
ist es das gewesen,
dann kann ich noch einmal links und einmal rechts rum,
dann liegt die Marke wieder rechts,
aber der linke Kreislauf ist leer.
Und dann verklemmt das Ganze
Passiert da nichts mehr. Naja, und wenn
ein Netz verklemmen kann, wenn da nichts mehr geht,
dann ist es erst recht nicht mehr lebendig.
In diesem Fall ist es nicht lebendig, weil ich nach
so einer blöden Schaltsequenz eben die linken beiden Transitionen nicht mehr aktivieren kann.
Und die anderen auch nicht. Ja,
im Deadlock ist ja keine der vier Transitionen mehr aktiviert.
Und Reversibilität gilt auch nicht, wenn ich eine Verklemmung habe,
wie soll ich von einem Zustand,
der keine Nachfolgemarkierung mehr hat,
wie soll ich da überhaupt den Anfangszustand noch erreichen?
Also vorausgesetzt,
sie sind unterschiedlich
Meine Verklemmungsmarkierung ist halt eine andere als meine Staatmarkierung.
Gut, in diesem Netz sieht man das einfach.
Ich kann jetzt eine kleine Veränderung machen,
an diesem Netz sieht gar nicht so großartig anders aus.
Ich mache mir wieder zwei Kreisläufe, aber neun Platz in der Mitte.
Das hat jetzt folgende Bedeutung, da links läuft die Marke im Kreis,
produziert in der Mitte frische Marken, die rechts konsumiert werden.
Also rechts hole ich die ab. Und dass das Ganze nicht beschränkt ist,
sieht man sofort daran, dass der linke Kreislauf,
ich den N mal geschaltet habe,
dann habe ich mir N-Marken in die Mitte gepackt.
N ist beliebig, also keine Schranke für die Anzahl der Marken in der Mitte.
Für alle Plätze in der Mittellinie gilt die Beschränkung,
da habe ich mich, die Aussage,
die linken beiden sind zusammen mit einer Marke markiert.
Die rechten beiden sind zusammen mit einer Marke markiert.
Deswegen folgt daraus, das Ganze muss endlich sein,
aber der mittlere Platz ist eben unbeschränkt.
Da kann ich jede beliebige Anzahl mir draufgehen
Naja, warum ist das Ganze lebendig? Da wird es
schon schwieriger zu argumentieren. Wir haben ja jetzt,
wie gesagt, oder wie eben gesehen, unendlich viele erreichbare Markierungen.
Das macht mir das Argumentieren jetzt ein bisschen schwieriger,
weil ich sagen muss, für jede erreichbare Markierung,
das sind ja unendlich viele, habe ich die Möglichkeit,
jede Transition wieder zum Schalten zu bringen.
Um da ein bisschen mir das Leben leichter zu machen in der Argumentation,
stelle ich erstmal fest, dass egal wie die Markierung aussieht,
die erreicht haben kann, ich weiß,
Links ist genau eine Marke im Kreislauf rechts.
Das ist genau eine Marke im Kreislauf. Das sind schon vier Kombinationen. Entweder links,
rechts und auf der linken Seite und links, rechts,
auf der rechten Seite zwei Möglichkeiten jeweils, also zweimal zwei Möglichkeiten.
Und in der Mitte kann jede beliebige natürliche Zahl stehen.
So, das heißt, es gibt vier Arten von Markierung.
Dann kann man aber zeigen, naja, wenn ich die Markierung habe,
wo im linken Kreislauf die Marke gerade rechts ist,
Das ist gar nicht schlimm, dann schalte ich einmal die Transition links unten,
dann lebt sie wieder links.
Das heißt, ich kann sofort sagen, egal welche Markierung
ich erreicht habe, ich kann es immer so machen,
dass im linken Kreislauf die Marke links liegt.
Genau so kann ich es erreichen,
egal welche Markierung ich erreicht habe, kann es immer wieder erreichen,
dass im rechten Kreislauf durch das Schalten der Transition unten rechts die Marke ganz rechts liegt.
Also im Prinzip genau diese Schalterstellung, wie sie eingezeichnet ist.
So und in der Mitte können beliebig viele Zahlen,
beliebig viele Marken leben, jede Anzahl ist da möglich.
Und jetzt mache ich folgenden Trick, ich sage,
okay, jetzt liegen da N-Marken in der Mitte.
Wenn ich jetzt Ich schalte,
dann habe ich alle Marken aus der Mitte weggenommen,
dann gehe ich gleich noch, dass die Marke wieder rechts liegt.
Und was habe ich denn erreicht? Dann habe ich
meine Anfangsmarkierung wieder erreicht. Und das ist super.
Jetzt weiß ich nämlich, zum einen das Netz ist reversibel,
egal wo ich hinkomme, ich komme wieder in die Anfangsmarkierung.
Und das Zweite, was ich weiß, ist,
alle unendlich vielen Markierungen, von denen will ich ja zeigen,
dass Lebendigkeit gilt
Naja, mache ich folgenden Trick. Ich sage jetzt,
geh doch erst mal wieder in die Startmarkierung zurück.
Und von dort aus aktiviere ich dir jetzt deine gewünschte Transition.
Denn wenn ich die Transition links oben aktivieren will,
ist ganz einfach in der Startmarkierung. Sofort schaltbar.
Wenn ich die Transition links unten schalten will, naja,
einmal links oben schalten, dann kann ich links unten schalten.
Wenn ich die Transition rechts oben schalten will,
und dann schalte ich einmal links oben,
dann kann ich rechts oben schalten.
Und wenn ich rechts unten schalten will,
dann schalte ich einmal links oben,
rechts,
oben,
rechts unten
So konnte ich sie auch zum Schalten bringen.
Das heißt, der Beweis funktioniert hier konstruktiv. Ich sage,
ich muss ja jede Transition in jeder erreichbaren Markierung wieder zum Schalten bringen können.
Ich habe hier explizit gerade das Sigma konstruiert,
dass die Schaltfolge ist, die die Transition Tee wieder zum Schalten bringt.
Und das Hilfsmittel, was dabei abgefallen ist, war eben zu zeigen,
dass ich dabei einfach die Startmarkierung immer wieder erreiche.
Nächstes Beispiel, dass jetzt ein sehr simples Netz,
total symmetrisch, es ist beschränkt.
Entweder laufe ich rechts rum. Dann ist die Marke da
wieder am Anfangszustand. Dabei passiert im Wesentlichen nichts großartig.
Also keine neuen Marken mehr. Oder Variante B,
ich laufe links rum. Da gilt auf der anderen Seite
das Gleiche. Und da sieht man schon,
bei diesen Transitionen, ja, das ist wohl so,
dass die mittlere Transition nie aktiviert ist.
Also ich werde es nie schaffen, zwei Marken zu haben.
Denn diese drei Plätze sieht man ja diesen Transitionen.
Die schieben die Marke einfach nur hin und her.
Es gibt nur eine Marke insgesamt in diesem System.
Das heißt, die mittlere Transition ist nie aktiviert
Also haben wir schon mal zweilei gesehen. Erstens,
das Netz ist beschränkt, hat immer nur eine Marke.
Es hat eine Transition, die nicht aktivierbar ist, wie mittlere.
Und dass das Ganze reversibel ist, naja,
so viel Markierung gibt es nicht. Das hat endlich einen
Erreichbarkeitsgraf. Entweder liegt die Marke oben links oder rechts.
Und auf jeden Fall komme ich wieder zu der Situation zurück,
wo sie in der Mitte oben liegt.
Gut, also wissen wir auch reversibel.
Ein sehr einfaches Netz. Das Netz ist jetzt schon ein
bisschen Fickelinja hier.
Gut,
es ist beschränkt
Das kann man dadurch zeigen, dass da Marken im Prinzip
nur mehr oder weniger hin und her geschoben werden.
Gucken wir uns gleich nochmal an. Man kann auch zeigen,
dass alle nicht sind. Gut, sieht man jetzt vielleicht nicht sofort,
aber wenn wir festgestellt haben, dass das Netz beschränkt ist,
könnten wir es einfach im endlichen Erreichbarkeitsgrafen überprüfen.
Und der Gag an der Sache ist,
obwohl da alles immer wieder geht, ist es nicht reversibel.
Das heißt, zur Startmarkierung, zu dieser komme ich nie
wieder zurück. Ich komme wohl zu irgendeiner anderen zurück.
Wie funktioniert das Netz jetzt
Im Moment ist gar nicht so viel möglich. In dieser
Markierung kann ich eigentlich nur die Transition links außen schalten.
Die anderen sind gar nicht aktiv. Also rechts oben nicht,
die in der Mitte braucht zwei Marken von oben,
hat sie nicht. Und die dritte da im Bunde,
die braucht eine Marke von rechts, unten hat sie nicht.
Also es geht nur das hier. Jetzt liegen zwei Marken
oben. Jetzt kann ich die alte Transition nicht mehr schalten,
die in der Mitte geht, die Rechte von dem Dreierblock
geht immer noch nicht und ganz rechts oben auch nicht.
Also das Einzige, was passieren kann,
ist,
dieser Austausch
So, danach, was kann jetzt passieren? Jetzt können
zwei Dinge passieren. Ich kann einmal links rumgehen und ich
kann jetzt auch mit der anderen Marke rechts was schalten lassen,
danach, wenn ich die Marke mich hier gelegen habe,
dann ist plötzlich, das ist das,
was jetzt noch passieren kann, die frische Transition da aktiv.
Und jetzt, damit noch Diemer Eimer schalten kann,
jetzt haben wir mich alle einmal durch,
wissen es einmal, haben wir es geschafft,
diese Situation zu erreichen, haben alle einmal geschaltet.
Und jetzt sieht man,
diese Markierung hatten wir
schon mal
Das heißt, von dort können wir jetzt wieder anfangen.
Es passiert genau deterministisch exakt das Gleiche wieder.
Und immer wieder, das Systemverhalten läuft also deterministisch in Schleifen.
Ereignet sich genau das Gleiche nochmal. Weil man guckt,
was haben wir eben gemacht? Naja,
ab dieser Situation schalten wir Mitte links, rechts, oben.
Und haben wieder diese Situation. Mitte links, rechts,
oben. Bis in alle Ewigkeit können wir jetzt schalten.
Sind alle vier Transitionen einmal vorkommen. Und dazwischen haben wir alle Markierungen,
die jetzt noch passieren werden, sind auch charakterisiert.
Also sehen wir es sofort, ist beschränkt. Was wir auch sehen,
Die Startmarkierung erreichen wir aber in diesem ganzen Zyklus nicht mehr wir.
Also es wird, die beiden Marken werden oben hingelegt. Ja,
und gestartet haben wir in fast der gleichen Markierung,
die hatte nur die Marke links unten und musste,
um diese Markierung zu erreichen,
einmal die Transition links außen schalten.
So, die Startmarkierung erreichen wir also nie wieder.
Alle Transitionen können wir in den endlich vielen Markierungen aber wieder schalten.
Das Netz ist beschränkt. Wenn ich mir den Erreichbarkeitsgrafen anschaue
, dann ist das ein Lasso.
Das hat so ein Anfangsstück
Und läuft dann in der Schleife und ab da wieder zurück,
aber zur Startmarkierung komme ich nie mehr zurück.
Lasso, weil es deterministisch ist, in der Schleife läuft und endlich ist.
So, jetzt wollen wir noch ein Netz haben, das
alle Eigenschaften hat. Das kennen wir im Prinzip auch schon.
Das hatten wir mal dieses Netzes beschränkt. Es läuft einfach
nur so wie ein Springbrunnen, Sprudel einmal hoch,
fällt runter, sammelt sich unten und immer so weiter.
Die Marken, die da sind, naja,
entweder ist die Marke in der Mitte oder ich habe im
linken Strang eine und im rechten eine
Das sind alle Möglichkeiten, die ich haben kann.
Das sind also aus kombinatorischen Gründen eins plus zweimal zwei,
so fünf Markierungen. Alle Transitionen sind bei diesem Schaltvorgang beteiligt.
Und nach dem einzig möglichen Schaltvorgang,
bis auf Vertauschung von den Transitionen links und rechts,
kommt da auch wieder die Startmarkierung raus.
Gut. Also beschränkte, lebendige Netze zu basteln ist eigentlich
ganz einfach. Ja, noch einfacher wäre es gewesen,
einfach ein Netz mit einer Marke,
wo das alles nur im Kreis läuft.
Ist auch reversibel, ist auch lebendig,
auch beschränkt
Gut, also alle acht Eigenschaften, alle kombinatorischen Möglichkeiten sind
hier beim Beispiel belegt. Jetzt kann man sich fragen,
wenn ich nicht weiß, ob mein Netz beschränkt ist oder nicht,
gehen wir mal auf den schlimmsten Fall aus, es ist unbeschränkt.
Es hat nur endlich großen Erreichbarkeitsgrafen. Dann kann ich mich jetzt folgendes fragen,
wenn ich ein PT-Netz habe und eine Markierung M,
ist diese Markierung M jetzt in der Erreichbarkeitsmenge,
in den Rechiple Marketings enthalten.
Sprich, kann ich
die Markierung M erreichen
Ja oder nein? Wenn das Netz beschränkt ist,
dann ist das noch halbwegs einfach zu beantworten.
Also prinzipiell kann ich ja beim beschränkten Netz den endlichen Erreichbarkeitsgrafen konstruieren.
Das mag jetzt sehr groß werden,
aber das ist aus mathematischer Sicht uninteressant, irrelevant.
Und dann überprüfe ich alle Markierungen, ob sie drin vorkommen.
Wenn das Netz aber unbeschränkt ist,
die Erreichbarkeitsmenge unendlich groß ist, dann haben wir ein Problem.
Denn es ist gewissermaßen die Anzahl der Markierungen mit ihrer Unendlichkeit,
ein Hindernisgrund,
das einfach mal auszuprobieren
Klar, man kann sagen, ich generiere mir mal
die ersten zwei Millionen erreichbaren Markierungen durch Breitensuche.
Wenn es dabei ist, habe ich Glück gehabt. Nur,
wenn die Markierung gar nicht erreichbar ist, dann ist das
kein besonders glücklicher Ansatz. Dann kann man nicht sagen,
na gut, unter den ersten zwei Millionen war es nicht,
vielleicht nochmal eine Million mehr. Wenn es nicht dabei ist,
dann ist es auch mit unendlich viel Speicher nicht geholfen.
Da kommt ja nie vorbei. So, das kann
das Verfahren also nicht sein. Und ich sage gleich,
wir könnten eine ganze Vorlesung darauf verwenden,
diese Frage zu untersuchen, und zu beantworten noch letztendlich,
das ist unheimlich trickreich, die Antwort ist, es geht.
Ja, der Eingedampfte Beweis hat immer noch so seine 50 Seiten.
Also dieses eine Problem war Gegenstand einer Dissertation von Meyer,
ja, 84 und was rausgekommen ist, ja,
man kann es entscheiden. Was ganz interessant ist,
denn man weiß ja bei Turing-Maschinen, das Halteproblem ist nicht entscheidbar.
Das Halteproblem ist aber mit leichten Modifikationen umzuformulieren,
kann ich entscheiden, für eine gegebene Touring-Maschine,
ob eine bestimmte Konfiguration dieser Touring-Maschine erreichbar ist.
Ist klar, mit dieser Frage kann ich das Halteproblem entscheiden.
Ich frage einfach nur, naja, ist eine Endkonfiguration erreichbar?
Davon gibt es nicht so viel. Bei Touring-Maschinen ist diese Frage
also unentscheidbar. Bei Petrinetzen ist sie entscheidbar. Also wissen
wir schon gleich, das Ganze scheint hier, naja,
ein bisschen schwächer zu sein, Touring-Mächtigkeit werden wir sie nicht machen.
Egal, was wir mit Netzen machen,
wir können nicht alle brechenbaren Funktionen damit darstellen.
Wir kriegen da
deutlich weniger
Und das liegt nebenbei an der Eigenschaft, die wir schon hatten, der Monotonie.
Bei Netzen ist es ja so, mehr Markenschaden nicht.
Kann immer noch das Gleiche schalten. Sowas ähnliches,
bei Thuring-Maschinen kann man auch formulieren, da gilt die Eigenschaften und nicht.
Da kann man sagen, mehr schadet schon was. Also Zählerprogramme,
die wir kurz angerissen hatten, in FG1,
da wurde ja auch gezählt, da war aber der Unterschied,
da konnten wir auf Null testen.
Das können wir bei Petrin jetzt nicht,
dass die Unterscheidung
Jetzt kann man sich fragen, wird das Leben leichter,
wenn ich schon weiß, dass ich ein beschränktes Netz habe?
Dann ist die Antwort trivialerweise, ich kann das beantworten.
Beim beschränkten Netz habe ich nur endlich viele erreichbare Markierungen.
Das geht also im Prinzip. Die Frage ist jetzt also,
wenn ich ein beschränktes Netz habe,
nicht zu sehr geht es oder geht es nicht,
sondern wie groß ist das im Komplexitätstheoretischer Hinsicht?
Und die Antwort ist, es ist furchtbar schlimm,
dieses Problem, denn hier steht, wenn ich schon weiß,
dass das Netz beschränkt ist,
dann weiß ich sofort,
es ist entscheidbar,
aber wir brauchen mindestens Exponentiell
viel Platz
Dagegen sind NP-Probleme eine Lachnummer. Die brauchen mich exponentiell viel
Zeit in der Eingabe. Wir brauchen exponentiell viel Platz.
Also eine Schranke, dass wir nicht deterministisch,
das mit zwei Hochhoch- und End-Field-Platz lösen können.
Und endest die Größe des Netzes und der Kodierung,
der Markierung, die mich interessiert. Ja, dann heißt das,
wir kennen ja Simulationen von Platz-Turing-Maschinen durch zeitbeschränkte Turing-Maschinen.
Dann wissen wir, das wird noch mal um eine
Zweierpotenz schlimmer
Das heißt, was wir im Prinzip nur wissen mit diesem Satz,
ist, in eine untere Schranke ist wohl so etwas wie zwei hoch zwei Hochofen N.
Als Zeitschrank, doppelt exponentiell. Ja,
schon bei Netzen, die vielleicht Kodierungsgröße vielleicht zehn haben,
steht da plötzlich zwei hoch zwei hoch zehn, also zwei hoch
1024. Und zehn ist ja noch eine relativ kleines Netz.
Zehn Bits so groß und ordnungstechnisch, kann ich nicht
allzu viel Netz drin kodieren. Wenn man mal bedenkt,
dass sich die Kanten da noch rein manipulieren muss,
mit zehn Bits, was kann ich da vielleicht zwei Plätze,
zwei Transitionen so
Wenn ich schon, sagen wir mal,
sowas haben will, wie zehn Plätze, zehn Transitionen,
dann muss ich an Zweifelsfall die Flussrelation kodieren,
dann wäre das eher so endgleich 100.
So 200, 200, für 200 habe ich schon
gar keine Zahl mehr und für zwei Uhr,
wofür ich keine Zahl mehr habe, erst recht nicht.
Das heißt, selbst für beschränkte Netze sollte man besser sich
die Frage nicht stellen, ob eine Markierung erreichbar ist.
Im schlimmsten Fall kann das mich ein bisschen lange dauern,
bis die Antwort kommt.
Sodass gewissermaßen als Warnung die Netze sehen, manchmal ganz unscheinbar aus.
Und wir sagen, ach ja, ist beschränkt,
alles endlich
Nur wenn man dann tatsächlich was wissen will,
dann weiß man, untere Platzschranken sind so und so.
Das ist eigentlich ein Hinweis darauf, wenn Komplexitätsklassen drohen,
aus dem Ruder zu laufen, dann muss man sagen,
okay, im wirklichen Leben kann man vielleicht noch stärkere Einschränkungen machen.
Also sagt man, ich will nicht mehr jedes PT-Netz analysieren.
Denn was ich so im normalen Modellierungsalltag habe, hat vielleicht
nettere Eigenschaften. Und diese Netze mit den netteren Eigenschaften,
vielleicht geht es bei denen besser
Und jetzt kann man mal hingehen und sagen, ja,
okay, vielleicht nicht alle Netze haben nette Eigenschaften,
aber vielleicht habe ich so eine Anwendungsdomäne,
wo ich nur konservative Netze habe.
So ein Netz heißt eins konservativ,
das ist ein Spezialfall der beschränkten Netze, da gilt die Eigenschaft,
jede Transition, die legt genauso viele Marken hin, wie sie welche wegnimmt.
Für alle Tee gilt das, was hingelegt wird,
also Nachbereich von Teebetrag davon,
ist gleich Anzahl der Plätze im Vorbereich
Wir betrachten hier sowieso nur ungewichtete Netze. Das heißt,
die Anzahl der Plätze ist in diesem Fall
identisch mit der Anzahl der Marken, die ich wegnehme.
Und genauso, was ich hinlege. Das heißt,
das Netz da unten wie ein Beispiel dafür,
das nimmt mir nämlich drei Marken weg und legt drei Marken hin.
Man kann übrigens zeigen, dass diese Netze nicht nur beschränkt sind.
Sie sind auch strukturell beschränkt. Denn wenn ich in
jeden Schaltvorgang für jede Transition Tee genauso viele Marken erzeuge,
wie ich wegnehme, dann bleibt die Gesamtzahl der Marken unverändert
Das heißt, die Gesamtzahl der Marken, die ich am Anfang habe,
ist auf jeden Fall immer eine Schranke für alle Marken,
die überhaupt irgendwo sein können.
Denn solche Netze verteilen ja nur um. Ja, und mehr Marken,
als ich am Anfang hatte, können da nie existieren.
Das heißt, für jede Anfangsmarkierung habe ich implizit sofort eine Schranke bekommen.
Und wenn das Netz beschränkt ist, für jede Anfangsmarkierung ist es
strukturell beschränkt. Bei diesem Netz ist es ziemlich klar,
das sind die beiden Markierungen, da könnte sonst was auf
den Plätzen draufliegen, es ist immer beschränkt.
Und jetzt kann man sich fragen, dieses Netz,
mit dieser Eigenschaft oder Netze aus dieser Klasse,
mit dieser Eigenschaft
Vielleicht starke Einschränkungen vielleicht erfüllen das nur einige Anwendungsdomänen und da auch nicht alle Netze.
Aber wenn wir mal so ein Netz haben,
dann können wir doch ganz glücklich sein, das sieht hochsymmetrisch aus,
höchst einfach, ist sogar strukturell beschränkt.
Jetzt kann man sagen, okay, wenn dieser glückliche Umstand
eingetreten ist, wie schlimm ist dann das Problem?
Und dann kommt raus, die Welt ist schlecht,
selbst für solche Netze ist das Erreichbarkeitsproblem Key-Space vollständig.
Also ein Problem, mit dem ich Alle Peace-Space-Probleme lösen kann.
Ja, ohne dass es wirklich schlimmer wird. Das heißt ja,
das ist ein Problem, wenn ich dafür einen tollen Algorithmus habe,
jedes andere Problem aus Peace-Space,
kann ich da sehr schnell in Polynom-Zeit mir mich auf diese Fragen stelle,
umkodieren.
Also alles, was ich in Peace-Space machen kann,
kann ich ziemlich effizient oder gutmütig mit einem Algorithmus,
der das Erreichbarkeitsproblem für konservative Netze lösen kann.
Dieser Spezialalgorithmus ist bereits das Maß aller Dinge für Peace-Space.
Das heißt ja Vollständigkeit. In FG1 hatten wir massiv NP vollständige Probleme betrachtet.
Denn die waren das Maß aller Dinge für NPV-ständige NP-Probleme.
Jedes Problem aus NP konnte ich gut lösen,
wenn ich eine Lösung hatte für ein NPV-Stringsproblem.
War immer leicht darauf zurückzuführen. Und genau so ist das mit Peace-Space-Vollstring-Problemen,
die kann ich auch alle auf diese Fragestellung jetzt zurückführen.
Wir haben mal Lachs gesprochen, dieses Problem ist eigentlich somit das Schlimmste,
was wir uns in Peace-Space vorstellen können.
Nur andere Peace-Space
vollständige Probleme sind genauso schlimm
Ja, das sind gewisse untere Schranken. Das heißt,
für Netze, die man vielleicht gerade noch ertragen kann,
ist es bereits, ist vollständig.
Ich muss schon extrem anfangen, noch stärker einschränken zu machen,
damit ich überhaupt bei NP vollständigen Problemen lande.
Denn wir haben uns immer angeguckt, Peace-Space, ja,
das liegt oberhalb von NP, also Peace-Space ist gleich NP-Space,
das wissen wir.
Da ist ja nicht Determinismus und Determinismus das Gleiche.
Und wir wussten, dass NP ist eine Teilmenge von Peace-Space.
Ob es eine echte ist oder nicht, wissen wir nicht.
Aber wir wissen auf jeden Fall, Peace-Space,
vollständige Probleme sind bestimmt so schlimm wie die NP-vollständigen Probleme
Das heißt, ein Problem zu finden, das nur noch
in Anführungszeichen NP vollständig wäre, wäre vermutlich sogar ein Gewinn.
Aber da müssen wir unheimlich schon runtergehen, beispielsweise fordern,
dass es keine Konflikte mehr gibt, die da auftreten oder
die Netze A zyklisch sind oder, oder, oder.
Dann geht da noch irgendwas. Also, das Leben ist
hart bei Petrinetzen, selbst wenn sie einfach aussehen.
Das ist die Quintessenz. Jetzt machen wir uns das Leben in
der Grundannahme aber erstmal einfach. Wir gehen davon aus,
jetzt erstmal eine ganze Weile nur noch beschränkte Netze,
sodass wir den Erreichbarkeitsgrafen hinmalen können.
Und wir sind mal sehr optimistisch. Wir sagen,
nicht nur im Prinzip, sondern sogar praktisch.
Also das Ding wird nicht größer als das, was ich
in den Speicher kriege. Wir haben also genau die Idee,
wir wollen jetzt den Erreichbarkeitsgrafen im Speicher halten und darauf Analysen machen.
Das nennt man jetzt eine innumerative Methode.
Also ich analysiere den Erreichbarkeitsgrafen
Dabei muss ich voraussetzen, dass der Graf endlich ist.
Man kann auch betrachten, was passiert, wenn er unendlich wäre.
Da muss man tricksen. Da waren wir eine Vertiefungsvorlesung im Master,
Suff. Also nicht Vollrausch, sondern Spezifikation und Verifikation.
Machen wir solche Dinge. Wie analysiert man ein System,
das unendlich viele Zustände hat? Das will ich mir alles beantworten,
aber man kann da natürlich Approximationsdinge tun sein. Was kann man machen,
wenn das Petrinetz gegeben ist, dann kann man sagen,
naja, ich will jetzt vielleicht wissen, ist es lebendig.
Dann kann ich sagen, das Netz da,
Das hat einen viel zu großen Erreichbarkeitsgrafen.
Das will ich nicht analysieren. Was macht man?
Man sagt, okay, das kann ich nicht analysieren.
Aber ich kenne eine Transformation. Und wenn das ausgangsnett lebendig ist,
dann auch, und genau dann, das,
was da rauskommt unter einer Transformationsvorschrift. Das heißt,
ich forme mein Netz um und mache ein anderes Netz raus,
das auch genauso lebendig ist wie das Alte.
Wenn das Alte lebendig war, dann das Neue und sonst
eben nicht. Und Reduktionen sind Transformationen, die das Netz
kleiner machen im gewissen Sinne. Und die Hoffnung ist,
das mache ich
ein paar Mal
Das Netz ist irgendwie unter einem gewissen Kriterium kleiner geworden und
der Erreichbarkeitsgraf ist vielleicht dann auch so handelsüblich klein geworden,
dass ich ihn betrachten kann.
Oder ich sehe dem Netz schon an, ob es lebendig ist oder nicht.
Vielleicht kommt da, man weiß, naja,
wenn es lebendig ist und ich wende die Reduktionen an,
vielleicht muss da immer das eine Netz rauskommen,
wenn es lebendig ist und ein anderes, wenn es nicht lebendig ist.
Solche Techniken kann ich machen. Machen wir auch nicht hier
, dafür gibt es auch ein Wahlpflichtmodul.
Modellierung verteilter Systeme. Und dann gibt es noch strukturelle Analyse,
das machen wir auch noch in dieser Vorlesung,
endlich mal was hier
Folgt später. Da machen wir mit ein bisschen linearer Algebra,
machen wir Aussagen, wo wir die Netzstruktur analysieren.
Das sind dann P in Varianten und T in Varianten.
Und man kann auch aus dem Netz grafen,
also der Struktur von Kanten, noch ein bisschen was ablesen.
Im folgenden machen wir aber erstmal Punkt A. Und wenn wir
dazu was lesen will, findet unser Hausbuch,
weil der Editor einer der pensionierten Professoren Rüdiger Falk ist.
Deswegen hier Patronets for System Engineering als Empfehlung,
steht auch ganz oft in der Bibliothek
Es gibt das auch in einer leicht oder für mich
schwerer lesbaren Variante. Nämlich auf Chinesisch in der Übersetzung.
Glaube ich, haben wir deswegen nicht ganz so oft.
Aber also ich kann das lesen, das war das Einzige,
was ich außer Mathematik da lesen kann, ist das Wort Petri.
Das wird nicht übersetzt. Aber ansonsten ist das die Übersetzung
. Gut, gibt es nur auf dem chinesischen Markt,
aber haben wir deswegen, glaube ich, nicht in der Bibliothek.
Und warum ist das, was wir jetzt vorhaben,
gar nicht mal so einfach? Dann guckt euch mal dieses
einfache Netz an. Sechs Plätze, drei Transitionen. Nur
Alle drei Transitionen sind unabhängig kausal voneinander. Die Transition A,
B oder C kann schalten und wenn eine schaltet,
können die anderen immer noch. Wenn ich mir den Erreichbarkeitsgrafen angucke,
ja, kann ich sagen, okay,
in der Markierung XYZ kann ich also A schalten,
B schalten oder C schalten.
Naja, und die anderen gehen immer noch,
und zwar in jedem der drei Knoten gehen die anderen beiden.
Und wenn ich dann noch den zweiten gewählt habe, geht der dritte immer noch.
Das heißt, ich kann mir das voll zu einem Würfel basteln.
Alle kommen zu X-Strich, Y-Z-Strich. Und ihr könnt euch vorstellen,
dass das nicht besonders angenehm wird, wenn ich nicht die Plätze XYZ hätte,
sondern den Platz P1, den Platz P2 bis PN.
Wenn ich also Endplätze habe und endeunabhängige Transitionen,
dann hat der Graf rechts zwei hoch in verschiedene Markierungen.
Ja, es ist ein Würfel im endimensionalen Raum.
Gut. Kurz vorstellen, ja, und dann sieht man,
man läuft aber nur von einem Ende zum maximal entfernten anderen Ende des Würfels.
Also im dreidimensionalen, ich laufe einmal durch die Hauptdiagonale dadurch
Denn alle Möglichkeiten auf den Kanten außen am Würfel rumzulaufen,
führen zur gleichen Markierung.
So, das ist übrigens auch ein Ansatzpunkt. Beim Schlaueren reparierendes Erreichbarkeitsgrafen
, man sagt, eigentlich wird mir ein Fahrt reichen.
Also wenn ich weiß, wie A, B,
C schaltet, wo ich dahin komme und so weiß,
wie es unterwegs aussieht, dann habe ich im Prinzip die gesamte Information.
Ich muss nicht alle zwei hochändern. Vorrätig halten. Endstück
oder sowas reicht vielleicht. Das ist so der eine Gedanke,
den man sieht, aber kann man vielleicht gar nicht so clever als Codierung ist.
Der andere Punkt ist, wenn man es trotzdem tut,
wird er
ziemlich groß
Ziemlich groß heißt auch Plakativ-Zustandsraum-Explosionen. Weil aus etwas,
was bummelig konstante mal endviele Knoten hat,
wird irgendwas mit zwei hoch entfielen Zuständen im Erreichbarkeitsgrafen.
So, also exponentielles Aufblähen, eine Inklusion.
Ja, und damit muss man im Prinzip
Jetzt gehen wir mal davon aus,
unsere Netze sind so klein, dass wir zwei hoch N,
was ja im schlimmsten Fall rauskommt, gerade noch handeln können.
Das passt also im Speicher rein. Dann können wir
den Erreichbarkeitsgrafen ja tatsächlich ausrechnen. Das heißt,
zu einem solchen Netz ist das vielleicht auch ganz sinnvoll.
Das ist eigentlich kein Petri-Netz, das ist mehr eine Meditationsübung.
Da kann man zehn Minuten draufstarren, bis die Linien sich langsam so auflösen.
Aber auf jeden Fall kann man ausrechnen, dass der Erreichbarkeitsgraf so aussieht. Gut,
und damit kann man Dinge tun und vielleicht sollte man das
einem Werkzeug überlassen, weil das hat ja auch etwas Meditatives,
sich diesen Erreichbarkeitsgrafen Gemüte zu führen.
Insbesondere wenn das noch größer wird, wird das ja nicht schöner.
Also lassen wir uns den Erreichbarkeitsgrafen mal ausrechnen und
das hatten wir gerade in den Übungen gemacht im Kleinen.
Und das Verfahren kann man jetzt formalisieren. Wir sagen,
okay, wir haben ein Netz, N in der Anfangsmarkierung M0.
Ich würde sagen, welche Markierung kann ich jetzt erreichen?
Naja, am Anfang ist der Erreichbarkeitsgraf,
wenn ich noch nichts weiß, sehr einfach. Ich sage,
die Anfangsmarkierung M0 ist erreichbar und ich habe keine Kanten.
Die leere Bekanntenmenge. Und M0 ist ungefärbt,
also ich muss da noch
was tun
Und jetzt sage ich nur, ja,
solange es noch ungefärbte Knoten gibt, meine aktuellen Knotenmenge V,
dann picke ich mir doch raus.
Ich nehme meinen Knoten M raus und färbe ihn.
Das heißt, ich sage, den habe ich jetzt bearbeitet.
Und jetzt mache ich mehr oder weniger parallel für jede aktivierte Transition,
also jede M aktivierte Transition Tee, rechne ich aus.
Wenn ich Tee schalten würde in M,
welche Markierung im Strich kommt da raus?
Die Nachfolgemarkierung rechne ich aus.
Und jetzt gibt es
zwei Möglichkeiten
Also erstmal die schlimme Variante, die überspringen wir mal.
2-2-2, da steht was ganz Schlimmes.
Da steht, es gibt so einen Knoten-M-2-Strich und da gibt es
eine Schaltfolge zu unserem Nachfolgezustand im Zwei-Strich ist kleiner Ads-M-Strich.
Das will ich im Moment gar nicht verstehen. Ja,
was da auf jeden Fall passiert, ist nämlich,
dass der Algorithmus dann abbricht. Und er sagt,
ich kann dir den Erreichbarkeitsgraf nicht geben und ich kann das nicht,
weil ich jetzt weiß, dass das Netzsystem unbeschränkt ist.
Das heißt, wenn eine solche Situation wie eine 2-2-2
beschriebenen Bedingung vorfindet, dann sagt er, ist unbeschränkt.
Das scheint also ein hinreichendes Kriterium dafür zu sein.
Dann weiß der Algorithmus, naja, unbeschränktes Netz, aufhören.
Nehmen wir an, Sondern wir haben tatsächlich ein beschränktes Netz,
der Fall tritt nie an.
Was passiert dann? Kommen wir zum etwas netteren Punkt,
2, 2, 3. Und dann gucken wir nach,
okay, gibt es jetzt schon einen Knoten,
der genauso heißt wie mein jetziger Knoten.
Also ist am Strich eigentlich schon da drin in der Knotenmenge.
Naja, wenn der schon vorkommt,
dann muss ich den Knoten ja nicht nochmal hinzufügen.
Wenn er nicht vorkommt, dann packe ich am Strich
hinzu und den Strich wird jetzt
neuer ungefärbter Knoten
Und was ich zusätzlich auf jeden Fall noch mache,
2, 2, 4, die Eigenschaft, naja,
ich habe eine Transition Tee geschaltet von M nach M Strich.
Und das ziehe ich jetzt nach,
indem ich im Graphen eine neue Kante von M nach im Strich,
die mit Tee beschriftet ist, also ein Tribble-M-T-M-Strich hinzufüge.
So, und das mache ich so lange,
was zu tun, wenn das Netz beschränkt ist,
dann habe ich irgendwann mal alle Graphen, alle Knoten angefasst,
alle sind gefärbt und dann bin ich fertig.
Und wenn das Netz nicht beschränkt ist,
dann hat dieser Algorithmus sogar noch die nette Eigenschaft,
er merkt das immer
Das heißt, dieser Algorithmus hat die Eigenschaft,
für jedes Netz wird er terminieren.
Und wenn das Netz beschränkt ist, gibt er mir den Erreichbarkeitsgrafen.
Ansonsten gibt er ein Anfangsstück des Erreichbarkeitsgrafen,
halt bis zu der Stelle, wo er abgebrochen ist.
Das kann man dann auch ablesen. Jetzt können wir
uns nochmal angucken, woran liegt das?
Was hat er da für eine Bedingung? Das ist ja
nicht irgendeine Bedingung, die greifen wir nochmal auf.
Und wir greifen sie auf,
das Abbruchkriterium
Das liegt, da liegt folgender Satz dahinter. Wir wissen,
dass ein Netz genau dann unbeschränkt ist, wenn es zwei
erreichbare Markierungen M1 M2 gibt, die folgende Bedingung erfüllen.
Ich komme von M1 mit einer Schaltfolge zu M2 und M1
ist echt kleiner als M2. Also dieses echt kleine heißt,
in mindestens einer Komponente gilt nicht kleiner gleich, sondern echt kleiner.
Also für mindestens ein Platz ist in M2 die Markenzahl
echt größer. In allen anderen kann es gleich sein,
aber mindestens eine Komponente ist größer geworden.
Was heißt das
Ja, stellen wir uns mal vor, wir haben hier eine Markierung M.
Und sie ist klein, aber ungleich am Strich.
Und ich komme von M zu M Strich mit so einer Schaltfolge Sigma.
Irgendwie so eine Schaltfolge, die dahin wandert. Da ich jetzt weiß,
dass im Strich echt größer ist,
also mindestens genauso viele Marken er hat, in einem Platz sogar echt mehr,
kann ich die gleiche Schaltfolge da nochmal abspielen.
Wie gesagt, mehr Marken stören ja nicht.
Wo komme ich dann hin? Ja, dann schalte ich
nochmal Sigma. Jetzt in Rot. Ich komme zu M2-Strich
Im Zwei-Strich muss jetzt auch wieder echt größer sein als im Strich,
weil einmal Sigma-Schalten macht ja mindestens einen Platz P,
mindestens eine Marke mehr.
Wenn ich das nochmal schalte, dann liegt da nochmal eine Marke mehr.
Das heißt, insgesamt sogar zwei, aber ich weiß,
M2-Strich hat mindestens eine Marke auf mindestens einen Platz mehr als M-Strich.
Und keiner hindert mich, dass nicht nochmal, nochmal,
nochmal zu tun. Das heißt,
wenn es zwei solche Markierungen gibt,
sieht man sofort,
dass das Netz unbeschränkt ist
Der andere Punkt, der ein bisschen schwieriger ist,
ist die Tatsache zu beweisen, dass wenn ein Netz unbeschränkt ist,
dass es auf zwei solche Markierungen geben muss.
Das könnt ihr jetzt nachlesen, das werden wir nochmal nachbehandeln vielleicht.
Das liegt schlechtweg daran, es gibt nur endlich viele unvergleichliche Markierungen,
die ich da so durchprobieren könnte. So, das heißt,
früher oder später muss es bei einem unbeschränkten Netz die Situation eintreten,
dass ich zwei Markierungen M1 und M2 habe,
die vergleichbar sind.
Und ungleich. Für uns ist aber wichtig,
dieser Satz gilt auf jeden Fall,
ohne dass wir das im Kleinsten
gerade beweisen wollen
Und das ist ja genau das Abbruchkriterium. Das heißt,
dieses Abbruchkriterium schlägt genau dann zu, wenn das Netz unbeschränkt ist.
Ja, und weil es genau dann zuschlägt,
ist es sogar notwendig, unhinreichend das Kriterium.
Das heißt, der Algorithmus wird auch immer terminieren müssen.
Nur bei beschränkten Netzen greift das Kriterium nie,
dann passiert kein Abbruch. Und bei unbeschränkten Netzen wird immer
ein Abbruchereignis stattfinden. Machen wir mal ein Beispiel dazu,
was heißt dieses anschaulich gesehen? Wir haben ja ein Netz,
das kennen wir auch schon
Das starten wir wie immer in der Markierung 210. Und was
kann jetzt passieren? Naja, ich kann T1 schalten,
dann schiebe ich die eine Marke weg,
leere das in der Mitte, habe drei Marken rechts.
Also die Markierung 103. Und jetzt kann wieder die andere Markierung,
die andere Transition schalten. T1 kann ja nicht nochmal schalten
. Da fehlt ja in der Mitte die Marke.
Also schalten wir nochmal T2. Und wenn T2 schaltet,
haben wir diese Situation. Und man sieht jetzt,
das kann ich nochmal machen,
denn 222 ist größer als
Ja, zwei ist kleiner gleich zwei, aber eins ist
echt kleiner als 2.0 ist echt kleiner als zwei.
Also diese Vektouren sind echt kleine und das wird auch immer mehr,
das sieht man daran,
was ist denn der Effekt von T1 T2 zum Schalten?
Da sieht man, da kommt immer eine Marke in der Bilanz
mehr auf P2 und immer in der Bilanz zwei Marken mehr auf P1.
Das heißt, dieses Kriterium, da sieht man schon,
aha, hier kann ich so zwei Markierungen finden,
da kann ich immer wieder wieder schalten.
Deswegen die Marken, wo es gerade echt größer wird,
diese Plätze sind schon mal auf jeden Fall unbeschränkt.
Das ist eine
ganz sichere Bank
In diesem Fall sehen wir sofort,
nachdem wir einmal T1 und einmal T2 geschaltet haben,
können wir direkt durch den ersten Vergleich von 2-1
-0 und 2-2-2 feststellen,
dass die zweite und die dritte Komponente echt größer geworden sind.
Ja, und das ist für uns übersetzbar in die Aussage,
diese beiden Plätze sind auf jeden Fall unbeschränkt.
Beim ersten Platz wissen wir es doch erstmal nicht.
Aber die zweite und die dritte Komponente sind echt größer geworden,
die beiden Plätze sind auf jeden Fall unbeschränkt.
Weil ich T-1 T2 ab jetzt beliebig häufig schalten kann und
deswegen jede Schranke auf der zweiten und dritten Komponente übersteige
Das ist also unser Kriterium. Man kann das sogar
noch weiter verallgemeinern, dieses Spielchen beschränkt und unbeschränkt.
Wir können mich folgende vier aussagen als Äquivalent nachweisen.
Im Prinzip haben wir das schon öfter gemacht. Wir haben es
noch nie so bewiesen. Wir können nämlich entweder sagen,
dass die Menge der erreichbaren Markierung endlich ist.
Wir können auch sagen, dass es dazu Äquivalent der Erreichbarkeitsgraf ist, endlich.
Okay, der Erreichbarkeitsgraf hat die Erreichbarkeitsmenge als Knotenmenge.
Wenn die endlich ist, Da ist natürlich auch der Graf
irgendwie endlich, weil der nur endlich viele Kanten haben kann.
Und umgekehrt, wenn ich einen endlichen Grafen habe,
dann ist die Anzahl der Zustände da drin,
der Knoten auf jeden Fall auch endlich.
Und die Aussage ist äquivalent, also die beiden ersten sind äquivalent dazu,
dass das Netz in der Anfangsmarkierung M0 beschränkt ist.
Denn wenn es beschränkt ist, dann sagt die Kombinatorik,
wenn die Schranke k ist, dann gibt es K plus 1,
Hochanzahl der Plätze, viele verschiedene Markierungen im schlimmsten Fall.
Das ist eine Obergrenze für die Anzahl der erreichbaren Markierungen.
Und wenn ich eine endliche Erreichbarkeitsmenge habe, dann gucke ich
nach, was ist da drin die größte Zahl.
Das ist eine Karschranke
Und die vierte Eigenschaft, die haben wir eben schon mal gehabt,
ja, da hatten wir es nur als, es gibt zwei Markierungen,
dann haben wir es als unbeschränkt eben charakterisiert.
Das heißt, wenn es keine zwei solche Markierungen gibt, genau dann ist es beschränkt.
Ich habe einfach nur die Aussage der Energie. Ja,
und die ersten drei, dass die Qualenz sind,
ist einfach und das drittens und viertens zueinander äquivalent sind,
hatten wir eben als Slammer.
Das heißt, dass die vier Äquivalent sind, ist eine kleine Sache,
nämlich das viertens, drittens impliziert, alles sehr einfach.
Viertens impliziert, drittens ist gewissermaßen das Schwerste. Also nee,
jetzt ist es andersrum, jetzt ist es drittens impliziert,
viertens geworden durch die Negation. Also ein beschränktes Netz hat
keine zwei solchen Markierungen. Und weil das so ist,
kann man hier noch, da haben wir jetzt in Zeile,
da sieht man auf diesem Beamer nicht,
also ich sehe es auf meinen Monitor,
in Zeile 2, 2,
2 gehoben,
da steht genau diese Eigenschaft
Es gibt keinen Knoten, also es gibt nicht M2 und davon
erreiche ich am Strich und M2-Strich ist klein ist am Strich.
Also dieses Kleiner hier heißt echt klein auf mindestens einer Komponente. Ja,
und da ich weiß, das Kriterium ist Äquivalent zur Unbeschränktheit,
tut der Algorithmus gut daran, hier an dieser Stelle abzubrechen,
wenn er das findet. So, was können wir jetzt machen,
wenn wir den Erreichbarkeitsgrafen konstruieren konnten, also wir nehmen an,
das passt wie jetzt so in den Speicher,
dann können wir jetzt zwei Formen von Eigenschaften nachweisen wollen,
die betrachteten Eigenschaften Kehrungs- und Lebendigkeitsinn-Varianz.
Und eine Markierungsinnvarianz ist etwas, was irgendwas über die Menge
aller Markierung so aussagt, ganz grob, und Lebendigkeits-,
irgendwas, was so ähnlich aussieht wie Lebendigkeit.
So, damit das nicht so vage bleibt, definieren wir
das jetzt mal. Wir müssen uns jetzt erst mal überlegen,
welche Spezifikationssprache legen wir jetzt dem Ganzen zugrunde?
Und damit das Ganze einfach geht, aber trotzdem noch mächtig ist,
hat es sich bewährt, Folgendes zu benutzen.
Wir nehmen solche Ungleichungen, lineare Ungleichung,
als Markierungsprädikate Groß-Pi, also Groß-Pi für Prädikat.
Und das sind elementare Aussagen über ein Argument M.
Also zu jeder Markierung M ist da rechts ein Ausdruck in
diesen großen eckigen Klammern, der war oder falsch sein kann.
Das heißt, wenn das unsere Sachen sind,
unsere Atomen, der Logik, dann kann ich sagen,
zu jeder Markierung M, kann ich dieses Atom evaluieren.
Zu jeder erreichbaren Markierung M ist die rechte Aussage oder falsch
Ausdruck rechts oder links. Rechts ist nur ungleich.
Und die sagte mich, ich gewichte jeden Platz P,
beziehungsweise dessen Markierung M von P, mit einer rationalen Zahl KP.
So, das heißt, ein Vielfaches der Markierung des Platzes,
das summiere ich alles auf. Und die Summe,
die da rauskommt, ist wieder eine rationale Zahl.
Da frage ich mich, ist die Kleiner gleich noch ein
Parameter K? Also KP für alle Plätze und dieses K
, das sind festgelegte Konstanten
Die muss ich einmal fixieren. Ja, alle Vorausausdrücke,
die mit KAP und K in diese Form zu bringen sind,
wollen wir jetzt als atomare Formeln betrachten.
Wenn mich die Markierung manches letztendlich nicht interessiert,
ist das kein Problem, dann setze ich KP auf null.
Dann wird die null mal eingerechnet, also gar nicht.
So, was kann ich damit machen? Damit kann ich jetzt Aussagen,
logische Formeln bilden, in denen diese Markierungsprädikate als Atome vorkommen.
Und da sieht man, da unten steht sowas,
da steht nämlich Ein Prädikat, das eine Disjunktion ist.
In der Mitte steht ein Oder. Und es ist eine
Disjunktion von zwei Atomen. Auf der linken Seite steht mich
zweimal Markierung von P1 plus Einmalmarkierung von P2, kleiner gleich drei.
Das hat also genau die Form in den eckigen Klammern.
Und auf der rechten Seite steht eben, okay,
wir scheinen drei Plätze zu haben,
damit das die Form hat,
muss ich also K von P3 auf null setzen im linken
Ausdruck und im rechten Ausdruck ist K von P1 und K
von P2-0 und K von P3 ist
Das steht einmal M von P3,
ist kleiner gleich 1. Also eine Distinktion,
zwei atomaren Formeln, dass die diese Form haben,
also dass die Atome diese Form haben,
liegt schlichtweg daran, damit geht eine ganze Menge.
Damit kann ich eigentlich das ausdrücken, was ich ausdrücken möchte.
Und diese Atome ist unheimlich einfach auszudrücken.
Bei Petranetzen reicht das, weil man mit linearer Programmierung da
noch eine ganze Menge herausfinden kann.
Deswegen haben sich diese
einfach praktisch bewährt
So, und jetzt ist es eine Markierungs- in Varianzeigenschaft eines Netzsystems,
NM0, ein Prädikat der Form, also ein Prädikat,
logischer Ausdruck, der sich schreiben lässt,
als für alle erreichbaren Markierungen.
Also M ist aus R von M0, aus erreichbar.
Gilt das Prädikat Pee von M? Ich kann es auch schreiben,
wenn ich möchte, als für alle erreichbaren Markierungen M
existiert eine Transition Tee, dass das Prädikat gilt.
Dann kann das Prädikat auch
noch von Tee abhängen
Das ist jetzt nicht wirklich ein Unterschied. Ich habe nur endlich viele Transitionen.
Wenn ich möchte, kann ich also den unteren Ausdruck,
den zweiten Punkt ausdrücken durch einen endliche Disjunktion.
Ich sage, den unteren Ausdruck für T1 oder für T2
oder für T3 für alle Transitionen.
Dann kommt da auch eine Formel raus,
nämlich eine endliche Disjunktion von paramisierten PMs.
Sowas kann ich damit jetzt machen. Damit kann ich schon
eine ganze Menge Sachen fragen. Ich kann zum Beispiel fragen,
ob ein Netz K beschränkt ist.
Für ein festes
Warum kann ich nicht fragen, ob ein Netz beschränkt ist,
ohne das K? Warum macht das wohl keinen Sinn?
Warum will ich das gerade nicht fragen? Für die Vater,
unser Geständnis und ich glaube,
das ist natürlich ja auch als Ausdruck in einen Party,
dass das Bilder von Matthias ist
Ja, es gibt noch viel stumpferen Grund,
warum ich das nicht mache. Es liegt daran,
ich habe gesagt, ich will das analysieren anhand des Erreichbarkeitsgrafen,
der bei mir im Speicher liegt.
Das heißt, entweder ist das Netz eh schon beschränkt,
weil es in Speicher passt oder so unbeschränkt,
dann habe ich den Erreichbarkeitsgrafen nicht.
Das heißt,
dass das Netz beschränkt ist,
ist eigentlich schon gegeben
Deswegen muss ich das nicht mehr fragen. Wenn ich weiß,
dass es jetzt eh beschränkt ist, will ich
nur noch wissen, für welche Schranke es beschränkt ist.
So, in dem Sinne, das Verfahren,
das wird ja auch gar nicht greifen. Also unbeschränkt,
beschränkt sagt es mir auch, aber eigentlich nur,
indem ich vorher den Algorithmus mal gefragt habe,
terminierst du oder terminierst du nicht?
Aber sobald der mit einem Endergebnis terminiert, weiß ich,
ja, ist beschränkt. Gut, also stelle ich die
konkretere Frage. Ich frage, gilt für alle Markierungen,
die erreichbar sind, also für alle M,
gilt da das M von P
kleiner gleich Karls
So. Und das ist jetzt für einen Platz so.
Dieser Platz ist klar beschränkt. Ich kann jetzt natürlich noch sagen,
statt M von P, Kleiner, gleich K,
vordere ich, M von P, Kleiner gleich K,
M von und M von P2,
Kleiner gleich K und M von P3, Kleiner gleich K.
Und das für alle Plätze. Da ich nur endlich viele Plätze habe,
kann ich so auch fragen, ob das ganze Netz beschränkt ist.
Das ist dann etwas komplexerer Ausdruck. Was kann ich noch
fragen? Ich kann Markierungsausschluss zwischen zwei Plätzen, P und P-Strich
ausdrücken. Ich kann mich fragen, für alle erreichbaren Markierungen
gilt da
Dass entweder M von P gleich Null ist oder
M von P Strich gleich Null ist.
Einer von, mindestens einer von beiden ist Null.
So, das drückt Markierungsausschluss aus. Hat nur den kleinen Wehrmutstropfen,
ist streng genommen, gar nicht in der Form,
die wir verlangt haben.
Denn nach oben steht, gewichtete Markierung aller Plätze ist
kleiner gleich K. Also
was mache ich
Was soll ich null wählen? Kleiner gleich null.
Wenn ich für K0 wähle, das ist relativ unpraktisch,
wenn die KP irgendwie positiv wäre.
Ja, wenn ich die auf eins wähle,
dann würde ich fordern, dass alle Plätze null sind.
Also, oder ich kann natürlich sagen, kleiner gleich null.
Ja, okay, für einen Platz, nur den wähle ich eins.
Kleiner gleich null, kann nur sein bei null.
Okay, in diesem Fall könnte ich das so hintricksen,
weil das Äquivalent wäre
Wenn ich jetzt beispielsweise aber ausdrücken will, die Markierung
eines Platzes ist 15. Wie würde ich das denn ausdrücken?
Könnte ich das auch mit den Atomen machen?
Wenn ich kleiner gleich 15 haben will, sage ich,
die Markierung soll kleiner gleich 15 sein,
aber nicht kleiner gleich
Das heißt, ich verbinde das, ich sage,
M von P, Kleiner gleich 15 und nicht M von P,
Kleiner gleich 14. Ja, dann bleiben nur noch genau 15 übrig.
Also was hier auftaucht, ist,
ab und zu kommen so Ausdrücke, da steht kleiner,
kleiner, gleich, größer, größer, gleich, gleich.
Das kann ich alles hintricksen. Größer kann ich auch
machen durch Negation von Kleiner gleich und solche Scherze.
Also welche Vergleichsoperationen ich eigentlich reinsetze,
kann ich durch Getrickse mit und oder nicht und meinetwegen
auch negativen K irgendwie hinkriegen
Das heißt, ihr werdet ab und zu so
wie in diesem Fall auch ein Gleichnull sehen oder sowas,
das müssen wir uns jetzt aber denken als Kurzform für etwas,
was ich durch Kleiner gleich ausdrücke.
Zum Beispiel das hier, Verklemmungsfreiheit. Da ist ja gesagt,
für jede erreichbare Markierung gibt es eine Transition,
sodass die Markierung geeignet ist, diese Transition zu aktivieren.
Also die Markierung M hat mehr Marken als Tee zum Schalten braucht.
Da sieht man, da kommt es als größer, gleiche vor.
Denn wenn man das in die Form bringt, ja,
M steht hier rechts, es müsste aber links stehen im Ausdruck.
Das heißt, wenn ich das umtausche, steht da,
M ist kleiner gleich irgendwas. Und das war alle P,
also steht da eigentlich eine große Konjunktion, M von P ist kleiner W-P-T.
Und das für alle möglichen P. Und das Kleine gleich muss ich mir jetzt vorstellen,
dass ich das ausdrücke durch und oder nicht und größer und kleiner gleich.
Aber alle Operationen, Vergleichsoperationen kriege ich eben hin damit
Sowas wir sehen, das sind schon ein paar interessante Eigenschaften,
Verklemmungsfreiheit ist besonders interessanter Fall. Weil verklemmungsfrei klingt ja eher
so wie lebendig. Kommt aber erstaunlicherweise als Markierungsinvarianzeigenschaft vor.
Keine Verklemmung zu haben, scheint etwas Statisches zu sein.
Wie kann ich das entscheiden? Das kann ich ganz einfach dadurch entscheiden,
dass ich zum Gegebenen Erreichbarkeitsgrafen einfach mit jedem Zustand angucke,
ob er die Eigenschaft erfüllt.
Also ich nehme erstmal den ganzen Erreichbarkeitsgrafen und betrachte ihn ungefärbt
Und dann picke ich mir einen ungefärbten Knoten-M heraus, färbe ihn.
Und jetzt gibt es die Möglichkeit, M erfüllt gerade
die Eigenschaft Pi nicht. Dann gebe ich Falls zurück.
Dann sage ich, nö, gilt ja nicht.
Hier, für diesen Knoten gilt sie nicht.
Es müsste für alle M gelten. Tut es aber nicht.
Also das erste Gegenbeispiel tut es ja schon. Ja,
und wenn er da einfach durch die Beischleife durchkommt,
ohne hier ein Gegenbeispiel gefunden zu haben,
dann haben es wohl alle geschafft, den Test zu bestehen.
Das heißt, alle Markierungen M haben die Eigenschaft Pi von M.
Und dann sagt er True
Die Eigenschaft gilt. Klingt jetzt erstmal harmlos. Ja,
die Komplexität dieses Verfahrens liegt daran, dass das Erzeugen des Erreichbarkeitsgrafen schon zugeschlagen hat.
Also da ist ein unheimlich großer Erreichbarkeitsgraf schon mal als Input.
Deswegen geht das so fix. Das war also relativ einfach.
Da musste man gar nicht groß drüber nachdenken. Wenn man zum Beispiel testen will,
ob zwei Plätze, wie in diesem Beispiel die hervorgehobenen Plätze,
P5 und P6, P6 ist der Seema-Vorplatz in der Mitte,
P5 ist einer aus dem rechten Bereich, Da gucke ich,
ob mindestens einer von beiden null ist.
Also ob die im wechselseitigen Ausschluss stehen.
Ja, dann starte ich, konstruiere mir den Erreichbarkeitsgrafen.
Der steht rechts daneben. Und dann rattert er langsam
die Zustände da so durch. Ja, und sobald er
den Rot umkringelten oder den Rot gestrichelten Zustand findet, stellt er fest,
Mensch, da ist ja P5 und P6 drin in diesem.
Das ist also eine Verletzung, sobald er einen von beiden am Wickel hat,
sagt er, ah, falsch, Eigenschaft gilt nicht.
So, und da bricht er dann natürlich auch ab.
Die anderen müssen wir uns ja nicht mehr angucken
Welcher da genommen wird, ist egal,
der Algorithmus arbeitet nicht die Terminismen, nicht deterministisch.
Er sagt, pick einen raus, der noch nicht behandelt wurde.
Das heißt, wir können gar nicht sagen,
welcher von diesen beiden Zuständen, die uns zeigen,
dass die Eigenschaft nicht gilt, welcher zuerst genommen wird.
Man könnte jetzt vielleicht davon ausgehen, dass wir vielleicht Breitensuche machen,
dann ist es der umkringelte, wenn wir Tiefensuche machen,
dann scheint es, wo er der Gestrichelte zu sein.
Wenn wir würfeln, keine Ahnung.
So, also kein schweres Verfahren
Schwieriger dagegen wird es jetzt beim Lebendigkeits.
Algorithmus. Eine Lebendigkeitsinvarianzeigenschaft ist nämlich ein Prädikat der folgenden Form,
die sagt, für alle erreichbaren Markierungen M,
also die von M0 aus erreichbar sind,
gibt es eine davon wiederum erreichbare Markierung M.
Strich ist jetzt von M aus erreichbar, sonst wäre es zu einfach,
wenn das wieder M0 sein müsste. Das heißt,
ich habe eine Kette von M0, beliebig zu M,
dann muss es von da irgendwie eine Möglichkeit geben,
zu einem Strich
zu kommen und dieses M- Strich erfüllt die Eigenschaft
Nein, das kennen wir, in CTL war das Argev.
Auf allen Faden gilt immer, dass es einen Pfad gibt,
sodass zukünftig etwas gilt. AGEF, Großpi. Das
haben wir jetzt mal hier rausgegriffen als wichtige Eigenschaftsklasse identifiziert.
Und was fällt da drunter? Na etwas,
was wir schon kennen, Lebendigkeit hat nämlich genau dieses Schema,
deswegen heißt das auch Lebendigkeits-in-Varianz-Eigenschaft.
Lebendigkeit einer Transition T war ja,
egal welche Markierung,
ähnlich erreiche
Ich habe immer die Chance, davon eine
neue Markierung im Strich zu erreichen, die jetzt teaktiviert.
Endstrich ist größer als das, was Tee zum Schalten braucht.
Wie Collatee. Wenn ich möchte, kann ich damit natürlich
auch diesen Algorithmus für jedes Tee anwenden.
Dann starte ich den Algorithmus für jede Transition einmal neu.
Dann weiß ich, ob das ganze Netz lebendig ist.
Deswegen Lebendigkeitseigenschaft. Für alle M existiert ein M Strich davon.
Oder genauso, ich kann mich fragen, ist Irgendein Zustand MH, ein Homestate.
Da war ja die Aussage, egal wo ich hinkomme,
es gibt immer einen Zustand im Strich, der dieser Homestate wieder ist.
Also egal, wo ich hinkomme, ich komme zum Homestate wieder zurück.
Hat auch dieses Schema. Also Reversibilität wird ausdrückbar,
muss ich nur sagen, M0 ist Rücksetzzustand.
Das wäre nicht das. Für alle M gilt,
es existiert ein M-Strich, da müsste aber M stehen,
Sodass im Strich gleich M0 ist. Also an der Stelle das zweite,
das erste M0, R von M0 ist R von M.
Ja, sonst wäre es ja relativ einfach.
Dann gibt es immer einen M-Strich, mich M0 selbst,
wenn ich gar nicht weglaufe.
Das wäre uns zu einfach. Das sind die Lebendigkeitseigenschaften.
Die werde ich jetzt auch entscheiden können und ich werde sie
so ähnlich entscheiden,
wie ich
Argev entscheiden würde
Agev by CTL, Mensch, da war was,
da musste ich an die starken Zusammenhangskomponenten ran.
Das war mich dieses überall, wo geh lauert und EE,
da hat man daran, das ist hier nicht anders.
Wenn man also so irgendwie unseren Erreichbarkeitsgraf ungefähr haben,
der so aussieht, dann bilden wir die strengen Zusammenhangskomponenten.
Das sind die Dinger. Die haben die Eigenschaft innerhalb eines
solchen Kassens, kann ich jeden Knoten von jedem anderen
aus erreichen
Und jetzt vergröbe ich das ein bisschen, nämlich sage,
okay, wenn ich nur diese Blogs betrachte,
dann sieht das Ganze so aus.
Dann habe ich einen reduzierten Graphen, wo die Knoten nur noch die strengen Zusammenhangskomponenten sind.
Der ist jetzt ein bisschen kleiner und was mich da jetzt besonders interessiert,
welche strengen Zusammenhangskomponenten sind terminal? Das sind die beiden. Ja,
und was es denn auch noch gibt, da konnte man sehen,
die sind trivial, weil da kann ich nicht drinbleiben.
Das war die Begriffsbildung, die wir schon mal hatten.
Die terminalen strengen Zusammenhangskomponenten interessierten beim EG-Checking bei CTL.
Es gibt einen Pfad, auf dem immer gilt.
Das brauchen wir hier auch wieder. Nochmal zur Erinnerung,
und dann machen wir am nächsten Mal weiter,
was waren strenge Zusammenhangskomponenten, also eine Zusammenhangskomponente, war ein Teilgraf,
bei dem für zwei Knoten MI und MJ gilt,
das ist ein Pfad von MI nach MJ gibt.
Naja, wenn MI und MJ beliebig sind,
dann kann ich die Rollen umtauschen,
also gibt es auch immer einen Pfad von MJ nach MI.
Also zwei Knoten kann ich immer
im Kreis verbinden
Das ist eine Zusammenhangskomponente und maximal ist sie,
wenn sie sich nicht mehr ergrößern lässt.
Dann ist das eine strenge Zusammenhangskomponente. Trivial ist sie,
wenn sie nur aus einem Knoten ohne Schleife besteht.
Und Terminal ist sie, wenn ich da nicht mehr rauskomme.
Also es gibt keine Ausgaben, eine Kante mehr im Kassettengraphen.
Und das Schöne ist, man kann die strengen Zusammenhangskomponenten berechnen.
Und das geht linear in der Größe Knoten plus Kanten.
Und da machen wir beim nächsten Mal weiter.
Gucken wir mal,
wie wir das einsetzen