Gut, also, geht wieder los mit den entsprechenden Wiederholungen zu diesem Ding.
Wir haben also diese elementaren Systemeigenschaften uns angeschaut und haben uns dabei auf Beschränktheit,
Lebendigkeit, Kritibilität und wechselseitigen Ausschluss konzentriert in diesen Teilen hier.
So, und das waren die Beispielnetze dafür, wo wir eben einmal ein unbeschränktes,
nicht lebendiges und nicht reversibles Netz hatten, im Gegensatz zu einem entsprechenden lebendigen,
beschränkten und reversiblen Netz, was wir da vorgefunden haben.
Okay, die Beim Beispiel für den Erreichbarkeitsgrafen, den wir
uns heute nochmal genauer anschauen werden, haben wir entsprechend hier gesehen.
Das heißt, man fängt irgendwie mit der Anfangsmarkierung an,
baut das auf, über den entsprechenden Kanten,
die das Schalten der jeweiligen Transition beschreiben und kommen dann eben zur entsprechenden Nachfolgemarkierung,
die mit oder ohne diesen P6 dann hier entsprechend mit dargestellt werden.
In diesem Fall gehört es natürlich mit rein, weil die P6-Stelle mit drin haben. Okay,
was wir dann hatten, waren, dass wir in Variantengleichen,
auf die wir auch noch eingehen werden,
aber erst in eine Woche, auf die man formulieren kann,
sodass man für die Anfangsmarkierung eine Art Konstanz bezüglich der Markierung feststellen kann.
Und dann entsprechend hier dann auch Aussagen treffen kann für jede beliebige Markierung,
die man erreichen kann. Was also eine Eigenschaft ist,
die unverändert im gesamten Netz gilt, egal wie das Verhalten sozusagen sich entwickelt,
das kann man dann für verschiedene Bereiche, verschiedene Teile benennen.
Mitunter schafft man es nicht, für das gesamte Netz allgemeines zu formulieren,
was für einzelne Teile, dass bestimmte Eigenschaften gelten,
dass etwas, was von dem jeweiligen Netz abhängt,
sodass wir also hier auch noch weitere Formulierungen finden konnten,
dass zum Beispiel Markier an irgendeiner Stelle immer kleiner oder gleich einer bestimmten anderen Markierung,
mit einem bestimmten Konstante entsprechend ist, was wir aus den gleichen herausholen konnten.
Wir hatten entsprechend Plätze gefunden,
die wir als Ka beschränkt oder als generell beschränkt formuliert hatten,
haben dann entsprechend verschiedene Arten von Netzen gefunden,
wie groß die sind oder nicht, wie groß, sondern entsprechend,
wie klein sie sind an diesen Stellen und hatten nochmal gesehen,
dass wir hier für alle Stellen immer sagen konnten,
es gibt irgendeinen Kase, dass für alle Markierungen,
nachdem wir das K festgelegt haben, entsprechend hier dieses Teil kleiner ist,
als dieses entsprechende Ka,
was hier hinten in der Ecke steht,
zu sagen.
Gut, was bin machen dürfen, ist deshalb zu vertauschen,
weil wir dann eben für alle Markierungen immerhin irgendeinen K finden können.
Das ist aber nicht das, was wir dann eigentlich haben wollen.
Also man darf diese Existenz und Eiqualenturen, wie ihr kennt,
aus der Logik halt nicht bliebig vertauschen.
Das ist eine der Sachen, die da drin steckt. So,
wir hatten die, das Netz heißt eben entsprechend verklemmungsfrei,
falls wir entsprechend für alle Markierungen aus dem Erreichbarkeitsgrafen es immer wieder schaffen,
irgendeinen Tee wieder zum Schalten zu kriegen.
Das heißt, das gesamte Netz ist irgendwie verklemmungsfrei,
wenn wir irgendwas davon wieder zum Laufen kriegen können.
Nicht, dass wir alles zum Laufen kriegen können.
Das ist dann das, wenn wir es entsprechend lebendig nennen
und Das ist also für das gesamte Netz und das muss gelten,
das sämtliche Transition lebendig sind.
Das heißt, ich kann jedes einzelne Teil meines Systems wieder zum Schalten bringen.
Egal wo ich hingekommen bin, ich kann da immer wieder anfangen.
Das ist der Unterschied zwischen verklemmungsfrei und lebendig,
was ihr euch entsprechend merken müsst.
Wir sprechen aber dann hier die Möglichkeit von irgendeiner M0 zu
einem M und dann wieder zu einem entsprechenden,
mit dem Tee wieder zu diesem im Strich schalten zu können.
Und dieses Spielchen, hier dürfen wir uns aussuchen,
wie lang die ist, aber wird nicht ausgesagt.
Das kann sehr lang sein,
aber es gibt so eine Folge,
die wir finden können
Ups. So, das war dann sozusagen das lebendig für
diese Tradition. Hier haben wir ein Beispiel für verklemmungsfrei,
aber ebenentsprechend nicht lebendig, weil wenn es die drei nicht
zum Schalten kriegen können, dann haben wir einen Rücksatzzustand.
Das heißt, wir haben die Möglichkeit,
wieder irgendwo hin zurückzukommen, wo wir schon mal irgendwie waren.
Und das ist dann insbesondere nett, wenn wir das für
den Anfangsmarkierung machen können, sodass wir sagen können,
wir kommen immer wieder Anfangszustand von unserem System.
Das heißt, von da aus, egal was wir erreichen,
kommen wir immer wieder hinten hin zurück.
Und dass wir da hinten wieder zurückkommen können, heißt,
dass wir auch nicht irgendwo hängen bleiben können.
Spannend ist dann zu gucken, ob das dann immer noch
verklemmungsfrei sein muss oder nicht. Oder ob es lebendig sein muss.
Und das hatten wir uns ja auch entsprechend angeguckt und festgestellt,
dass diese Verklemmungsfreiheit dann noch nicht mal gegeben sein muss.
So, hier haben wir eben ein entsprechendes Netz,
was relausibel ist, was nicht reversibel ist,
weil wir hier entsprechend nicht wieder zurückkommen in dieses entsprechende Beispiel hier.
Dann haben wir einen wegseitigen Ausschluss erklärt. Das heißt,
wir haben PI und PJ mit dem, sind im Markierungsausschluss,
falls wir eben keine solche Markierung haben,
dass beide gleichzeitig größer sind
Irgendwie formulieren. Wir können den Scheitausschluss definieren,
indem wir sagen, okay, beide Kantengewichtungen sind nicht gleichzeitig
sozusagen doppelt für jede für sich sozusagen erfüllt.
An diesen entsprechenden Stellen in der Hinsicht, dass wir sie
zusammen addieren. Also, wenn ich das eigene abziehe,
ich auch noch das andere abziehen kann. So,
an dieser Stelle hier haben wir genau die Möglichkeit zu sagen, ja,
da sind keine zwei Marken drauf und deswegen können wir nicht beide gleichzeitig schalten.
Das heißt, es gibt hier keinen Schritt mit BC
dann direkt durchschalten kann. Das war die Quintessenz aus diesem
Beispiel hier
Gut, strukturelle Systemeigenschaften, die wir uns angeschaut haben,
war eben, dass wir über die Strukturbeschränkungen erzeugen können.
Also bestimmte Systeme haben inhärent, strukturell bestimmte Eigenschaften,
sodass man an den Sachen gar nicht mehr vorbeikommen kann.
Wenn ich einen einfachen Zyklus nur habe, dann kann ich sozusagen
keine Marken erzeugen und vernichte, dann bleibe ich so zu.
Und ich habe eine Marke drin,
kann ich immer durchschalten und ich kann eigentlich nie was kaputt machen,
ich kann auch nichts, genau,
wir es hier zum Beispiel hier vorfinden,
das ist immer beschränkt.
Und dass wir hier fünf Marken drauf packen,
dann kommt trotzdem kein Problem auf,
weil ich habe eben halt
fünf Marken im System habe
Ich könnte auch hier zwei Marken jetzt raustun.
Was müsste ich dann machen, damit entsprechend die Beschränktheit erfüllt
bleibt bei diesem Beispiel? Ich habe mir da erkannt,
dass von B3 nach T3 und nach T2 auch wieder zwei.
Genau, ich müsste da einfach nur auch wieder zwei abziehen.
Und dann wäre das in Ordnung. Muss das dann
genau zwei sein? Das kann auch sein. Das kann
doch sein. Es kann auch... Es kann auch höher
sein.
Stimmt ihr zu
Ich so, mhm, mhm. Doch, richtig.
Also man kann auch eine größere Zahl abziehen. Hauptsache,
wir haben die Beschränktheit erhöht. Was mit der Lebendigkeit passiert und
was sonst noch in dem System ist, das interessiert uns erstmal nicht.
Es geht erstmal um die Eigenschaft der strukturellen Beschränktheit an dieser Stelle hier.
Also egal, wie viele Marken wir verwenden, ist dieses
hier strukturell beschränkt. Dieses hier ist nicht strukturell beschränkt.
Warum nicht? Ich habe hier drin ja auch diesen entsprechenden Kreis,
ich kann die Sachen immer abziehen hier irgendwie,
aber ich habe hier vorhin die Möglichkeit,
wenn hier zwei Marken draufliegen,
dass ich hier entsprechend viele Marken auf diese Stelle schaufeln kann und
von dort bekomme ich sie nicht wieder weg und damit ist das schon mal ungünstig.
Und das nächste ist, Ich kann da halt immer lieblich raufpacken.
Okay, strukturell lebendig ist natürlich auch ein ganz,
ganz interessantes Phänomen an dieser Stelle. Und hier müssen wir
sogar so, wir erzeugen halt immer möglichst viele Marken.
Hier kommen drei dazu. Hier werden zwei erzeugt und
im Grunde haben wir jetzt immer die Möglichkeit,
sozusagen mehr Marken im System zu produzieren, wenn nicht abzubauen.
Je mehr Marken haben, wir wissen, es passiert uns nichts.
Wir können in keine Markierung kommen, wo wir uns was
wegnehmen können und einmal die Markenteile reduzieren können in irgendeiner Weise.
Da werden nie die Möglichkeit haben, irgendwo Marken zu reduzieren,
aber immer wieder diese beiden Transitionen zu schalten bringen können,
haben wir natürlich die Möglichkeit, beide sind lebendig und wir haben gegeben,
dass wir hier das Netz strukturell lebendig haben.
Heißt das also, egal welche Markierung ich habe,
es ist immer T1 und T2 schalten kann?
Danke. Man könnte ja beispielsweise nur also wach, dass wir einziehen.
Genau. Und als wir an Markierung gekehrt sind,
hier eines ist die Entscheidung, die kommt noch zu zweit.
Genau. Und das Problem ist also,
damit ist es nur strukturell lebendig, wenn ich denn
genügend viele Marken habe und von da an das dann halt entsprechend.
Gut, dann haben wir noch eine Menge von verschiedenen Varianten jetzt durchgespielt.
Und zwar haben wir uns diese ganzen Beispiele angeschaut, nämlich wie viel Lebendigkeit,
Beschränktheit und Revisibilität als orthogonale Eigenschaften haben und konnten feststellen,
ja, die sind orthogonal zumindest.
Das heißt, die beeinflussen sich nicht gegenseitig. Beschränktheit sorgt also nicht
für Lebendigkeit oder Lebendigkeit verhindert oder verändert nicht die Beschränktheit,
sondern das ist etwas,
was sich separat über bestimmte andere Konstrukte in diesem System halt vorfinden kann oder muss.
So, und diese ganzen Beispiele sind im Einzelnen durchgegangen,
die könnt ihr euch ja auch in Ruhe
nochmal anschauen
Ist also ganz hilfreich, wenn man sowas wie Klausur weiß,
welche Eigenschaften dann gilt, wenn man solche Beispielfragen beantworten können muss.
So, das heißt, wir müssen im Kopf selber etwas machen,
ihr müsst nämlich gucken, wie sieht das Verhalten von diesem System eigentlich aus?
Und jetzt gibt es mehrere Varianten,
wie ihr sozusagen da reinkommt und dazu werden wir uns halt mit den entsprechenden Erreichbarkeitsgrafen beschäftigen,
mit denen wir also irgendwas ausrechnen können,
wie wir da hinkommen können, wie das eigentlich ausschaut.
Das ist sozusagen das einfache, was als Mensch ganz gut
machen kann. Man fängt aber Anführungsmarkierung an und baut dann
sukzessive immer die einzelnen Möglichkeiten auf und guckt,
wo komme ich denn immer hin
Und das muss man möglichst systematisch machen. Dafür gibt es
ein paar Algorithmen, die wir dann mit da drin haben wollen.
Das andere ist, wenn ich jetzt fragen würde,
können wir denn eine bestimmte Markierung hier oben drin erreichen?
Und ich gebe jetzt irgendeine Markierung vor. Dann müsst ihr irgendwie
ein Verfahren im Kopf haben, wie man es entscheidet.
Und müsst euch das selbst überlegen. Und ihr könnt von außen
in der Klausur, werden wir nicht allzu schwierige Fragen stellen,
aber es werden Fragen in diese Richtung kommen.
Das heißt, ihr müsst selbst immer diese Fragen beantworten können,
egal was für Netze ihr irgendwie vorfindet,
wie ihr prinzipiell daran geht und wie ihr im speziellen Fall daran geht.
Wenn ihr jetzt irgendein Muster zufällig erkennt und sagt,
ach ja, das war das Netz von Sowieso,
und dann haben wir die Eigenschaften mitwiesen, dann wird er schon hinkommen.
Und dann kann ich schneller auf diese Idee,
auf die Antwort vielleicht kommen, ist vielleicht dann ein Glücksfall,
aber vom Prinzip her mit dem Figur dieses beliebigen Netz,
diese Aussage treffen können und beantworten können.
Und für die Advanced Topics ist halt dann,
dass man anhand bestimmter struktureller Eigenschaften vielleicht erkennen muss,
das kann prinzipiell nicht erreicht werden und das kann prinzipiell auf jeden Fall erreicht werden.
Nur für das konkrete Ausrechnen würde ich vielleicht zu viel Zeit
verbrauchen in der Klausur
Das heißt, wir müssen euch die verschiedenen Verfahren klarmachen und nicht,
ob irgendein Beispiel geht oder nicht, oder es versuchen wir auswendig zu lernen.
Dafür haben wir zu viele Möglichkeiten in den letzten,
wie wir ja noch sehen werden,
in der nächsten Veranstaltung in Bezug auf die Menge von Möglichkeiten,
die da auftreten.
Okay, machen wir sie jetzt weiter und kommen eigentlich erstmal auf diese Entscheidbarkeitsprobleme zu sprechen.
Das heißt, was passiert da eigentlich? Und jetzt ist,
jetzt kommt so ein bisschen was,
warum das für euch schwierig wird,
sozusagen sich alle Beispiele versuchen auswendig zu merken und dann zu gucken,
ob man das dann richtig für eine bestimmte Markierung raten kann
Das Erreichbarkeitsproblem ist das Problem für eine Markierung zu entscheiden,
ob sie im Erreichbarkeitsgrafen vorkommt.
Und dieser Erreichbarkeitsgraf, der kann eben recht groß werden.
Und genau da muss man halt entsprechend schauen.
Gegeben ist also ein PT-Netz und eine entsprechende Markierung.
Und die Frage ist, gilt das,
dass das Ding da ein Element davon ist?
Das heißt, gilt, dass die Markierung M
ein Element aus dem Erreichbarkeitsgrafen verändert ist?
Selbstverständlich für die entsprechende Anfangsmarkierung. So,
das Erreichbarkeitsproblem ist sogar für unbeschränkte PT-Netz entscheidbar
Der Beweis dafür, der ist jedoch so,
dass wir den in Spezialveranstaltungen behandeln und nicht hier.
Also um das dann wirklich nachweisen zu können,
muss man schon zwei Minuten länger nachdenken,
um da drauf zu kommen, um zu wissen,
wie das denn genau funktioniert und warum das geht.
Das Erreichbarkeitsproblem ist also auch für unbeschränkte PT-Netze entscheidbar. Also egal,
wie viel Marken ich irgendwo hinpacke, auf verschiedene Stellen,
wenn es irgendwo unbeschränkt ist, kann ich trotzdem sagen,
ob eine bestimmte Markierung erreicht werden kann oder nicht.
Das ist schon mal eine spannende Aussage, ja?
Nüttelbeweis, ist das ein konstruktiver Beweis,
also wie viel der gleichen Algorithmen
Das mit dem man ist. Man kriegt einen Algorithmus,
aber das nützt einem auch nicht viel.
Werden wir gerne sehen, was da kommt. Selbst für
beschränkte Netze ist das Problem sehr aufwendig. Das heißt,
dass dieser Satz, der nächste Satz,
der jetzt hier kommt, das Erreichbarkeitsproblem ist für beschränkte Penets entscheidbar,
benötigt aber mindestens exponentiell viel Platz.
Also selbst, wenn ich sage,
keine der Marken überschreitet eine bestimmte irgendwie gewählte Grenze,
ist trotzdem das Problem,
dass ich exponentiell viel Platz brauche für die Anzahl der
Momente,
die ich da vorfinde
Eine untere Schranke ist ein Space, 2 Hoch-O von N.
Und das wurde für einen 76 gezeigt,
also relativ früh, schon 15 Jahre nach Einführung dieser Netze,
sind wir auf die Idee gekommen, das zu machen.
Naja, jetzt wurden Ticken später eingeführt für Petinetz natürlich.
Aber das wurde also nach relativ früh,
relativ früh schon gezeigt, aber auch erst nach einiger Zeit.
Auch für syntaktisch stark eingeschränkte Netze,
wie zum Beispiel eins konservative Netze, sind hohe Analysekomplexitäten bekannt.
Und er gilt diese Platzschranke, wie hieß das bei unbeschränkten Netzen?
Also auf welches N bezieht sich das genau
Wir reden mit Ungeschenken und das ist so,
dass ich jetzt auf die Größe des Grafen, dann wäre,
da bräuchten wir ja auch einen Effekt geben lassen.
Ja, genau. Aber das ist die Anzahl der Elemente,
die wir daran vorfinden, werden wir gleich nochmal sehen,
kommen wir gleich nochmal drauf. Das Erreichbarkeitsproblem ist also hier
oben formuliert und fühlt sich auf den Seiten 108 von dem Skript
, findet die beiden Sachen nochmal entsprechend dann beschrieben.
Und das Überdeckbarkeitsproblem, also gegeben,
wir haben wieder so ein entsprechendes BT-Netz und eine entsprechende Markierung,
gibt es eine so,
die größer wird als dieses
Ist die nächste Frage. Also kommen wir da irgendwie hin,
dass wir so etwas finden, was größer ist,
was letztendlich ja sozusagen einfach die Varianten sind,
dass ich zumindest in irgendeiner der Komponenten,
also wir geben eine bestimmte Nackierung,
kann ich da immer noch einen drauf addieren an irgendeiner Stelle,
was eigentlich nur die Nachfolgemarkierung dann ist.
Aber das ist halt noch ein bisschen allgemeiner.
Jetzt müssen wir zu erklären, was da mit dem konservativen
Teil auf sich hat. Das PT-Netz heißt eben konservativ,
wenn es keine multiplen Kanten besitzt. Und das heißt,
stets ist diese Kante von X nach Y
ein kleiner gleich
Und entsprechende Funktionen existiert für die gilt,
dass die entsprechenden Kantengewichtung vor und hinterher immer entsprechend gleich sind.
Das heißt, für den, über alle Eingangslemente und Ausgangslemente,
die wir entsprechend vorfinden, haben wir die Möglichkeit,
dass das für alle Transitionen gleich ist.
Nicht möglich sind, wir fordern das dafür.
Netze bei denen FS gleich eins ist,
heißen eins konservativ, sind sie zwei konservativ,
also man sieht sozusagen jetzt zwei Reihen raushaben sozusagen oder drei
Reihen raus und drei konservativ
Und es gilt dann ebenentsprechend automatisch für alle Transitionen,
dass der Vorbereichsbetrag gleich den Nachbereichsbetrag ist, an einen ausgehenden Stellen.
Das heißt, entsprechenden Kanten da drum. So,
das Erreichbarkeitsproblem für eins konservative Netze ist eben P-Space vollständig,
was wir ja aus FG1 wissen, durchaus schon eine Klasse ist,
wo man sich nicht unbedingt mal gerne drin bewegen möchte.
So, das heißt also, die Möglichkeiten,
was ihr damit beschreiben könnt,
sind sehr ausdrucksstark und ihr bewegt euch damit einen Raum von Zustandsmöglichkeiten,
wenn ihr nur eine Stelle dazu packt,
habt ihr entsprechenden Zuwachs an verschiedenen Möglichkeiten im Verhalten quasi.
Das ist das, was dahintersteht. Das heißt,
wenn ihr endlich Automaten nehmt, ist es uns ziemlich kräftig anstrengend,
um die gleiche Menge an Dingen für einen Benutzer entsprechend zu beschreiben.
Also das Verhalten von einem System mithilfe eines endlichen Automaten beschreiben wolltet,
müsstet ihr also sehr viele endlich Automaten dazu zeichnen oder bestimmte Dinge dazu zeichnen,
bis ihr das gleiche Teil ausgedrückt bekämpft, wie mit den entsprechenden Netzen.
Das muss man sich entsprechend angucken,
was das eigentlich wirklich bedeutet
So, hier ist noch der entsprechende Spezialfall.
Wenn man sich hier die drei Reihen, drei raus und
haben halt jetzt da so ein entsprechendes Beispiel für diese Dinge.
Und dadurch kommt das eben auch noch,
dass sie auch noch strukturell beschränkt sind. Ja,
also weil wir sozusagen jetzt genau hier drei Reihen, drei raus haben,
wissen wir, dass wir nichts weiter verschwinden lassen können.
Also nichts weiter. Ja, wir können uns nicht mal verschwinden lassen,
wir können aber auch nichts erzeugen an den Stellen.
Also es kommen nicht mehr Marken,
als wir sozusagen am Anfang mal reingeschmissen haben.
Und trotzdem ist das immer noch so aufwendig, das entsprechend zu berechnen.
Wo wir wissen, dass die Anzahl der Marken
sich nicht verändert wird. Das erteilen sie nur irgendwie
ein bisschen anders
So, woran liegt das? Es liegt an zwei Grundkonzepten dahinter,
nämlich zum einen, dass es Konflikte gibt und zur zweiten Nebenläufigkeit und noch niedlichen Terminismus.
Diese Dinge sind alle in den letzten Jahren drin.
Es wird ja nichts in dems entschieden,
was jetzt möglich ist, also welchen Konflikt ich wie auflöse,
ist in dem Netz vom Schalten her ein Problem dabei.
Und ich kann noch nebenläufig schalten, ich kann das so gleichzeitig schalten,
ich kann da so bestimmte Konfusituationen haben,
ich kann da so in einem Teil was machen und dem anderen auch was.
Und je nachdem, wie schnell ich jetzt irgendwo durchschalte,
entsteht im Konflikt oder ist ins Konflikt entsteht nicht.
Und das ist etwas, was man da drin dann,
was dazu führt, dass die Möglichkeiten,
wie die Marken alle verteilt sein können und wissen alle,
alle Möglichkeiten raus hat,
eben in dieser Größenordnung liegt
So, das Schalten ist dann natürlich das ganz Normale,
was wir da sonst auch immer entsprechend vorfinden. So,
jetzt nur in wenigen Teilklassen der allgemeinen Petinette findet man irgendwie Vollständigkeit,
also irgendwie vollständig,
ist ja so und so schon für viele Sachen nicht schön,
aber trotzdem ist das jetzt hier etwas,
was man gerne haben möchte, weil die Space,
Endspace ist halt etwas, was noch ein bisschen schlimmer ist.
Und in noch wenigeren sogar ditanistischen Verfahren,
die die Reichbarkeitsfrage in Polynomzeit lösen
Ein Netz N heißt adzyklisch, wenn ein Netzgraf keine Zyklen enthält.
Das heißt, wir haben da nicht mal irgendwie,
dass wir wieder zu irgendeiner Sache wieder zurückkommen. Das heißt,
wir haben irgendwie nur so einen Teil,
was entsprechend abläuft und irgendwo anfängt und dann schaltet es irgendwie
eine gewisse Zeit und irgendwann hört es mal auf,
weil wenn keine Zyklen sind,
dann ist das Ganze natürlich irgendwann zu Ende.
Bei endlichen Netzen. So, das Erreichbarkeitsproblem für adzykische Petronetze ist MP vollständig.
Was soll das heißen? Ich habe gerade gesagt,
ich fange vorne an, ich schalte durch,
warum ist das dann so problematisch, dass das rauszufinden.
Ich habe über die Struktur,
wie sie jetzt sozusagen verknüpft sein können und wo Konflikte liegen.
Und ob ich denn da wirklich hinkomme,
ob ich denn das nun in der Reihenfolge auch hinbekomme,
eben noch als Möglichkeit da drin habe.
So, und ohne Beweis kommt jetzt wieder das Äquivalenzproblem, ist unentscheidbar.
Das heißt, es ist unentscheidbar auf zwei gegebene PT-Netze,
N1 und N2, die gleiche Erreichbarkeitsmenge haben.
Und zwar kann man das so ausdrücken,
dass man sagt, ist da eine Graf gleich
dem anderen Grafen
So, welche Klasse kann ich sowas noch entscheiden,
was wir sozusagen aus dem Bauchhaus erstmal so eine einfache Antwort?
Ich will nicht alle haben und nicht die optimale und so weiter.
Ich möchte überhaupt irgendeine, das ist überhaupt eine Möglichkeit mir
angebt, wofür ich sie noch entscheiden könnte wohl.
Von der Grundüberlegung her. Was dann auch klar macht,
warum das unentscheidbar wird
Vielleicht, wenn man Beschränkungen dazu hat. Genau. Bei beschränkten Netzen,
warum? Ja, das ist auf jeden Fall der,
wenn man das mit Erreichbarkeitsgraf zeichnen würde, der wäre dann ja endlich.
Und die Rechnungsgefährte finden wir dann auch entwickeln für ein,
wie gesagt, kann man es ja noch tun.
Genau, wenn es endlich fiel, kann es vielleicht ein bisschen länger dauern,
um zu gucken, ob die wirklich gleich sind.
Aber da sollte das wohl gehen. Für die unendlichen Grafen,
die wir eben da drin haben können, weiß man halt nicht,
ob man nicht doch noch irgendwann nochmal irgendwo hinkommt.
Und von daher geht es dann letztendlich verloren.
Beweist auch das wieder in Spezialveranstaltungen. Überblicke findet ihr entsprechend
in eine Literatur und könnt euch da dann nochmal,
irgendwas erklärt haben wollt dazu, entsprechend anschauen.
So, wichtig ist also das Azyklische,
was wir noch im Rahmen der nächsten Veranstaltung auf jeden Fall
oder vielleicht sogar noch heute nochmal genauer angucken werden.
So, dann haben wir die Unentscheidbarkeit,
was aber erst für die Äquivalenz von ganzen Netzen sozusagen gilt,
während wir das durchaus sagen können,
ob eine bestimmte Markierung irgendwo auftritt im Erreichbarkeitsgrafen,
das können wir sehr wohl klären.
Wie kommt das jetzt? Wenn eine Erreichbarkeitskraft doch unendlich ist,
wieso kann ich dann irgendwie sagen,
was ist da eure Vorstellung von,
warum ich dann wahrscheinlich doch sagen kann,
ob diese Markierungen
irgendwie erreichbar wird
Ich weiß nicht, ob ihr vom Skript ja schon gelesen, von daher.
Ja, wir sind ein paar Handbewegungen, wie das aussehen könnte.
Hab irgendeine Idee? Unendlichen Grafen. So. Da gibt es einen bestimmten Markierung,
ist der Graf ja endlich, was danach kommt.
Frag dich dann nicht betrachten. Ja, okay. Bestimmte bezeichnen kann,
Ernull ist dorthin, den Grafenzeichen, wo die sagen,
der ist ähnlich. Ja, aber es könnte ja sein,
dass ich hinterher erstmal so eine unendliche Sache so viel größer
rauslaufe und dann durchs Zurückschalten mit einmal doch bei so einer Markierung ankomme.
Also ganz so einfach ist es nämlich nicht,
das ist das sozusagen, aber trotzdem genau die Idee,
es kommt aus dieser Endlichkeit, es gibt bestimmt sozusagen,
wo man irgendwann nicht wieder zurückkommt und das werden wir gleich nochmal genauer angucken an den Stellen.
Entschuldigung. So, das, was da genau hinter steckt,
gucken wir uns jetzt nämlich im nächsten Kapitel sozusagen an,
dass wir uns sozusagen mit den Systemverifikationen jetzt angucken und gucken,
ob das sozusagen funktioniert für die entsprechenden Systeme, die wir angucken wollen.
Und das machen wir erst mal über die Analyse endlicher Erreichbarkeitsgrafen, die wir uns jetzt angucken.
So, wir haben verschiedene Verifikationsmethoden für die Netze. Wir haben innovative Methoden, Analyse ist Erreichbarkeitsgrafen. Wir können irgendwie transformieren,
wir können reduzieren, wir können bestimmte Sachen,
also eine Folge von einer Schaltfolge sozusagen, eine Schaltfolge habe,
die genau erst A, dann B, dann C,
dann D schaltet, kann ich auch zusammenfassen und sagen,
okay, ist klar, ich kann nur,
wenn ich diese eine Folge nur schalten kann,
kann ich das auch reduzieren,
da kann ich nur von A bis D und gucke mir die entsprechenden anfangs zur Endmarkierung an und kann das zusammenfassen.
Ich kann nur Sachen reduzieren und das Netz immer kleiner machen
und musste nicht mehr alle Varianten jedes Mal immer alles vollständig durchspielen.
Und man kann sogar noch ein paar andere Reduktionen machen,
Beraterregeln sind da ganz hilfreich für. Und die führen dann dazu,
dass man letztendlich sagen kann, jo, gilt die Eigenschaft,
gilt nicht oder auf einem kleineren Bereich.
Oder wir können eine strukturelle Realyse drüber laufen lassen,
dass wir also irgendwelche Algebra-Allgebrillen benutzen, mit denen wir dann irgendwelche Sachen ausrechnen können.
Die P&T-Varianten, die wir uns anschauen werden,
genau die helfen einem entsprechend weiter. So,
das setzen im Allgemeinen endliche Grafen voraus und Der unendliche Fall wird eben entsprechend nächstes Semester behandelt,
wenn Frank Heidmann die Spezifikation und Verifikation wiederhält.
Und zwar geht es um die Analyse von bestimmten Eigenschaften
dann da. Im entsprechenden Bereich Modellierung verteilter Systeme,
das ist das, was auch nächstes Semester läuft,
das dann auch schon für Bachelor belegbar während des SUV nur für Masterstudenten ist,
haben wir die Betrachtung von solchen Transformationen und auch zum
kleinen Teil
diese strukturellen Analysesachen
Werden auch im Rahmen von Fallen und so weiter
auch im Rahmen dieser Veranstaltung noch ein bisschen darauf eingehen.
Und zu den Sachen folgt noch ein kleines bisschen was. Jetzt wieder einmal dieses Büchlein hier,
kleine Werbeveranstaltung zwischendrin, es steht der Bibliothek,
ihr müsst es nicht selber kaufen, guckt es euch da,
putzt euch da runter und aus dem Regal und benutzt es entsprechend.
Und gut, das brauchen wir nicht. Die entsprechenden,
spannende Dinge, wir hast es schon gesehen haben,
wir haben also ein einfaches Netz, das ist unser Modell,
Petrinetzmodell, Und haben jetzt da drei Token liegen,
das kann ich machen, weil ich kann A,
B oder C schalten.
Und ich kann also diese Markierung verbleiben oder ich kann eben
so lange durchschalten, bis ich hinten das habe.
Ganz einfache Beschreibung eigentlich. So, das System Verhalten,
die Menge der möglichen Verhaltensweisen, die ich in diesem Netz habe,
sind schon recht groß, weil wie viele Markierungen kann ich jetzt erreichen?
Naja, wenn wir es einmal aufmalen,
wollen wir erstmal unten an, wir können also das WC-ABC oder CWA,
wie auch immer, in irgendeiner Reihenfolge schalten.
So, von da aus können wir dann entsprechend das Nächste
und wir kommen also zu so einem Würfelchen,
wenn wir das mit endlich Automaten beschreiben wollten,
welche Zustände in dem System gibt es,
nämlich der Erreichbarkeitsgraf,
können wir
das genauso uns anschauen
Wird bei diesen ganzen Methoden des Grundsätzlichen im Gerät,
ist die Tradition parallel gestalten können? Ja,
alleine schon, genau, also das kommt noch dazu.
Also wir haben ja natürlich weitere Möglichkeiten, auch noch nebenläufig jetzt was schalten zu können.
Das lassen wir erstmal außer Acht. Wenn es nur darauf ankommt,
welche möglichen Nackierungen finden wir und genau das ist ja das,
wo es jetzt erstmal darum geht.
Selbst das ist schon etwas, wo wir merken,
okay, das werden wohl ein paar mehr.
Wenn wir jetzt zehn Transitionen parallel legen,
haben wir einen entsprechend dimensionalisierten Würfel dort vorliegen,
der entsprechend viele Möglichkeiten alle im Einzelnen durchprobiert haben möchte.
Was natürlich wenn wir das jetzt hier drüben sehen,
relativ leicht verständlich ist, wenn ich euch das hinmale.
Ich sage, ich habe die Transition A bis K oder was weiß ich,
oder A bis Z, die alle parallel genau so aussehen,
ist das Systemverhalten für euch ziemlich eindeutig beschrieben.
Das ist ziemlich offensichtlich und klar, man versteht das ganz einfach.
Wenn ich euch den entsprechenden Würfel, K-dimensionale Z-dimensional hinmale und sage,
guck mal, das ist der Zustandskraft von unserem tollen System hier,
dann sagt er, was ist da denn so kompliziert?
Und das liegt halt darin, dass es halt diese Lenken,
dass man immer die ganzen Pfade sieht,
bis man dann oben am Ende ankommt und sagt,
ach ja, da ist der Inzustand,
also den schon zu finden in dieser großen Menge,
ist schon eine Kunst,
wenn sie nicht besonders grafisch hervorgehoben wird
Aber in automatisierten Systemen ist selbst das ein Problem,
wenn die nicht einen vernünftigen Layout-Algorithmus dahinter liegen haben,
weswegen wir solche Sachen auch mit automatischen Leout-Algorithmen nach Möglichkeit
versehen und das bestimmterweise anzuordnen, so eine Erreichbarkeit greifen.
So, wie ihr seht, das ist also Modell und
das entsprechende Verhalten. Was ist also jetzt das grundsätzliche Problem?
Hast du hierhin schon das Wort und geprägt?
Ja, genau, Zustandsraumexplosion. Genau. Das Ding explodiert
uns quasi in Bezug auf die möglichen Zustände.
Das System selbst, was wir da beschrieben haben,
ist immer noch sozusagen ganz einfach zu beschreiben
Wenn jetzt sagt, jeder von euch könnte aufstehen oder sitzen
bleiben. Und jetzt wollen wir alle Möglichkeiten durchprobieren und
dann könnt ihr mal auszählen, was dabei rauskommt.
Wie viele Möglichkeiten wir haben und wenn wir alle mal einmal
durchprobieren wollen, wie lange wir daran sitzen dann hier.
Gut, okay, ist klar, was das heißt.
Aber euch zu beschreiben, jeder steht auf und setzt sich
hin, ist eine ganz einfache Beschreibung fürs System.
Aber was das Spannende ist, bei rauskommen kann,
was ihr da reinkodieren könnt in diese Sachverhalte,
an Informationen, ist dann auch schon wieder spannend.
Okay, wir haben also quasi immer ein Modell vorliegen und dieses Modell,
da haben wir jetzt zum Beispiel als Beschreibungsmittel halt irgendein Programm,
auch gern irgendwas Nebenläufiges,
wenn ihr gerne möchtet
Oder aber, wir haben entsprechend irgendwelche Stage-Hards mit UML
hantiert oder endliche Automaten oder weitere endliche Automaten als Beschreibungsmittel.
Oder wenn ein Prozess Algebra, was ihr noch kennenlernen werdet.
Oder wir haben entsprechend Petri-Netze, die da möglich sind,
oder eben irgendwas weiteres. Ja, da kann man noch
ein paar andere Sachen finden. Das sind also die Dinge,
die erstmal ein Modell beschreiben und erstmal sagen,
wie sieht das System denn überhaupt aus?
So, was habt ihr damit gewonnen? Ihr kennt
die Struktur von dem System, was euch aber fehlt,
ist das, was hier drüben steht.
Nämlich genau das Verhalten von dem System.
Und dazu baut man dann zum Beispiel einen Zustandsgrafen auf,
um zu gucken, was kann das System denn alles tun?
Ihr müsst euch irgendwie vorstellen können,
wo kann das Programm denn überall im Verlauf der Abläufe hinkommen?
Und es ist das, was ich haben möchte.
Also möchte ich bestimmte Zustände in meinem System haben.
Möchte ich das bestimmte Variablen folgendermaßen belegten?
Möchte ich, dass bestimmte Masken gleichzeitig irgendwo verfügbar sind?
Möchte es bestimmte Datensätze in bestimmter Weise erreicht werden,
was sich anhand der Variablen sozusagen an Zustände
entsprechend überprüfen kann
Diese Dinge müsst ihr euch angucken, es gibt inzwischen auch automatisierte Tools,
die sagen, hey, dieses If-Statement kann niemals erreicht werden,
weil du hast eine Formulierung so formuliert,
dass die niemals wahr werden können, sodass du niemals in diesem Zweig reinläufst.
Oder diese Schleife kann niemals betreten werden, weil es prinzipiell nicht geht,
sei deine Bedingungen vorher genau so sind, wenn du vorher denkst,
auf Falls setzt und du hast eine unverknüpfte,
verknüpften Ausdruck und das kommt drin vor,
dann kannst du halt nicht reinlaufen.
Ganz einfache Dinge, die man aus Versehen macht,
wenn man und und oder verwechselt hat oder weil irgendeiner das irgendwie editiert hat,
irgendein kleiner Flüssigkeitsfehler,
da helfen einem die Werkzeuge heutzutage schon in den Programmiersprachen,
versuchen da so ein bisschen
was auf der Struktur zu erkennen
Aber so richtig, was das Programm eigentlich wirklich macht,
versteht ihr erst, wie das ganze Programm wirklich irgendwo ausgeführt wird.
Und da wird es eben schwierig, um sich das vorzustellen.
Deswegen versucht man es zu abstrahieren, Zustandsgrafen, darauf dann zu arbeiten.
Also zum Beispiel, wenn ihr jetzt Programme schreibt für Handys,
dann möchtet ihr zum Beispiel nicht jetzt eure Handys immer ständig
abstürzen und möchtet gerne sicherstellen, dass es so ist.
Also das war genau einer der Bereiche,
wo Nokia mit als erstes die Pitchen-Netzwerkzeuge auch mit eingesetzt und
diverse andere Werkzeuge mit eingesetzt hat, um nachzuweisen,
dass bestimmte Zustände halt nicht erreicht oder doch erreicht werden.
Also ich möchte das Handy immer wieder mit einem Reset zurückbringen,
ich möchte immer bestimmte Sachen machen, dann hat man bestimmte Features,
die man einfügt Feature Interaction ist dann sozusagen das Nächste.
Das heißt, wenn ich so ein Feature habe,
geht das dann immer noch mit dem anderen Feature.
Telefone, ganz einfache Geschichte. Ihr möchtet sozusagen bestimmte Nummern blocken,
könnt eintragen. Ich will nicht von denen angerufen werden.
Zweite Möglichkeit, anderes Telefon, zwei Telefonsozial zusammen.
Ihr habt einen Rufweiterleitung für euch irgendwie eingerichtet. Habt also
eine Rufweiterleitung auf euer Handy. Nun habt ihr den Anruf auf
dem ersten Handy, wo der Anruf auf mich weitergeleitet wird.
Ihr habt aber gleichzeitig, ich will nicht von dem angerufen werden.
Gilt nun, dass ich den Ruf nicht weitergeleitet bekomme,
weil das erste Handy ja sozusagen gesagt hat,
immer weiterleitend den Anruf gilt, ich darf von dem nicht angerufen werden,
was ich für mich formuliert habe, aber nur für mein Handy.
Alleine solche Dinge im Gesamtsystem noch anzugucken, wird auch noch mal spannend.
Das Gleiche könnt ihr innerhalb eures Handys auch sehen,
wenn eine bestimmte Formulierung habt, die sich eventuell widersprechen oder die sich halt sozusagen überlagern.
Und dann müsst ihr wissen, wie das Verhalten ist.
Und wenn ihr jetzt anguckt,
wie viele Apps ihr euch auf euer Handy laden könnt und wie die interagieren könnten,
dann wisst ihr auch,
warum jetzt der Zeit bei diversen Betriebssystemen so viel Beschränkungen existieren
in Bezug auf die Möglichkeit der Verknüpfung von Apps auf einem Handy,
dass die eben nicht beliebig wie ein PC funktionieren und
beliebige Möglichkeiten bitten zur Verknüpfung
Okay, das ist nur als kleinen Exkurs. Das andere ist,
dass wir irgendwelche Transitionssysteme angucken, endlich Automaten hatten wir
ja schon gesehen, dass das sozusagen genau sowas ist.
Prozessgrafen werde ich auch noch schauen. Und hier haben wir
eben Erreichbarkeitsgrafen oder Nackierungsgrafen, die wir dort angeben können,
um entsprechend in dem System etwas zu beschreiben.
Und natürlich können wir auch noch weitere entsprechende Verhaltensmodellbeschreibungen für die
entsprechenden Modelle finden an diesen Sachen. Okay, so,
das ist so die grundsätzliche Idee, dass wir Modelle und Verhalten vorweisen.
Die Geschichte ist halt hier, Explosion ist genau das Problem.
Wenn ihr eure ganzen Daten in den einzelnen Programmen habt und ihr könnt die ganzen Kombinationen haben,
ist es quasi wie aufstehen, Sätzen, auf den Sätzen in meinen Variablen?
Ja, nein, ja, nein. Wenn ihr nur mit Bullshen-Variablen programmieren würdet,
wenn ihr nur das Trinks drin habt und noch die abprüft und im Einzelnen nachfragt,
was damit ist, dann kennt ihr auch den Zustandsraum,
alleine schon die ganzen Ketten von Swings,
die irgendwie bearbeitet werden können oder irgendein Intager oder weißer Taffel was,
die entsprechenden Möglichkeiten, die ihr habt,
mit den entsprechenden Belegungen, wenn ihr sie alle abprüfen wolltet,
wird es schwierig.
Er versucht also immer euch was zu überlegen,
wie ihr das denn so insgesamt verstehen solltet und versucht,
das zu abstrahieren. Das ist einer der Gründe,
warum ihr wahrscheinlich zum Teil objektorientiert oder funktional entsprechend entwickelt,
um bestimmte Sachen zu clustern,
bestimmte Sachen zusammenzufassen und dort dann zu sagen,
dieses Ding kommt oder es kommt nicht in den Bereich dessen,
was mich gerade interessiert.
Und wenn es da ist,
dann habe ich dieses Gebilde und ich kann da auch noch definieren,
was sozusagen, wie das interagiert mit dem Rest.
Dass die Kunst nachher das geschickt zu machen. So,
jetzt habe ich gesagt, es gibt hier irgendwie so einen Erreichbarkeitsgrafen.
Jetzt ist die Frage, wie berechnen wir
das Teil denn eigentlich und wie kommen wir dahin?
Das ist mal
ein Beispiel
Wir haben hier so einen kleinen Grafen,
ein paar Teile, genau, haha, okay,
wirst du auch so gewählt, es ist ein Graf,
der ziemlich banal ist, wenn wir das gleich uns angucken.
Weil wenn wir jetzt schauen,
was kann das Teil denn immer tun, dann sieht man,
naja, so viele Möglichkeiten haben wir hier erstmal gar nicht,
was jetzt alles passieren kann,
kann ich da irgendwas mit anfangen mit der Marke,
wo kann die denn hin?
Naja, hier oben, naja, im Vorbereich, was liegt da alles?
Habe ich da zwei Marken? Ja, habe ich eine,
kann ich also wahrscheinlich schalten, das heißt,
ich kann da und dort und hier hinten eine Marke hinpacken,
dann kann ich mich jetzt so durcharbeiten.
Aber wie man sieht, das ist nicht unbedingt so,
Direkt ganz einfach, weil das Modell teilweise eben jeweilige Aktivitäten hat.
Und jede Stelle hier steht eine Bedingung da, die irgendwie im System erfüllt sein muss.
Letztendlich ist es aber nur, dass sozusagen ein Wechselspiel stattfindet,
welche Mengen von verschiedenen Bedingungen eigentlich gleichzeitig gelten sollen.
Und häufig ist es auch so,
dass bei euch in euren Umgebungen Unterwerbsaktionen, ob ich jetzt einen,
beim Ausgabesfeld für eine Adressdatenerfassung, eben Hans Meyer Müller,
Schulze und sonst irgendetwas da reinschreibe, das ist euch ziemlich egal.
Ihr wollt am Ende nur sicherstellen, die Strings, die da stehen,
die sollen hinterher in die Datenbank und hinterher möchte sie wieder rauslesen können.
Also es ist eine ganz einfache Geschichte, aber Möglichkeiten sind
ganz viele und ihr müsst halt gucken, was geht.
Und dann müsst ihr euch angucken, wie könnt ihr euch
in diesen Masken für die Eingabefelder entsprechend bewegen?
Und bestimmte Bedingungen sind in diesem Subsystem für Datenerfassung
dann entsprechend gegeben und die formuliert ihr irgendwie da rein.
Und es sind halt irgendwelche unabhängigen Erfassungssysteme, weil vielleicht irgendwas nebenläufig passieren könnte,
wenn das dann im System dann so beschrieben wird. So,
jetzt können wir uns angucken, wie sieht der Erreichbarkeitsgraf dazu aus,
um zu schauen, was da eigentlich passiert, genau das,
was ihr vom Skript her schon gesehen habt, nämlich,
dass wir hier irgendwie hinkommen, wir haben eine Anfangsmarkierung,
Irgendeine können wir sozusagen als Komponente eins betrachten.
Dann haben wir die Möglichkeit, wenn wir T1 und mit T2 zu starten.
Also wir haben eben genau diese Transitionen, die oder die schalten wir,
packen die Marken da drauf und dann legen wir los.
Und dann können wir sozusagen T7T3T2T5T8T4T1,
T6 und können hier im Kreis immer schalten oder wir schalten halt
so rum oder könnt noch hier mal längs oder da mal längs.
Aber im Grunde genommen haben wir jetzt ein sehr einfaches Schaltmodell,
wenn ich mir das jetzt so angucke.
Sind eventuell, jetzt kann man anfangen zu zählen,
wie viele Zustände wir da entsprechend drin haben
Okay. Ich habe nur Ton hier. Das heißt aber,
die Beschreibung, was wir jetzt hier machen,
sind also irgendeine Ression, zwei Komponenten entsprechend beschreiben.
Und wir haben eigentlich die Möglichkeit,
uns das jetzt schön separat, sauber strukturiert jetzt anzugucken.
Also wir schauen uns das hier mal an. T1T7,
naja, wenn wir T1 geschaltet haben,
dann sagt er, jetzt kann er T7 schalten.
Ja, das liegt wohl daran, dass wir bei P2
was raufgepackt haben. Haben die Stelle also entsprechend markiert,
haben P2-P3 markiert, können auf P4-P5,
dann sieht man auch entsprechend P4-P5 verändert im Verhältnis zu diesen P2P3.
Der Rest bleibt entsprechend unverändert. Dann kommt T3 dran. Das heißt,
wir können hier unten schalten,
können die Marken von P7 und entsprechend P5 abziehen und von
der Stelle P6 und schalten entsprechend nach P8 und P1,
was dann entsprechend irgendwie hier wieder auftauchen musste.
So, das heißt, jetzt kann man so einzelne durchgehen und
sich dieses Schalten durch das System halt auch selber aufbauen.
Das heißt, wenn ich also jetzt den Reichbarkeitsgrafen aufbaue,
gehe ich hier durchs Netz und gucke mir an,
was kann ich denn jetzt mal
so machen
Welches Problem tritt dabei auf? Geht schon gleich am Anfang los.
Gehe ich links oder rechts rum, ne? Also das heißt,
fange ich mit T1 an, dann fange ich mit T2 an.
Wenn ich mit T1 anfange, dann komme ich in diesen Zweig rein.
Wenn ich mit T2 anfange, komme ich hier drüben hin.
Kann ich also jetzt alles schön machen,
kann da alles feststellen, aber da muss ich,
wenn ich hier fertig bin, trotzdem nochmal da drüben hin,
um den gesamten Erreichbarkeitsgrafen aufzubauen und muss dann Dario beim Rüber.
Also ich muss also die ganzen Fallunterscheidungen mir auch noch alle merken und noch abarbeiten.
Kann man das nicht auch mit Breitensuchen zu sagen,
also zuerst guckt, was kann ich machen,
dann wieder zurückgeben, Ja, genau.
Tiefen bei Breitensuche ist dann letztendlich vom Prinzip erst mal egal.
Und aus verschiedenen Gründen wird mir das eine das andere auch benutzen.
Warum würde ich zum Beispiel nie nur tiefen Suche
sozusagen machen bei diesen Sachen, bei diesen Aspekten?
Da würde man. Da könntest du nur umständen,
eine von Sturmrechnung her loszudogen. Ja, beim Zyklus,
da kann ich abbrechen. Dann sage ich, ja,
okay, gut, wenn ich jetzt fertig bin,
das haben wir gerade eben so beschrieben.
Genau wenn ich in so einen Zyklus reinlaufe,
hier und da, wie alle meine Zyklen fertig,
dann würde ich sagen, okay, jetzt wechsle ich dann.
Das wäre genau der Punkt, wo ich dann wechseln würde
Genau, weil das war schon eigentlich die richtige Idee dabei.
Gibt einen Zyklus, also es gibt dann... Ja,
nimm den halt, mit aller Zusatzsaison spricht er, wenn vielleicht jeweils eine neue Marke erzeugt.
Ja, genau, was passiert dann nämlich in meinem Grafen? Ich komme nämlich nicht wieder zurück,
sondern wenn er was Neues noch erzeugt wird,
noch was erzeugt, noch was dazu gepackt ist,
genau das, was ihr beide, glaube ich,
sagen wolltet, dann entsprechend, nämlich,
dass es dann entsprechend immer weitergeht und sozusagen der Erreichbarkeitsgraf unendlich in diesem Pfad sozusagen absteigt und wir einfach dann nie dazu kommen, dass wir rüberkommen.
Deswegen war das natürlich eine gute Idee, zu sagen,
jo, wir können mit Breitensuche vorgehen und gucken uns erst mal,
wenn wir eine Schaltfolgen der Länge 0, schalt folgende Länge 1,
schalt folgende Länge 2 und so weiter uns die angucken,
dann müssen natürlich sozusagen in der breiten Suche sozusagen durch diesen Grafen durchmarschieren.
Und dann erkennen, wenn wir da irgendwelche Zyklen haben,
können wir das abhaken, dann brauchen wir nicht mehr weiter durchzulaufen und können sukzessive so abarbeiten, wie das geht.
Genau, das werden wir gleich nochmal sehen. Wir haben nämlich jetzt die Summen Algorithmus,
das heißt, wir haben entsprechend hier oben das Netzsystem,
was wir reinpacken und jetzt haben wir so einen gerichteten Grafen,
den wir mit V&E haben und sagen,
das Netzsystem ist entsprechend beschränkt und wir initialisieren also erstmal diesen Erreichbarkeitsgrafen mit der Anfangsmarkierung und der Menge und sagen,
das M0 haben wir nicht angemalt.
Es ist ungefähr
Wir gehen also jetzt von Färbung wieder aus.
Eine typische Geschichte in diesen Grafen, dass wir sagen,
okay, wir haben gefärbte und ungefärbte Knoten.
Erstmal ist das Ding ungefärbt und soweit uns gefärbt haben,
wissen wir, wir waren schon mal da oder sowas.
Oder es erledigt oder es gibt ja verschiedene Gründe,
warum man entfärbt. So, hier haben wir jetzt,
solange es eben ungefärbte Knoten, diese Menge V gibt,
die wir jetzt hier entsprechend eingetragen haben.
Machen wir das folgende. Und das M0 ist quasi ja
der Anfangsknoten in dem entsprechenden V. Hier ist die Menge mit
den ungefärbten Knoten, da drin liegen erst mal.
So, dann wählen wir irgendeinen ungefärbten Knoten und färben ihn.
Das heißt, Hindus M0 und pinseln das erst mal an,
weil sagen, da waren wir jetzt schon mal.
So, und jetzt für jede in M aktivierte Transition machen wir es folgende.
Und genau das war dann eben die entsprechende Breitensuche,
die jetzt eben gerade vorgeschlagen wurde. Wir gehen also hin,
nehmen diesen Knoten und sagen, okay,
wenn ich die Anfangsmarkierung, gucken uns jede aktivierte Transition an.
Das war bei uns T1 und T2.
Die nehmen wir und für die gucken wir jetzt nach.
Und wenn wir die beiden abgearbeitet haben,
wir haben den M0 ja schon mal gefärbt,
dann sind wir eigentlich fertig, wenn da keine ungefärbten Knoten wieder zukommen.
Wir müssten, also was müsste also passieren mit T1 und T2
, wenn ich dann aufhören wollte in meinem Algorithmus
Was darf ich durch T1 und T2 dann nicht mehr dazu packen?
In diese Menge von Faust, also Menge von Knotenmenge V.
Damit ich nicht weiterlaufe. Meine Bedingung heißt oben ist ja,
lebt einen ungefährten Knoten und hier umsteht,
es gibt ungefähr die Knoten in V. Ja,
ich darf keine neuen hinzutun, ne?
Also was bedeutet das für T1 und T2 dann?
Passt nicht zu unserem Beispiel, aber ich sage auch,
was müsste mit den beiden Transitionen passieren
Ja? Nee. Okay. Währenddessen, wirklich. Wir
essen mir die Transition. Und irgendwie T1 zu 2. Irgendwas
. Was müssten die tun, damit ich jetzt aufhören würde
und hinterher keine weiteren neuen Knoten dazu tue?
Sie müssen, wenn sie dann trotzdem schalten,
müssen sie wieder in die Anfangsmarkierung zurückführen.
Weil da habe ich keine neuen Knoten, die ich hinzufüge.
Oder in eine Markierung, die ich schon hatte.
Wir hatten da bisher nur M0. Das heißt,
unser Setzsystem würde so aussehen, wir haben eine Anfangsmarkierung M0,
können mit T1 nach M0 schalten und mit T2
nach M0 schalten
Hätten keine neuen Knoten dabei und wären eigentlich fertig,
weil wir das schon mal eingefärbt haben.
So, das ist erstmal die Grundidee zum einfachsten Anfang.
Wobei wir dann schon immer in komplizierter Reise zwei Transitionen hatten.
Wir sagen, wir haben gar keine Transition,
die aktiviert ist, sind wir sofort fertig.
Das ist der Reitbarkeitsgrafen im Null. Wir sehen,
dass wir färben das ein. Jede aktivierte Transition,
da gibt keine, also springen wir darüber weg,
wir sind fertig und das Ergebnis ist da.
Das ist dann sozusagen der einfachste Fall. Wenn wir jetzt
die 1 und die 2 haben und die würden wieder zurückgehen
nach M0, hätten wir eben auch zweimal das abgearbeitet.
Der Erreichbarkeitsgraf wird nicht großartig anders aussehen,
außer dass wir jetzt zwei Öhrchen sozusagen da dran haben,
nämlich von für das die 1 und T2,
also die Kanten entsprechen, wird also anders aussehen.
So, aber jetzt gehen wir mal davon aus,
dass wir unserem Beispiel von eben sind.
Wir haben diese Anfangsmarkierung und GMET1 und T2 jetzt erst mal irgendwie weiter.
Und für jede NMAktivierte Transition müssen wir das folgende machen,
also wir müssen das für T1 und für Tipp 2 durchspielen.
Dann lasst es, berechnet das im Strich, womit wir,
wo wir hinkommen, wenn wir einen Tee geschaltet haben.
Also wo kommen wir hin,
wenn wir unser T1 geschaltet haben und wo kommen wir hin,
wenn wir das T2 geschaltet haben?
So, ich werde jetzt im Folgenden nicht mehr
auf diese C2-Sachen eingehen
Weil der Rest ist schon kompliziert genug, aber das spiegelt sozusagen,
wir würden das, also für alle Transitionen machen.
Wenn da 15 Transitionen wären, das ist 15 Transitionen ausrechnen,
wir gucken uns erstmal nur einen Weg an und gehen davon aus,
dass wir für das T2,
T3 bis T15 auch alles so durchlaufen würden.
Ja, da sind wir also erstmal auf dem Stand,
wir gucken uns jetzt diese T1-Sache an,
was passiert da eigentlich in dieser Berechnung?
Wir haben also irgendeine Nachfolgemarkierung,
die hatten wir ja eben uns angeschaut, wie die sozusagen ausschaut,
indem wir halt diese zwei Marken abziehen und drei Marken generieren in den anderen Stellen entsprechend.
Ich hoffe ja, sie ist mal vor euch,
sonst müsst ihr kurz aufs Skript gucken,
ihr habt das ja vor euch liegen.
Jetzt haben wir in If stehen. Wenn es also
ein Knoten M3 gibt aus diesem V, derart,
dass wir von dem M3 irgendwie mit einem Delta nach dem Strich
kommen und das M3 ist kleiner als das im Strich,
dann hören wir irgendwie auf und sagen, das Netzsystem ist unbeschränkt.
Haben wir bei uns jetzt nicht,
also fällt das schon mal weg hier oben und wenn es keinen Knoten M3 aus diesem Teil gibt,
der hat das M3 gleich diesem im Strich ist,
dann machen wir folgendes, wir nehmen das V und packen einen Impfstrich dazu.
Was machen wir also? Wir tun zu unserem anderen Anfangsmarkierung,
haben wir ja eine Kante raus für das T1 und haben dann einen Knoten,
der genau die Markierung enthält, die wir jetzt gerade neu erreicht haben.
Das heißt, die beiden Stellen, die reingegangen sind,
die nehmen weg und die anderen drei tun wir hinzu.
Das sind so fragende Gesichter, ich gehe nochmal einen,
gehe hier nochmal rein. Wir haben also hier bei dem Schalten,
sagen wir T1,
wir ziehen also P1 und P10 sozusagen ab und packen die Marken nach P2,
D7 und P9 und das sehen wir halt in unserem entsprechenden Grafen hier entsprechend drin,
dass wir von hier oben des P1 und das PC hin wegnehmen und dafür eben P9 und P7 und P2 sozusagen hinzutun.
Das ist also genau das, wie wir jetzt schrittweise da
durchlaufen durch diese Sachen. So, das machen wir jetzt
also hier für diesen Fall und das M-Strich ist ein ungefärbter Knoten.
Warum ist der ungefärbt? Sehr, weil sie dann im
nächsten Durchlauf von deiner Weitererzusuchung
Genau, wir wollen dann für den nochmal nachgucken,
was kommt an danach wieder. Und das heißt,
wenn wir jetzt also so eine Marke dazugetan haben,
wir können also, wie viel neue Knoten können wir in diesem Durchlauf,
wenn wir jetzt hier sind, für jede aktivierte Transition,
wie viel können wir so maximal dazutun?
Naja, so viel, wie wir aktivierte Transitionen hatten,
so viele Knoten, neue Knoten können wir eventuell generieren,
mehr werden es nicht sein.
Also, wenn ich in einem bestimmten Knoten,
in einer Markierung zwei aktivierte Transitionen habe,
kann ich maximal zwei weitere Markierungen reinbekommen.
Genau, das sehen wir auch bei uns.
Wir haben von unserer Anfangsmarkierung mit T1 und T2
zwei verschiedene Markierungen,
die wir haben
So, jetzt haben wir aber den komischen Fall gehabt,
dass wir hier drin stehen hatten, wenn es keinen Knoten gibt,
der genau sagt, dass die beiden gleich sind.
Das bedeutet, dass wir hingehen können und sagen,
okay, gut, wir haben so eine Markierung schon mal.
Naja, wenn das so wäre, dann müsste ich ja
nur eine Kante einfügen, dass ich genau dahin wieder zurückkomme.
Das ist dann sozusagen ein Fall, wo ich sage,
ja, okay, mal ein Schleifchen,
aber wir packen jetzt also, was dann wieder rein,
nur die Kante, aber der Knoten,
den wir haben,
der ist auf jeden Fall was,
gefärbt oder ungefärbt
Was sind alle Knoten, wenn ich an diesem Punkt ankomme?
Das sind alle Knoten, auf die ich jetzt kommen könnte,
wenn sie schon drin sind, sozusagen.
Also Nackierungen, die schon drin sind.
Die sind schon gefärbt. Unser M0 ist ja schon gefärbt.
Also wenn ich dahin zurückkäme, dann wäre das Ding gefärbt.
Wenn ich jetzt irgendwo anders bin und ich komme wieder zurück,
ist ja der Algorithmus, nachdem er gerade als erstes,
bevor du irgendwie weitermachst, färbt das Ding erst mal ein.
Das heißt, wenn ich immer irgendwo hin zurückkomme,
komme ich ihm auf gefärbte Knoten.
Jetzt die Frage, wie kommen jetzt neue Knoten hinzu?
Naja, genau nur durch diese Aktivität,
dass ich sage, der ist nicht da drin.
Dann packe ich eben so einen ungefärbten Knoten damit rein,
nehme ich meinen M-Strich.
Und genau so komme ich zu neuen weiteren möglichen Markierungen
Wie gesagt, maximal so viele,
wie ich aktivierte Transitionen hatte und bin ein bisschen Glück,
hört das sozusagen auf irgendeiner Stufe auf. Die Kanten,
die ich dann dazu packe, sind genau die,
wie ich von M nach dem Strich komme,
nämlich genau beschriftet mit der entsprechenden Transition,
also genau mein Erreichbarkeitsgraf, wo ich sage,
ich schalte von der Anfangsmarketing M0 mit T1 in die nächste Markierung mit dem P2,
bliblablub,
mit 7 und 9 da mit drin jetzt.
Klaas Weit
So, jetzt gucken wir noch mal auf den Algorithmus obendrauf.
Was passiert jetzt in diesen Dingen, wenn wir das jetzt so,
wenn wir jetzt da drauf hauen und das durchgehen?
Was ist jetzt sozusagen die wichtige, die wichtigste Frage,
die jetzt hier auftaucht?
Wie lang läuft der Algorithmus? Fragen wir mal so.
Ja, Moment. Ich habe zwei Fragen gestellt, ne?
Wie lange läuft er und was ist das Wichtigste?
Ihr dürft euch aussuchen, was ihr antwortet.
Der Nächste macht die nächste Antwort
Und das stellen bei Algorithmen ja generell zwei Fragen.
Erst ist der mit jeder Zeit, das ist ja korrekt,
das heiße Terminier ist immerhin von welcher Dienstklasse.
Ja, okay, gut, das sind schon ganz viele Fragen jetzt.
Also die erste Frage war, war die erste Frage,
die ich jetzt mal so in den Raum werfe,
war, terminiert er denn eigentlich?
So, das stimmt. Wir haben ja hier irgendwas,
ne? Der Algorithmus terminiert. Also, was?
Wie terminiert er, wann terminiert er?
Und terminiert er
Das ist die nächste Frage. Jo. Also sind wir
nur eine endliche Anzahl von möglichen Markierungen haben,
das terminierte, weil wir irgendwann alle eigentlich erfahren müssen.
Gut, wenn wir da endlich ein,
zwei von Markierungen haben, dann terminiert er.
Gut, die Antwort finde ich gut.
Gott, was ist mit meinen anderen Fragen?
Trainiert ihr denn immer? Immer anders, aufgrund,
nicht immer die die gleichen Leute hier?
Ja, nein, weiß nicht. Okay, das sind
verschiedene Varianten. Ich glaube nicht zwangsläufig.
Aha, warum? Ich bin im zweiten,
zweiten 3-Einkommen
Dann würden wir da rein theoretisch und nennen es oft möglich, also ungefähr zufügen.
Genau, das war genau deine Frage von vorhin. Es gibt Möglichkeiten,
genau, da bist du jetzt genau an derselben Stelle wieder,
genau, deswegen passt das auch,
dass du gleiche Gedankenmuster nochmal hast an der Stelle.
Ja, sehr schön. Wenn ich jetzt immer einen Marken dazu
tue zu meinem Markierungen, die ich da drin habe,
also irgendeine Stelle sozusagen noch eine Marke reintue,
noch eine Marke, das ist so zwei, drei,
vier, fünf, sechs, sieben.
Das ist ja jetzt mal eine andere Markierung,
die ist jedes Mal wieder ungefähr, ich muss weitermachen.
Das heißt, er läuft also einfach durch und terminiert mich
an der Stelle. Ziemlich unglücklicher Style. So,
wann terminiert er jetzt noch? Kleiner Moment,
kann man nicht machen
Steht ja auch in der Folie, wenn das als System
nicht denken lässt, aber es ist unzuschränkt.
Passiert? Ja. So. Was habe ich jetzt eben gesagt?
Und jetzt kommt deine Frage. Ewig, oder? Nicht fragen,
sondern eigentlich die, oder doch, Frage schon,
wie sinnvoll es ist, dass man dort diese Ausgabe terminiert,
ohne Ergebnis mal so unbeschränkt ist, hat,
wenn man in dem Fall das unbeschränktes gar nicht sicherstellen kann,
dass er überhaupt terminiert.
So, genau. Jetzt kommen wir nämlich zu meinem,
was habe ich euch eben versucht auf die Nase
zu binden
Das ist völlig richtig. Das hast du jetzt eben gerade gesagt.
Und was deiner Frage, jetzt passt das nämlich genau zusammen.
Ich wusste, das kommt aus... Wie hängt das jetzt
zusammen? Und wie weit war eine Aussage richtig oder falsch
von eben? Jetzt, was habe ich eben gesagt?
Okay, taka ka taka, taka, ich sehe das.
Ja, okay. Also, ja, wiederhol doch mal
, was? Das würde ich auch ganz drehen.
Ja, das wollte ich ja. Das hilft nochmal beim
Nachdenken, warum, weshalb, weswegen.
Genau, ja
Steht ja auf der Vorderseite terminiert, wenn das Netz unbeschränkt wird.
Aha. So, jetzt kommen wir zu der Frage von dem Herrn
ganz hinten. Also, was habe ich dazu gesagt?
Und was, das war falsch. Muss man ganz deutlich mal
zu sagen, ja. Ich kann jetzt doch nicht sicherstellen,
dass er terminiert, weil man unendlich... Genau,
das war die falsche Aussage, genau.
Ich kann jetzt doch nicht sicherstellen, dass er terminiert.
Kriegst du das hin? Ich kann aussehen.
Okay, okay
Also, wenn man zeigen will,
dass er auch ein Fall des Unbeschränkes terminiert,
dann muss man eben zeigen, dass diese Bedingungen,
die ich mir, das war jetzt ein, zweiteren ist,
eine Akkubedingung für diese Schleife ist ja so verhindert,
dass man immer wieder unendlich oft in 2, 2,
3 reinkommt, also so ein,
wie man das jetzt alles genau zeigt,
da habe ich mich gerade auch noch ein Problem.
Genau, weil genau, da wollte ich genau hin.
Ich bin über einen Teil weggesprungen, an den,
an den Sachen. Ich bin ja irgendwie hier drüber,
einfach drüber weggehüpft über das Teil,
wenn ihr euch erinnert
Und dann habe ich eine falsche Aussage zu dir getroffen und ich gesagt,
ja, dann kommt immer eine Marke dazu,
jetzt läuft er unendlich weiter.
Da wollte ich einen Widerspruch hören und da meldest du dich ja gerade,
okay, das wäre genau die Antwort dazu.
Also das ist genau das Problem, was jetzt hier auftaucht.
Oder zum Glück nicht das Problem, sondern unser Algorithmus ist
also in der Lage, da irgendwas mit zu machen.
Und deine Frage terminiert der überhaupt? Ist jetzt meine Frage,
terminiert dieser Algorithmus denn nun? Und ja, der terminiert.
Das ist also ganz sinnvoll, wenn wir Programme schreiben,
dass wir das nicht unendlich lange laufen lassen und uns den Speicher
voll knallen und dann läuft er und läuft er und läuft,
dann hört nicht wieder auf.
Wir wollen ja eine Möglichkeit wirklich terminierender Algorithmen fragen,
wenn wir konkrete Fragen haben. Wir wollen ja nicht irgendwie
nur nicht wissen, ob er noch nicht fertig ist.
Oder aber eben in so einer Endlosschleife steckt.
Also versuchen wir unsere Algorithmen entsprechend so zu dieser einen,
dass das entsprechend hinkommt. Das besser also terminiert.
Was macht also dieses entsprechende Teil hier vorne? So,
und diese Formulierung da, das ist eben ein bisschen schwieriger
und deswegen habe ich da jetzt extra merkwürdig hier vorgetragen dazu.
Also wer kann dazu, was aus der hinteren Reihe mal vielleicht,
ja, ihr seid immer wieder dran,
aber von euch da hinten nochmal, was sagt diese Zeile aus?
Wer kriegt das auf die Reihe
Ja, aber ich habe mich gesehen. Erstmal gucke ich jetzt,
ob die anderen da hinten auf sich dazu melden.
Es ist wie eine Übungsgruppe. Wenn ihr selber was versucht,
aktiv zu formulieren, sitzt das viel besser.
Entweder ihr kriegt eine Korrektur von euren Ideen von mir
oder ist Bestätigung? Also wenn wir, ich sag mal,
da haben wir eine Gemarkierung im Strich und die soll ja echt größer sein als er im Strich kriegt.
Und wenn wir das haben, haben wir jetzt von diesem M-Strich-Strich,
auch mit so einer Vorfolge, glaube ich,
sieht man, oder so nach einem Strich raum,
dann können wir von M-Strich das ja auch wieder ausmachen,
weil die ja quasi in allen, in anderen Monaten größer ist,
echt größer ist als er im Strich,
Und das kann man ja ewig so fortführen.
Und dadurch sieht man, dann kommt man irgendwie auf
den Gedanken, dass das Wort unbeschränkt sein muss.
Genau, genau das war jetzt also die richtige Antwort.
Das heißt, wir haben ja gesagt, wir rechnen einen Endstrich.
Mit dem schalten wir jetzt irgendwie dahin. Und dieses Endstrich
ist hier hinten, das ist tatsächlich echt größer als unser M3-Strich.
Dies im Drei-Strich ist aber ein Element von einem meiner Markierung,
die ich vorher schon erreicht habe. Das heißt,
ich war schon schon mal irgendwo dahin gekommen,
mit dem ich das also geschafft habe, dass ich in einem M3-Strich komme.
Jetzt komme ich in eine Markierung durch das Tee
Die echt größer ist. Was heißt das?
Ich kann also jetzt wieder mit der Schaltfolge,
die wieder irgendwann das Thema wieder schaltet, dass ich wieder größer bin,
kann ich also auf jeden Fall das irgendwie auf die Reihe bekommen,
sich schalten kann.
Und das bedeutet, ich kann beliebig viele Marken an.
Welche Stelle es auch jetzt gerade sein mag, das haben
wir gar nicht gesagt. Es existiert mindestens eine Stelle,
auf der ich beliebig viele Marken aufpumpen kann.
Das bedeutet, es ist unbeschränkt. Und dann führt es dazu,
dass wir sagen, okay, der Algorithmus terminiert hier ohne Ergebnis,
weil das Netzsystem ist unbeschränkt und sagt Schluss.
Warum baue ich das da ein? Warum lasse ich es nicht weiterlaufen?
Und jetzt kommen wir genau auf deine Frage am Anfang wieder.
Also es geht natürlich darum, dass man will,
dass dieser Algorithmus terminiert, Genau, das ist die Antwort.
Moment, die Antwort ist also jetzt einmal,
um das kurz zu Ende zu führen, wir wollen, dass das Ding terminiert.
Wir wollen nicht die Möglichkeit haben, dass es irgendwie einfach weiterläuft.
Das ist der Grund, warum wir das so einbauen.
So, das ist richtig, die Antwort. Und jetzt deine Frage nochmal dazu. Ja,
ich will noch nicht sehen, was wahrscheinlich schnippelt,
aber nicht noch die Serie ist,
dass das Ganze auch umgekehrt mit mir seid,
in dem Fall das, was System ungeschenkt ist,
was mit den Bedingungen auf jeden Fall drin sein muss.
Und wenn nicht eventuell irgendein anderer Film. Genau,
warum finden wir jetzt keine Markierung, die dann irgendwie das
so vorbeimanövriert an irgendeiner Stelle? Warum kann es nicht sein,
dass wir irgendwie irgendwie immer so unvergleichbar größer Teile kriegen.
Ja, da muss man länger drüber nachdenken.
Das könnt ihr auch nochmal wirklich machen an der Stelle,
weil sonst kommen wir nicht ganz durch mit dem,
was ich heute noch alles erzählen will.
Die Grundidee ist aber, dass wir ja irgendwie
eine endliche Menge von Stellen haben
Und ja, ja, durchlaufen die und kommen immer weiter
und pumpen irgendwas auf und irgendwann wissen wir,
dass das echt sozusagen irgendwo da entsprechend drin sein muss in diesen Mengen,
die wir da schon haben.
Und wir sind dann echt größer als diese anderen Teile und dann wird es unbeschränkt.
Ja, an irgendeinen Stellen müssen wir irgendwann dazu kommen,
dass wir beliebig viele Marken raufpacken, weil die Möglichkeiten,
die wir ja haben mit unseren Transitionen, ist endlich sozusagen,
welche Möglichkeiten wir haben, wer, wann was feuern kann.
Aber letztendlich ist das sozusagen eine ähnliche Anzahl von Transitionen,
wie oft wir sie schalten müssen. Und irgendwann haben wir
irgendeiner mal doppelt geschaltet. Also in jeder Vereine Transition zustehen oder bestimmte Konventionationen,
Konstellationen zuständig ist, können wir es immer erreichen,
dass wir die dann eben so lange schalten lassen,
bis da, auf der was kommt.
Wenn du das nicht bist, dann ist sie das.
Ansonsten bist du das. Irgendeiner von euch,
einen kriege ich von euch. Irgendeiner muss dafür sorgen,
dass irgendwo noch was zurückgeschaltet wird und dass wir da an
der Stelle pumpen können und dann wäre es unbeschränkt.
Wenn es nicht der Fall ist,
habe ich eine endliche Menge von Möglichkeiten von Markierungen vor euch.
Und jeder von euch kann, also nur endliche Mengen von Aktivitäten an den Tag legen.
Wenn ich also euch immer als Transition sehe,
die irgendwas tun können und eine bestimmte Menge von Variablen,
dann kann ich sagen, okay, wir haben eine bliebige Anzahl von Stellen,
die wir jetzt hier vor uns liegen haben.
Und jeder von euch kann jetzt etwas tun.
Und jetzt kann ich euch so und so oft schalten lassen,
sagen, im Endeffekt müsst ihr irgendwann einmal dazu kommen,
dass das sozusagen an den Stellen dann an irgendeiner Stelle eben dann doch das wiederholt.
Ansonsten kommt es zum gleichen Zustand. Und wenn das für
alle gilt, ist ja so und so endlich,
wenn das nicht der Fall ist, musst du größer sein.
Und dann habe ich dich und sage, juck da,
bist du unbeschränkt und dann wissen wir, dass wir terminieren.
Was wir da nicht sagen, ist,
was fehlt mir jetzt an Informationen dann noch da?
Ob es noch weitere Stellen vielleicht gibt,
wo das Ding unbeschränkt wäre. Es reicht mir also irgendeiner,
der böse hier ist im Zimmer, dafür sorgt,
dass wohl endlich viele Marken auf unsere Variablen packen können.
Und sobald du das bist oder du das bist,
sagen wir, Feierabend habe ich einen gefunden,
reicht mir
Das und steigt aus und habe aber eben kein Ergebnis im Sinne von,
ich bin jetzt fertig und habe jetzt den schönen endlichen Grafen hier aufgemalt,
weil er eben unendlich ist, welcher unbeschränkt,
der Erreichbarkeitsgraf ist eben unendlich.
Und von daher breche ich dann ab. Gut,
so, also diese Zeile hier, das ist die,
die euch sozusagen interessiert, die ist nur nur in leicht blaue Stadt,
in rot wie sonst nachher, aber das sollte ja auch so klar sein.
Okay, haben wir also genau diese Berechnung,
haben unseren Grafen und sehen da drin so bestimmte Bereiche.
So, das Abbruchkriterium, was wir jetzt hatten,
das jetzt nochmal kurz erzählt, Ein Netzsystem ist genau dann unbeschränkt,
wenn es zwei erreichbare Markierungen hat, in diesem Reifbarkeitsgrafen,
die Folgen weniger erfüllt.
Es existiert eine Schaltfolge T-Stern, also irgendwie wird auch eine Lehreschaltfolge,
aber natürlich nicht mehr, die uns von M1 nach M2 bringt.
Also wir schalten eins nach M2 mit dem Data und
es gilt, dass die echt kleiner ist als M2.
Und wenn wir von da nach da kommen, naja,
was haben wir dann für eine Möglichkeit in so einem Grafen?
Wir kommen irgendwo hin und schalten mal so längst mit
dem Data und kommen nach dem Strich
Wenn wir sagen, okay,
die hier ist echt größer als dieses Teil hier vorne.
Also das M-Strich ist echt größer als M. Was kann ich dann machen?
Ich kann wieder so schalten. Und zur Not ist das durchaus eine,
die wieder kleiner ist, als diese Dinger hier vorne sozusagen.
Aber letztendlich komme ich auf diesen speziellen Schaltweg garantiert wieder da links.
Und wie das dann genau aussieht und wie die Variablen
da jetzt belegt sind, ist mir eigentlich ziemlich egal.
Ich weiß, dass es diesen Einfahrt gibt,
dass man mir Pfade geben kann, ist sozusagen dabei unbenommen.
Und das können wir nochmal machen und beliebig oft.
Und dann sind wir sozusagen drin. Beispiele, was machen wir
damit? Ist, wir haben jetzt Jesus im Netz,
Und bin jetzt ja genauso was aufbauen.
Wir haben also unsere Nackierung 2-1-0,
haben wir hier oben vorliegen. Was kann jetzt passieren?
Na, wir schalten mal ganz fleißig das.
T1 und kommen nach 1-0-3. So,
kann ich jetzt sagen, dass das Ding unbeschränkt ist?
Ja, ich kann sagen, aber hat nichts damit zu tun,
mit dem, was wir vorher uns angeguckt haben.
Also an dieser Stelle erstmal können wir sagen, ja,
da ist ja kleiner geworden, auch kleiner geworden,
der ist größer geworden,
aber da kann ich noch nicht aufgrund meines Algorithmuses irgendetwas konkretes austragen.
Ich habe eine neue Nackierung an der Stelle
Jetzt die Frage, was kann ich jetzt machen?
Das hier sieht nicht so gut aus, da kann ich nicht schalten.
Also werde ich wohl das T2 schalten. Und siehe da
, was haben wir hier? Wir haben ein 2-
2-2. Entsprechend als Markierung hier mit einmal vorliegen.
Wir haben nämlich zwei Marken daran getan,
eine hier und nur eine hier abgezogen,
sodass wir 2-2-2-Ersmarkierung haben.
Was können wir jetzt sagen? Ja? Ja,
das Ding ist jetzt auf jeden Fall umgestiegen. Ja,
genau. Weil aufgrund des Vergleichs mit dem hier sagst du,
okay, das ist auf jeden Fall was, wo ich also größer bin.
Ja, genau, das ist natürlich größer.
Die zwei ist gleich der zweite. Jetzt ist die Frage,
beim Vektor, wann sind zwei Vektoren gleich und wann
sind sie unvergleichbar und wann sind sie größer?
Beim Vektor reicht es, wenn alle Komponenten gleich sind.
Und eine ist größer an einer bestimmten Komponente. Dann ist es
echt größer. An den Stellen. Wir können dann weiterhin dieses D1D2 schalten,
sodass wir dann hinkommen beim nächsten Mal zu eben T2,
T3, T4. Wir packen also immer wieder ein und zwei dazu quasi,
als Wirkung von einer Schaltfolge T1D2.
Das kann man sich schon mal so merken für die In-Varianten
Für Verhalten in solchen Systemen. Wir packen ja so immer
die gleiche Differenz, egal wie oft wir das geschaltet haben.
Es kommt aus diesem Bereich hier von der entsprechenden Schaltfolgen,
T-1, C2, eben genau diese Wirkung wieder zustande,
dass ich einen in der zweiten stelle und zwei in der dritten Stelle dazu packe.
So, das ist das eine. Diese sind jetzt,
wie du schon ganz richtig gesehen hast,
eben immer entsprechend echt größer und damit haben wir jetzt also
eine nette Situation
So, gehen wir mal zum Abbruchkriterium zurück,
folgende Aussagen sind für gegebenes Netz sozusagen im Äquivalent.
Die Menge der erreichbaren Nackierung ist endlich, die ich in
so einem Netz habe, für eine gegebene Anfangsmarkierung.
Das ist die erste Aussage. Der Erreichbarkeitsgraf für dieses entsprechende Netz ist endlich. Also,
die Menge der erreichbaren Markierung und der Erreichbarkeitsgraf ist endlich,
also ist eine Menge der Erreichbarkeit,
die Menge der erreichbaren Nackierung ist endlich und der Erreichbarkeit des Graf ist endlich,
ist Äquivalent zu einer, das sind überall diese beiden Aussagen.
So, N ist in der Markierung M0 beschränkt
Das bedeutet, naja gut, wenn ich von der Anfangsmagie
heraus gucke, kann ich nirgendwo beliebig viele Marken draufpacken.
Das heißt, es ist geschränkt. Und das entspricht natürlich dem,
dass ich nur eine endliche Menge von erreichbarer Markierung habe und
erreichbarkeitsgrafisch dementsprechend endlich. Oder ich kann auch sagen,
es gibt keine Markierung im Eins,
M-Zwei mit dem M-Zwei-Echt größer als M-1 ist,
in dem ich sozusagen vom M-0 mit der Schaltfolge Delta oder Stern
hier an dieser Stelle nach M-1 kommen und dann mit Delta oder Stern,
wie auch immer,
das ist aber besser gewesen an dieser Stelle,
Und den Beweis dazu könnt ihr als Übung machen,
bis ihr euch mal anguckt, wie man das
entsprechend zeigt und wie das für die einzelnen Sachen nachguckt.
Aber die Erklärungsmuster hinter sind ja relativ klar. Gut,
das ist also jetzt hier der entsprechende Algorithmus, mit dem wir das angucken.
Wir haben hier unsere entsprechende Abbruchgeschichte da drin und haben dann
die Möglichkeit, das Ganze zu terminieren.
Okay. So, wenn wir jetzt dieses,
es wird immer, ist echt größer und so weiter haben.
Gibt es jetzt eine Sache, die werden Überdeckungsgrafen dann entsprechend
gleich nochmal angucken wollen? Vorher haben wir jetzt nochmal zwei Invarianzeigenschaften,
die wir angucken wollen,
in die Markierungsinvarianz und Lebendigkeitsinvarianz
Die ich heute noch durchgehen möchte. So, die atomaren Aussagen
der Speziationssprache sind entsprechende Markierungsprädikate wie, die wir hier formulieren.
Das heißt, wir haben irgend so eine Markierung M und haben jetzt irgendein Prädikat darüber, was was aussagt. Und das ist so,
dass wir hier dann eigentlich nur aussagen,
dass wir die Summe für die Konstanten mal der entsprechenden Markierung der jeweiligen Stellen,
also für jede Stelle einzeln, einen entsprechendes K ausgewählt,
1,5, 8, 17, 36,
was weiß ich, Das ist, wenn es aufsummiert,
immer noch kleiner als ein bestimmtes K. Das ist aus diesem Kuh dann hier erst mal schmeiß.
So, damit haben wir also eine, irgendwie eine Summe,
die wir da entsprechend angeben können erst mal.
So, die Aussagespeziationssprache sind dann alle Aussagen logischen Formeln darüber,
die wir dann machen können. Und die Formeln sind dann
eben hier Atom, die Prädikate sind atomare Formeln.
Beispiel, zweimal M von P1 plus einmal M von P2
, ist kleiner als drei
Wenn wir da eine mag. Und da eine Marke haben,
haben wir immer noch drei. Oder MP3 ist kleiner als eins.
Das ist die Alternative sozusagen dazu. Das können wir auch noch
als Prädikat gelten. Das ist durchaus schon komplexere Ausdrücke,
die man da reinschreiben kann, was man so ein System erwartet.
Entweder es befinden sich so und so viele Roboter auf dieser Straße,
bei der Produktionsweg. Oder aber es ist eben,
der Roboter steht zu Hause und ruht für sich selbst da und macht nichts oder sowas.
Oder ich kann sagen, weil der Roboter sich zerlegen kann,
bearbeitet zwei Werkteile in dem einen Teil und da einem hier,
aber das sind die Teile,
die hinterher drin sind
Kann ich, also mir verliebig vorstellen,
was ich für ein System da genau beschreiben möchte,
einen Roboter beschreiben möchte, Personen, irgendwelche Durchläufe durch Systemen,
irgendwelche Daten, die bestimmten Stellen sind,
Zugriffe auf bestimmte Datenbestände und so weiter und so fort.
Je nachdem, was man gerne als Beschreibungsmittel haben möchte.
Muss ich nur entsprechend in die entsprechenden Bedingungen die Stellen,
die da markiert sind, transformieren und die entsprechenden Interpretationen,
was die Handlungen dazwischen sind, um zu wissen,
was da in diesem System eigentlich passiert.
Das heißt,
wenn man die Struktur von meinem System und wieder zwischen den Bedingungen,
die ich erfülle oder sozusagen jetzt falsch sozusagen ausführe,
dass ich sage,
ich ziehe Marken entsprechend ab und dann komme ich da
schon entsprechend hin
So, wir haben also so eine entsprechende Markierungsinvarianzeigenschaft von
unserem Netzsystem, beim Predikat der folgenden Form haben.
Für alle Markierungen in den Erreichbarkeitsgrafen gilt das FIFA und M.
Wenn ich auch sagen kann, dieser Ausdruck,
den ich gerade eben hatte, der gilt für den Gesamt,
für alle Markierungen im Bereichbarkeitsgrafen, dann ist es eine Markierungsinvarianzeigenschaft.
Und ich kann auch sagen, für alle Markierungen im Bereichbarkeitsgrafen existiert eine Transition,
sodass wir das sozusagen haben können, diese entsprechenden Markierungsinvarianzeigenschaft.
So, Beispiele. Wir haben Kabelschränktheit eines Platzes,
für alle Markierungen im Reichbarkeitsgrafen gilt,
dass die Markierung kleiner ist,
kleiner gleich K ist
Ziemlich direktes Aufschreiben von dem, was wir da haben.
Wir sagen, also egal, wo wir hinkommen,
in unserem Erreichbarkeitsgrafen, die Markierung hier ist immer kleiner Gleichkarr.
Nächstes Beispiel Markierungsausschluss. An dieser Stelle. Zwischen POP-Strich.
Für alle Nackierungen gilt, dass MP gleich Null ist oder
eben MP-Strich ist gleich Null
Oder, ne, Erklärungsausschluss ist dann natürlich spannend.
Kann man sich mal überlegen, wie weit das zutrifft. So,
Verklemmungsfreiheit, Deadlock, für alle Markierungen im Erreichbarkeitsgrafen über die Stellen,
jetzt hier S, statt P oder sowas ähnliches.
Existiert Transition, sodass die entsprechende Kantengewichtung von den entsprechenden Stellen
zur Transition hin für alle Stellen,
die im Vorbereich von Tee liegen,
kleiner ist das,
was in der Nackierung
drin ist
Was heißt das? Egal wo ich in meinem Reich verkassgrafen hinkomme,
finde ich irgendwo eine Transition, von der aus ich dann irgendwie weiterkomme.
Was nicht heißt lebendig, hatten wir vorhin,
ganz am Anfang als Einstieg mit der Wiederholung,
dass das nur verklemmungsfrei jetzt hier gerade bedeutet.
Und genau das können wir da an den Stellen also mit reinbringen.
Algorithmus dazu ist, wie entscheidet man das? Na gut,
wir haben als Input den entsprechenden Erreichbarkeitsgrafen und die entsprechende Markierungsinvarianzeigenschaft und als Output haben wir eben war,
falls die Eigenschaft erfüllt ist oder falls, wenn die Eigenschaft nicht erfüllt ist.
Das heißt, wir haben also True oder Volks als Ausgabe und wissen,
dass das Ding terminiert, also mit diesen Teilen hier.
Zumindest die Forderung. Wir initialisieren alle Elemente als ungefärbt,
solange es in ungefärbten Knoten gibt, machen wir das folgende.
Wähler einen ungefärbten Knoten aus diesem Bereich und ferbien ein,
wenn das M dieses P nicht erfüllt,
dann geht man zurück und sagt, gilt nicht,
unter dem wir sind, wir raus und ansonsten,
wenn wir alle ungefärbten Knoten durchhaben, dann sagen wir,
okay, gut, Keiner der Knoten, wir haben alle angeguckt,
keiner hat das Ding verletzt, also ist das True,
was wir angenommen haben am Anfang,
gültig.
Im Sonnes einfinden, diese Sache widerspricht. Gut,
das ist gleich in Grün, noch ein bisschen größer.
Das ist alles. An den Stellen. So,
Beispiel, wir wollen testen,
ob der Markierungsausschluss für die Plätze P5 und P6 gilt,
ob wir das sozusagen so da drin aussagen können.
Und die Anwendung des Algorithmus, was wir da drüben
haben,
1,
Das ist natürlich ein bisschen unpassend, jetzt die falsche,
falsche Numrierung. Zur Überprüfung von Viel beginnt damit,
dass wir also alle Elemente entsprechend ungefärbt haben.
Schritt eins. Und dann werden die Macchio nacheinander geprüft,
bis wir eben P2 für 5P6 erreichen. Und hier wird
das Prädikat als ungültig festgestellt und der Algorithmus termoniert mit False.
Das heißt, wenn wir hier hinkommen,
stellen wir fest, die sind beide sozusagen da drin.
Und dann, das wollen wir nicht. So. Die Lebendigkeitsinvarianz
eines Netzsystems, Ist ein Prädikat der folgenden Form?
Für alle Markierungen in den Erreichbarkeitsgrafen gilt,
dass wir so eine entsprechende Markierung am Strich finden,
egal wo wir jetzt da hingekommen sind,
sodass Vieh im Strich sozusagen jetzt gilt.
Also von dem Kopf nur durchtackern, dass jetzt sozusagen die Anforderung da sein soll.
Das VIM ist wieder das Teil hier unten,
also ein Vieh im Strich wäre das natürlich für im Strich P hier entsprechend umgesetzt, ist klar.
Das heißt, für alle Markierungen Folgen der Anfangsmarktung aus.
Laufen wir los. Und wir sagen,
es existiert überhaupt ein M-Strich in diesem Erreichbarkeitsgrafen,
sodass das hier oben ein Strichteil gilt.
Also, dass es irgendeins gibt in diesem,
in der Möglichkeit, das jetzt hier zu erreichen.
Warum haben wir jetzt hier M und ich M. Null? Naja,
weil ich ja sage, für alle Markierungen,
die ich in diesem Netz erreiche,
gucke ich mir quasi den Erreichbarkeitsgrafen von da aus jeweils wieder an und sage,
es existiert so etwas,
dass das gilt
Da gibt es dann bestimmte Sachen mit dem Rücksatzzuständen und so weiter,
die ganz spannend sind, ob man da dann wieder hinkommt oder nicht.
Und das ist genau eine der Sachen, die man angucken kann.
Beispiel dazu sind, Lebendigkeit von Tee, also eine Bindigkeitsimparenz-Eigenschaft, ein Live-Ins of Tee.
Für alle Markierungen, die in dem Erreichbarkeitsgrafen sind,
existiert irgendein Strich, sodass ich irgendwie dieses Teil hier wieder,
also dieses Tee in einem Strich aktivieren kann.
Das ist ja das, was das letztendlich aussagt. Und das heißt,
für alle Markierungen, die ich in meinem gesamten Erreichbarkeitsgrafen habe,
egal wie groß er ist, Finde ich irgendeinen im Strich,
in dem Erreichbarkeitsgrafen von dem M, was ich bis dahin dann erreicht habe,
sodass ich das wieder, das T entsprechend wieder aktiviert bekomme.
Ich kriege also die Transition immer wieder,
egal was ich mache, wenn ich sie auch tatsächlich schalte,
bin ich in der nächsten Markierung und musste das natürlich auch noch wieder gucken,
weil das ja eine der möglichen erreichbaren Nackierungen,
die ich hier oder hier jeweils drin habe.
Das heißt, ich muss also für alle erreichbaren Markierungen das finden können,
also ich finde immer wieder irgendeins, das aktiviert sein reicht,
also ich muss also nicht konkret wirklich schalten,
weil ich davon ausgehe,
dass ich es dann in diesem Erreichbarkeitsgrafen dann auch drin habe,
weil ich es erschalten konnte,
deswegen muss es in diesem Grafen
ja drinstecken
Gut, das ist also Lebendigkeit von Tee.
Für alle Markierungen, existiert irgendein Ding, sodass ich.
So. MH ist Rückwärtszustand, hatte ich eben schon gesagt,
dass wir das damit jetzt auch irgendwie spannend zu packen kriegen.
Für alle Markierungen existiert wieder irgendein Strich, sodass es einen
Strich genau meinem MH von dem Home zu State ist.
Müssen die Rückwärtszustände immer die Anfangsmarkierung sein? Nein, muss nicht. Deswegen machen wir es nicht für M0, sondern es gibt irgendeinen, für den wir das dann machen können. Also,
alle Markierungen aus dem Erreichbarkeitsgrafen, Finden wieder für das,
wo wir dann hingekommen sind, gucken wir uns das an,
das R-N-M, egal wo wir da jetzt in dem Subgrafen wir gerade sind,
gucken uns von da aus den gesamten Erreichbarkeitsgrafen,
der wird ja auch wieder unendlich ist und vielleicht sogar gleich dem anderen Erreichbarkeitsgrafen,
das interessiert uns aber erstmal nicht, sondern wir gucken mal,
was haben wir jetzt von da aus, was wir da erreichen können,
nur für da treffen wir die Aussage, existiert irgendwie eine Markierung im Strich,
sodass wir die als diesen Rücksatzzustand eben identifizieren können,
der ja genau sagt,
dass wir ihn immer wieder dahin zurückkommen können.
Reversibilität, für alle Nackierungen Finden wir ein Teil,
was dann eben genau der Anfangsmarkierung entspricht, was ja nichts anderes sagt,
dass das dieser Homestate eben genau meine Anfangsmarkierung ist,
weswegen ich dann ja genau reversibel bin in meinem System,
weil ich immer dahin wieder zurückkommen kann,
egal wo ich mich hinbewegt habe.
Gut, nochmal gegenübergestellt, wir haben eine Markierungsinvarianz und Lebendigkeitsinvarianz,
Eigenschaft und das sind die beiden Möglichkeiten im Wesentlichen,
also hier oben,
dieses 4M oder das existiert eine Transition,
für die ich dann
irgendetwas aussagen kann
Das sind dann Markierungs-In-Varianzen, obwohl ich irgendwie gucke,
existiert so eine Transition, für die das gilt.
Und das andere, die Lebendigkeitsenvarianz ist, dass ich für alle Markierungen sage,
es existiert eine Markierung, dass das so ausschaut.
Das ist sozusagen so ein bisschen verdreht. Das müsst ihr euch
sozusagen durch den Kopf gehen lassen, wie das genau hinkommt.
Das wird ja auch in den Übungsaufgaben dann nochmal thematisiert werden.
So, jetzt im Schnelldurchgang. Ich werde dann da beim
nächsten Mal wieder genauer einsteigen. Das sind die strengen Zusammenhangskomponenten,
was wir jetzt hier sehen, ist,
wir haben irgendwie so einen Anfangszustand hier vorne und ein bestimmtes Netz.
Das sieht so aus, dass wir da strenge Zusammenhangskomponenten haben,
die wir entsprechend definieren, wie das auch gleich dann noch kommt.
Das könnt ihr euch dann zum nächsten Mal schon mal anschauen,
damit ihr die Definition dafür im Kopf habt.
Und da kann man jetzt also quasi einen Grafen draus machen,
indem man sagt, okay, ich gucke mir jetzt mal den Lila-Grafen an und der ist ja viel einfacher. Wenn ich jetzt also bestimmte Dinge jetzt untersuchen möchte,
ob ich irgendwo hinkomme oder nicht,
kann ich mich einmal auf diese strengen Zusammenhangskomponenten gucken,
weil ich innerhalb der Nationalskomponente nämlich sagen kann, okay,
ich finde immer wieder irgendwie einen Weg da drin,
sodass ich sozusagen dahin komme, wo ich gerne hinkommen möchte,
innerhalb dieses Teils, wenn ich rausgehe, naja,
dann habe ich aber schwierig zu sagen, das Komponent,
in dem ich wieder einen Weg habe,
wo ich zu jedem beliebigen Knotenpunkt sozusagen wieder hinkomme,
egal wo ich mich darin bewege, Wenn ich dann irgendwo hingehe,
bleibe ich auch da drin oder hier oben, wenn ich da reingehe, komme ich eben immer irgendwo wieder in diesem Knotenbereich, beliebig wieder hin.
Ich stecke zusammen was Komponente. Also Dinge, die Knoten,
die da drin sind, sind dann wie der Knoten,
die entsprechend immer wieder erreicht werden können.
Kann man auch nochmal mehrfach strukturiert haben, aber erstmal passiert es
nur so drin. Das ist der Graf,
den wir angucken können und das wäre viel einfacher, um anzugucken,
wo man denn überhaupt überall hinkommen kann an den Stellen.
Das gibt dann sozusagen das reduzierte Graf, den wir da angeben.
Das sind terminale Zusammenstränge Zusammenhangskomponente, das hier unten auch.
Dann haben wir noch eine entsprechend triviale, nämlich eine,
wo nur ein Zustand drin war.
Das war das, was wir da hatten.
Das war sozusagen
die Idee dabei
Das Ding bleiben wir da wenigstens mal durchgehen. Deswegen solltet ihr
das nochmal angucken. Deswegen springe ich jetzt kurz drüber weg.
Das Gleiche gilt mit dem reduzierten Grafen. Auch da gibt es
ein bisschen was, was wir da in einzelnen Teil durchgehen.
Danach kommen dann die Knotenmengen und so weiter und so fort, zwei Lämmerter dazu.
Dann kommt ein entsprechender Algorithmus zur Lebendigkeitsinvarianz. Klar,
Moment noch, ich bin das zwei Minuten nochmal einmal einmal
so rund hinten rein, hinten hinkriege.
So, da kommen wir wieder zurück auf diese Möglichkeiten jetzt.
Das, was wir hier hatten, anzuwenden mit diesen strengen Zusammenhaltskomponenten. Das heißt,
wir wollen diese Lebendigkeitsaspekte einfach nur auf gröbere Punkte anwenden,
damit der Algorithmus nicht mehr auf so vielen Knoten arbeiten muss,
sondern auch weniger Knoten
Und das Spannende ist, dass ich diese strengen Zusammenhaltskomponenten mit den Algorithmen,
die ich da beim nächsten Mal zeige,
sozusagen sehr eins nach zusammenschrumpfen lassen kann,
weil das ist einfach vom Prinzip.
Ob ich da über Gears wieder hinkomme. Während dann die Berechnung auf
dem vergröberten Graphen ist dann wieder das gleiche Problem wie vorher,
aber es sind halt viel, viel weniger Knoten.
Und da die Knotenanzahl, das war deine Frage von vorhin
, wovon hängt das eigentlich ab?
Das ist einer der entscheidenden Faktoren, um den Graphen insgesamt
klein zu bekommen. Und das kann man entsprechend dann angucken,
sodass man die groben Sachen dann nur angucken muss. So,
und im Spezialfall der Lebendigkeit ist dann das,
was man nicht mehr drankommt,
beim nächsten Mal werden wir dann auch noch auf die entsprechenden
Prozesse eingehen und auf die Fairness und Fortschrittseigenschaften und so weiter und so fort.
Also das, was zum letzten Mal schon Lesestoff war und
auch diese Woche Lesestoff ist, nochmal, um da hinzukommen.
Und das Gleiche auch der Überdeckungsgraf, die wir uns auch
noch anschauen werden. Okay, das war's und dann sehen
wir uns wieder im Hörsaal
in zwei Tagen