So, nach den kleinen Anfangsschwierigkeiten sind wir jetzt dabei.
So, ich werde ein bisschen was zu dem nächsten Themenlog erzählen.
Dafür gibt es dann eine kurze, ganz kurze Wiederholung.
Und dann werden wir uns mit zwei,
drei grundlegenden Aspekten einmal aus der Mathematik und einmal aus den
sozusagen Grundlagen der verteilten Systeme beschäftigen.
Und die Idee ist dann,
dass wir das sozusagen als Vorbereitung auch nehmen für den Blog,
der dann auch schon Ende der Woche jetzt anfangen wird,
nämlich die Petrinetze
Das heißt, das, was wir dir jetzt hier erzählen,
ist sozusagen die gedankliche Vorbereitung auf einige Aspekte,
die wir im Bereich der Petri-Netze nachher benutzen können.
So, auf eurem Evolationsbogen steht immer drauf,
lerne ich etwas Sinnvolles oder brauche ich das?
So, und im Grunde genommen gibt es,
glaube ich, wenig Kollegen, die behaupten würden,
dass die nächsten Folie nicht relevant sind.
Es ist nur sozusagen der Grießbrei,
durch den man sich sozusagen durchfuttern muss,
um zu verstehen,
was denn in den verteilten Systemen
eigentlich für Phänomene passieren
Das ist ja eine Idee, dass wir hier etwas zu
den theoretischen Grundlagen erzählen, wobei wir das zweigestaltig sehen.
Wir nehmen jetzt einmal die formalen Grundlagen. Das ist der Aspekt,
den ihr mehr in euren Skripten, Büchern und Texten wiederfindet,
die ihr entsprechend noch dazu lesen sollt zu dem ganzen Teil.
Wir machen hier eher sozusagen die Spaßveranstaltung,
erklären so ein bisschen, wovon man das benutzen kann.
Die Idee ist also, dass sie auch immer nachfragt und
wenn mich irgendwas unklar ist, hakt ihr nach.
Das ist überhaupt kein Problem. Ich versuche darauf einzugehen entsprechend. So,
diese entsprechenden Teile, die wir dann jetzt hier anschauen,
könnt ihr sozusagen dann anschließend,
wenn ihr es mit dem entsprechenden Abstraktionsvermögen auf eure Programmiersprachen,
euch auf eure Datenbanken, auf eure verteilten Systeme,
auf eure Anwendung übertragt, entsprechend auch benutzen.
Also die Idee ist, dass ihr die formalen Grundlagen benutzt,
um euch sauber auszudrücken und die konzeptionellen Grundlagen,
um überhaupt zu verstehen, was sie eigentlich tut.
Das ist die grundsätzliche Intention, dass ich das hier nochmal erzähle.
Sonst könnt ihr auch einfach sagen, lest ein Buch,
guckt da rein, in Übungsaufgaben, Übungsaufgaben,
könnt ihr ein bisschen experimentieren.
Auch da wieder ein bisschen mehr nach Beweisen gefragt und so weiter.
Das, was wir hier jetzt nicht im Schwerpunkt sozusagen
behandeln werden
Das heißt, das Nachlesen erfolgt mit zusätzlicher Arbeit,
ist ja auch ein Kurs mit entsprechend vielen Stunden.
Das heißt, die Stunde der Vor- und Nachbereitung fürs Lesen sind auch wirklich notwendig.
Gab es von eurer Seite aus irgendwelche Probleme mit dem OLAT-System,
die für diese Woche oder so etwas?
Keine. Sehr schön. Gut. Also die Idee ist,
dass ihr euch vorher die,
das Vokabular ein bisschen angeschaut habt, was ich erzählen werde,
weil wir werden halt auf diesen 250 Seiten,
die ihr als Skript habt, stehen eine Menge Vokabeln für euch,
die ihr einfach lernen müsst.
Das ist sozusagen das, was ja sozusagen in jedem dieser Fächer,
die ihr jetzt hier besucht, jedem Kurs,
lernt ihr das Spiel Pokabeln bestimmte Dinge,
weil sonst würdet ihr ja nicht hier sitzen.
Das heißt also, ihr schafft es aber kaum,
diese ganzen Vokabeln in dem Augenblick zu lernen,
wo ich das hier vortrage. Also Empfehlung ist dringend,
sich vorher das Skript schon mal angeschaut zu haben und dann
durchaus mit Fragen dann hier nachzuhaken, wenn ich darüber erzähle,
weil ich teilweise eben auch nicht den Stoff direkt wiederhole,
sondern andere Sachen bespreche mit euch.
Und ihr könnt gerne selbst die Querverbindung dann herstellen und nachhaken für euch.
Gut, gibt es noch Fragen zu irgendwelchen Dingen von den
letzten Wochen oder Anmerkungen, irgendwelche Dinge.
Nicht der Fall. Schön. Gut,
dann fangen wir erst mal an und ich werde noch mal so
ein bisschen was dazu erzählen, wofür wir es eigentlich brauchen.
Also synchrone Produkte, naja, Wiederholung. Das heißt,
der Falk hat euch schon ein bisschen was dazu erzählt,
was man da so machen kann, hat irgendwelche Transitionssysteme und die sagen jetzt irgendwie die Hände schütteln.
Das heißt, die sollen sich in bestimmter Weise abstimmen und
bestimmte Aktionen machen, das sozusagen das Handshake-Synchronisation beziehungsweise Ronde Wu-Synchronisation.
Das heißt, dort verbinde ich in irgendeiner Weise
zwei Aktionen
Gemeinsamen Tisch raus. Oder beschütteln uns die Hände oder irgendwelche Dinge
in der Richtung. Wie das jetzt auf eure Programme übertragt,
was ihr da macht, ist dann eure Sache.
Versucht euch bei Programmiersprachen, asynchrone und synchrone Kommunikationen und Speichersynchronisationen
vorzustellen für die jeweilige Sprache, die ihr halt benutzt.
Ihr habt ja genügend, wo ihr mir sprach, im Angebot hier.
Das heißt, dort gibt es solche Sprachkonstrukte, die dieses Konzept halt auch verwenden.
Und entsprechend gibt es auch die anderen Verfahren,
nämlich die Speichersynchronisation, die ihr da vornehmt oder entsprechende Nachrichtensynchronisationen,
die ja quasi so verstehen können, dass man hier auf einen gemeinsamen Speicher zugreift.
Was ist da
das Problem
Wenn ihr zwei Prozesse auf einem Rechner habt,
der Speicher synchron arbeitet, dann hören Sie sich in der Überfreibung,
die wir im Ernaufen und das Infangen, das Ganze aufregen.
Genau, die können sich beide ins Gehege kommen und beide
gleichzeitig auf irgendwas schreiben oder eine schreibt der andere liest gerade.
Es kann also sozusagen dort zu Problemen kommen. Das wird
durch entsprechende Verfahren hiergestellt, dass man das nicht haben möchte.
Das müsst ihr bei der Problemliebsprache entsprechend berücksichtigen.
Und irgendwie müsst ihr das auch dann modellieren.
Die nächste Sache hier unten bei den Nachrichtensynchronisationen,
was ist da
das Problem
Kommen Sie sich auch ins Gehege? Das bleibt. Das eine sind auch geklingt,
dass die Namen, es wurde nach wie vor noch ankommen zu sagen,
weil man schon immer was macht, was ist vielleicht im Achten.
Genau. Jetzt kommst du auf ein grundlegendes Problem, dass Nachrichtenlaufzeit,
genau das werden wir uns gleich noch näher angucken mit den entsprechenden Vektorzeiten und logischen Zeitstempel und so weiter,
genau, das ist ein Problem, aber vom Prinzip gibt,
kommen Sie sich erstmal nicht ins Gehege, außer sie schreibt,
der eine packt zu viel in den Puffer hier rein,
dann kriegt das nicht schnell genug weggearbeitet oder so etwas.
Aber vom Prinzip gibt es dort Bin ich das Publikum in
die Idee gekommen, aber muss halt warten.
Das heißt, hier kann ich nicht sozusagen schnell drauf zugreifen,
was ist für Softwareentwurf und Softwarearchitekturen denn dafür spannend?
Welche der dreien Modelle würdet ihr wann verwenden?
Also bestimmt ein paar Softwaretechniker im Raum hiermit, also...
Das war das dritte oder nutzen,
weil das Synchronisationsproblem damit auf meinen Nachrichtensystemen abgewählt ist.
Ja, abwälzen, dritte Variante.
Wir hatten eine andere Meinung
Ist das Problem damit los, weil es um Nachrichtensystem liegt?
Okay, das ist, ja, wo würde man das einsetzen?
Würde man das auch bei, innerhalb von Java einsetzen?
Auf einem Rechner. Das kommt ganz drauf an, was
für eine Problemklasse ich habe. Also es gibt Fälle.
Genau. Ist das nicht so sinnvoll, es gibt Fälle,
da macht das auch in einem Prozess immer so. Genau,
es gibt eben unterschiedliche Fälle und wenn ihr oben irgendwas habt,
wo ihr zwei Prozesse wirklich abstimmen müssen in ihrer Handlung
und sie sollen gemeinsam irgendwas machen,
müsst ihr sehen,
wofür das verwendet
Bei der Speichersynchronisation, wenn ihr hört,
gemeinsam auf Variablen schreibt, müsst ihr sicherstellen,
dass es irgendwie zynchronized oder sonst irgendetwas auf die Reihe bekommt.
Oder entsprechend bei der Nachrichtensynchronisation im verteilten System habt ihr
fast keine andere Chance, als sozusagen so zu arbeiten.
Selbstverständlich könnt ihr annehmen, dass sie synchron arbeitet.
Also ihr macht einen Methodenaufruf, ihr blockiert so lange,
bis das da drüben fertig ist.
Und dann ist man auch durch. Und man blockiert halt so lange.
Es ist ein verteilten System nicht immer die optimale Lösung.
Mitunter war durchaus sinnvoll. Es gibt also verschiedene Möglichkeiten dieser
entsprechenden Verwendung von diesen Konzepten. Und wann ihr sie wo
in Architektur oder in den Programmen einsetzt,
Das müsst ihr dann halt im Einzelteil mal genauer anschauen.
Genau. So, und jetzt gibt es dafür Beschreibungsverfahren und
bestimmte Konstrukte in den entsprechenden Programmiersprachen,
die aber letztendlich auf dasselbe Konzept sich abbilden, was wir jetzt hier sozusagen sehen.
Das bezeichnet man als Konzept, da habe ich noch keine Sprache,
das habe ich so informal euch erklärt und so weiter,
aber ihr findet eben AIDA oder in Java oder in Groovie oder in Skala unterschiedliche Möglichkeiten, die einzelnen Dinge auszudrücken.
Gut, okay,
damit haben wir erstmal so allgemein diese Dinge und dann haben wir nochmal das Problem,
wenn wir jetzt das Ganze mit diesem Transitionssystem so angucken,
endlich Automaten, wir können also Diese entsprechenden Übergänge hier haben von dem Zustand mit dem entsprechenden Eingaben AMB.
Wir haben jetzt noch entsprechend das Ganze als Transitionssysteme angucken und gucken,
was passiert da eigentlich. Wir haben so eine Art Interlieving-Semantik.
Ich kann also AVB oder BVA machen, das ist nicht weiter wild.
Das kann man sozusagen noch problemlos händeln. Spannend wird es
halt, wenn wir jetzt mit C dazukommen.
Was passiert jetzt? Das ist weiter. A,
da geht es zuerst draußen, früher wird ein Lebensmissen beide
ausgeführt sein,
vom C ausgeführt werden
Ja, nicht so ganz, weil wenn wir das
allgemein machen, ist einfach nur eine Frage der Klammerung.
Man kann jetzt sagen, es müssen A und B sein,
dann C oder kann man sich überlegen,
auf SC und dann A und B oder B und A nachkommen oder sowas.
Aber man kann sich auch insgesamt mischen.
Und das kann man dann sozusagen jetzt sehen,
wenn man die einfach alle drei irgendwie synchronisiert.
Also wir gehen aus der Tür raus, wir sind Personen
A, B und C. Und das ist die Frage,
in welcher Reihenfolge können wir aus der Tür gehen?
Das wäre die Synchronisation, wenn das entsprechend der Operator ist.
Und das bedeutet, dass wir einen Zustandsraum bekommen,
der halt relativ schnell wächst. Wenn wir jetzt vier sind,
haben wir noch mehr Möglichkeiten und so weiter.
Das heißt also dieses starke Wachstum dabei, bei den Möglichkeiten,
für die Interlieving, also für die einzelnen entsprechenden Folgen von Möglichkeiten,
wächst das sehr schnell, wenn wir unabhängige Systeme haben.
So, wenn ihr jetzt euch anschaut,
dass in den letzten Jahren zunehmend in Richtung verteilte Systeme gegangen wird,
um Richtung Cloud-Computing und so weiter.
Das heißt, ihr habt ganz viele solche Rechner,
also nicht mal 1000 Stück oder sowas,
das ist eine kleine, kleine, kleine Server sozusagen.
Dann haben wir das Problem, dass wir die jeweils in
unterschiedlichen Reihenfolgen haben können und alle 1000 können irgendwann irgendwie was ausführen.
So, und von daher ist dann natürlich die Frage,
wie kriegt man das sauber beschrieben?
Und wie kriege ich das kompakt beschrieben? Und wie kriege ich
mir die ganzen Dinge eigentlich vorstellen, was da passiert?
Und dafür werden wir uns ein bisschen was angucken,
wie wir dann nicht nachher in so einem Raum von tausend solchen Varianten sozusagen dann arbeiten.
So, kommen wir zum Parsial Order Semantik,
die wir jetzt da drin haben. So,
jetzt geht es also irgendwie um eine Ordnung und die wollen wir nur partiell haben.
Warum würde ich sagen, nur partiell haben? Naja,
wenn ich totale Ordnung hätte, würde ich sagen,
ich gehe immer zuerst aus der Tür und dann kommt der nächste
mit einer grünen Nase und dann alle mit einer roten Nase und dann wird genau durchsortiert,
wer hier einzeln rausgehen darf.
Wir haben eine totale Ordnung und so gehen wir die aus dem Raum raus.
Ist etwas müssig, sowas, ja. Das Gleiche,
wenn ihr das entsprechend bei euren Programmen habt, wie du sagst,
immer eine totale Ordnung, wann welcher Prozess drankommt, wird das,
müsste eine Menge Vorhersagekraft haben, um genau zu bestimmen,
welcher Prozessabschnitt dann wann, wie, wo ausgeführt wird nacheinander.
Was ihr so machen wollt, ist,
dass ihr eigentlich nicht eine totale Ordnung sein wird,
die irgendwie so weit ordnen,
dass die sinnvollen Dinge zuerst passieren und dann das,
was anscheinend darauf aufbaut oder erst danach kommt.
So und wie das dann geht,
da werden wir mal
ein bisschen drauf gucken
Da gibt es neue Prozesse als Ordnung erstmal allgemein und wir
haben jetzt irgendwie so eine Anweisung A, B und C.
Und wir sagen X, kriegt den Vertrei zugewiesen und Y
den Wert 4 und das Ziel bekommt eben halt die Summe zugewiesen.
Das ist das Z. So, und was wir jetzt haben,
ist, dass wir hier so eine Art Bezeichner haben und das ist die Wirkung,
die wir also beschreiben und sagen, okay, da passiert jetzt etwas.
Und da wollen wir jetzt hingehen. Gut, können wir
uns überlegen, wie wir das so ausführen wollen.
Wir können es natürlich von rechts nach links machen,
aber das dürfte in Anbetracht der undefinierten werde hier auf dieser Seite vielleicht nicht ganz so sinnvoll sein.
Das heißt, ich würde sagen, okay,
ich packe hier vorne einen Start hin und hier hinten einen Stopp und ich sorge dafür,
dass die in einer entsprechenden Reihenfolge ausgeführt werden.
So, das ist das, was man möglicherweise in Jahrweise hinschreibt,
schreibt man A, B, C hin, fertig. So,
jetzt ist dann die Frage, wo diese entsprechenden Aktivitäten jeweils stattfinden,
das ist dann natürlich dann schon mal spannend,
wird es mit Java nicht mehr ganz so einfach,
wenn man das genauso mit A, B,
C und dann nur in der Sprache haben möchte,
aber erstmal so von der Idee her
So, und jetzt können wir auf die Eigenschaften von unseren Handlungen
nochmal schauen, kurz. Eigenschaften der Handlung sind welche.
Naja, es gibt ja dann wahrscheinlich angeschaut. Also irgendwie ist
das Ganze expensional. Das heißt, durch die Wirkung beschreibbar.
Ich will also sagen, dass da überhaupt vom Prinzip passiert.
Und kann das also jetzt jeweils getrennt beschreiben und sagen,
wie wirkt das nach außen? Was dann innen drin noch
alles genau passiert und wie es genau gedreht wird,
das schauen wir uns hier gar nicht an.
Das Ganze auch unteilbar. Das heißt,
das hier wird nicht unterbrochen,
dass man erst so einmal ein X rechnet und dann macht man eine Pause und dann kommt ein Y,
sondern das ist hier so gedacht,
dass das Ganze als eine unteilbare Handlung wirkt und sagt,
das ist jetzt das,
was hier entsprechend passieren soll
Das heißt, wenn man das Ganze auf einen Prozessor jetzt hier mal packen,
das ist sozusagen die klassische Denkweise dabei,
dann wird das Ganze als atomar, als atomare Handlung auch aufgefasst.
Oder entsprechende atomare Operationen. Gut,
drittes Prinzip ist dann, dass das Ganze geordnet ist,
eben als totale Ordnung, kann man einen sequenziellen Prozess,
das ist das, was wir jetzt hier sehen,
sagen wir von links nach rechts, gehen wir durch, fertig.
So, jetzt können wir das ganz nochmal anders angucken.
Wenn wir das jetzt eigentlich genau anschauen, haben wir hier
unabhängige Handlungen. Das heißt, diese beiden Dinge,
müssen wir ja nicht in der Reihenfolge A, B ausführen.
Und jetzt die Frage, was können wir dann machen?
In der Reihenfolge B, ja. In der Reihenfolge B,
A, ja, weil eine Möglichkeit... Gleichzeitig.
Genau. Jetzt muss man fragen, wie stelle ich das eigentlich dar? Naja,
da können wir wieder so einen schönen Automaten nehmen und sagen,
hier, die machen da irgendwas und das beschreibe ich mit A und das mit B.
Aber das teilt hier hinten so ja nicht irgendwie parallel so ausgeführt,
wenn es nur danach stattfinden,
das ist irgendwie unser C1, was sie danach haben.
Aber da sorgen wir dafür,
dass wir das
als Imposation drin haben
Und haben damit also jetzt die Darstellung erreicht,
dass wir da entsprechend sagen können, dass wir A und B
unabhängig ausführen und dann das C hinterher nach den Weiten.
Weil ich jetzt auch sicherstellen möchte, dass diese Operation auf
jeden Fall erst nach A und diese Operation eben,
diese Operation ebenfalls erst nach dem W ausgeführt wird.
Deswegen schreibe ich das für beide auch nochmal explizit hin.
Das ist eine der Varianten. So,
entsprechend haben wir dann die Möglichkeit der Ausführung,
dass wir jetzt das BA,
das ist eben gerade erst vorgeschlagen wurde,
oder AW eben haben und entsprechend,
dass sie als weitere Operation
da drin
Gut, das heißt, diese Operation wird hier entsprechend zusammengefasst
und entsprechend abgebildet bei diesen Dingen.
Und wir haben jetzt genau die Möglichkeit, dessen,
dass wir hier das A und B ausführen können,
haben wir hier eben mit BA und A, B entsprechend dargestellt.
So, was haben wir jetzt? Also wir haben das
Ganze geordnet. Wir haben eine totale Ordnung mit sequenziellen Prozessen
. Wir wissen also der Prozess A, B,
C oder B-A-C sind zwei Möglichkeiten,
die wir da entsprechend haben
Vom Prinzip haben wir aber auch eine partielle Ordnung, von nicht die speziellen Prozessen,
das heißt zeitlich oder kausal, unabhängige Handlungen sind möglich.
Eigentlich haben die mitten noch nichts genau zu tun,
das können wir auch darauf schließen,
weil wir da irgendwie sagen können, okay,
da gibt es auch keine Nebenbedingungen,
was das A noch berücksichtigen muss oder das B,
sondern die sind sozusagen wirklich unabhängig voneinander.
Das heißt, hier könnten wir auch,
wie schon vorgeschlagen wurde, gleichzeitig dieses Teil ausführen.
Gut, was machen wir jetzt damit?
Wir können das auch als Petrinetz darstellen. Petrinetz erkennt ihr
ja noch sozusagen aus der OE und Herr Feig dürfte die
inzwischen auch zumindest schon mal erwähnt haben
Was sie genauer sind, werden wir uns noch anschauen.
Aber vom Prinzip kann man das ja ganz gut lesen.
Wir haben hier irgendwelche Vorbedingungen, wir haben Handlungen und Nachbedingungen
und dadurch können wir auch die Handlungen entsprechend jetzt hier beschreiben.
Also genau so. Und hier wird dann eben auch gesagt,
okay, wenn da zwei Marken drauf liegen würden,
dann können wir hingehen und sagen, okay,
wir können jetzt mal schalten, was kann jetzt passieren?
Ich kann zum Beispiel erst das B schalten und dann
das A und dann haben wir eben den Übergang,
dass wir dann halt das C schalten und sagen können,
okay, da geht es jetzt hin.
Gut, so, da haben wir jetzt also diese Möglichkeit
der entsprechenden Ausführungen drin,
was für eine Art von Zenantik
war das jetzt
Die ich da eben gerade benutzt habe erstmal,
kann man nicht gleich so genau sagen,
auf jeden Fall wird es aber durchaus in der Leading-Semantik eigentlich ausgedrückt,
weil ich gesagt habe, er ist der und dann der
oder er ist der und dann der und dann das Ausführen.
Damit kann ich also auch auf den Petri-Netzen eine Interliebing-Semantik verwenden.
Ich kann mir immer überlegen, welche von meinen Handlungen ich einzeln ausführe.
Ich kann immer nur einen ausführen, weil ich sage,
ich habe immer nur eine Möglichkeit zum Schalten und dann kann ich aber irgendeine auswählen.
So, oder aber ich kann auch hingehen und sagen,
jo, die konnten ja irgendwie gleichzeitig ausgeführt werden.
Also eigentlich konnten die auch zusammen ausgeführt werden.
Das werden wir jetzt im folgenden gar nicht.
Erstmal werden wir gucken, ist nicht der Leading-Teil aussieht.
Wir haben also als Aktionsfolgen ABC und BHC, das sind so
die Die Dinge, die wir entsprechend da drin haben.
Oder aber wir haben halt Striktordnung, wenn wir so darstellen,
jetzt kommen wir nämlich schon zu den entsprechenden Relationen,
die wir gerne angucken wollen,
dass wir AVC haben und BVC und haben damit das Ganze in irgendeiner Weise hier dargestellt.
So, links, das schimpft sich dann in der Lieblingssemantik
oder Folgensemantik und das andere ist dann entsprechend die Puschel-Order-Semantik.
Kann sich immer noch eine weitere Semantik vorstellen?
Würde mich nicht im Skript benutzt, ich benutze aber prinzipiell
in der Vorlesung und die kommt auch in der Klausur dran.
Also steht zwar nicht im Skript, aber müsst ihr trotzdem
was dazu sagen können. Welche weitere Möglichkeit gäbe es jetzt noch?
Ist jetzt hier noch nicht so genau zu sehen,
aber Was könnte man sich noch vorstellen?
Ich habe gesagt, die hier sind wirklich nicht geordnet.
Ich kann also anfangen, jetzt hier zu schalten,
dann schalte ich B und bin fertig und dann ist das A zu Ende.
Das ist sozusagen das, was hinter diesen Netzen steckt,
würde ich gar nicht sagen, wie lange so eine Operation dauert.
Welche weitere Beschränkung, die weniger ausdrücken kann,
als die Paschoosemantik, aber mehr als in der Leaving,
kann ich dann
auch haben
Alter, gingen irgendwelche Hände eben hoch, aber eine Idee dazu?
Gut, werden wir uns bei den letzten nochmal genauer dann nachher angucken.
Wir können es auch in einem Schritt machen. Dann haben
wir so eine Step-Semantics oder Schritt-Semantik, die dabei vorkommt.
Ich kann nämlich auch beschreiben, dass ich zu einem Zeitpunkt
gleich zwei Operationen durchführe. Aber die sind dann sozusagen beide
auch wirklich synchron, dass sie wirklich beide gleichzeitig schalten müssen.
Die fangen also beide an und sind dann beide gleichzeitig,
was immer ordentlich gleichzeitig verstehe, fertig.
Bei der Paschal-Order-Geschichte war es einfach unabhängig davon,
weil ich gar nichts genau darüber aussagen wollte,
wie genau die aussieht
Wir werden auch noch ein Beispiel sehen,
wo das auftritt bei den Netzen, wo man dann auch
ein bisschen besser sehen kann, was das nämlich bedeutet.
Gut, wenn wir jetzt die Partei in Ordnung jetzt angucken,
haben wir also entsprechend so eine Menge A und eine entsprechende weniger Relation da drauf.
Jetzt kommen all diese ganzen Vokabeln,
die wir jetzt sozusagen einmal durchgehen und da erhoffe ich mir,
dass ihr solche Sachen halt vorher angeguckt habt, weil es relativ müßig ist,
die dann hier so im Einzelnen genau durchzukauen und genau durchzugehen.
Ich werde zwei, drei Animationen dazu noch haben und
zwei,
drei Erklärungen
Aber ich gehe davon aus, dass ihr euch das sozusagen selbst
vorher genau angeschaut habt und dann nur noch jetzt nachhakt,
wo man meine Animationen haken und nicht ganz passend sind oder wo man Erklärungen euch nicht ausreichen.
Gut, also wir haben jetzt eine partielle Ordnung,
seit folgendes gilt, dass für alle Elemente aus dem A eben gilt,
dass wir A, Koma A in der Relation haben.
Das heißt, wir sind irgendwie reflexiv. Das heißt,
wir haben immer dieses Hörchen sozusagen an den entsprechenden Dingen dran. Für alle AW,
die wir aus A haben, haben wir, sagen wir,
das AW in der Relation ist und BA ist in dieser Relation,
dann wissen wir, dass A und B gleich sind,
das ist sozusagen die Antisemmetrie,
die wir da drin haben
Und wir haben die Transitivität, das heißt,
wenn AWC in Adrin ist,
das heißt AW in der Relation und BC in der Relation,
dann ist automatisch auch das AC in der Relation mit drin.
So, und irgendwie ist das hier so etwas,
dass es kleinergleiche ist. Warum kann das Gleiche jetzt hier auftauchen?
Ich bin ja kein Flexibilität. Ja,
weil wir da ja auch das Ding drin haben können,
dass A und A das BNA ist und dann wäre es halt das Gleiche.
Genau. Okay, fein. Nehmen wir also unsere kleine Beispielrelation,
die wir hier drin haben, mit den,
können wir auch einfach so auflisten hier unten als Menge von Entspannung
Entsprechenden Duppeln, die wir da drin haben. Und hier
haben wir so ein Beispiel, was dann irgendwie ausdrücken soll,
das FVG und HVG ist und haben hier noch ein paar Sachen und so weiter.
So, das ist erstmal die eine Variante. Und jetzt ist
die Variante Zyklin da drin. Aber abgesehen von einem perfektiven Chiquen,
die halt immer auf ein, auf einen lebenden Kreis,
wie auch immer, ich, weil irgendwo eine Preise,
wenn wir mal durchgehen, wenn wir,
weil wir manchmal an sich mitreden haben,
weil wir
keine tödlichen sind
Genau, es sind keine drin. Also wenn wir jetzt
hier gucken, wir finden da nichts,
wo wir wieder sozusagen zu irgendeinem und vorher wieder zurückkommen.
Jo, gut, zyklenfrei, das Ganze. Gucken wir,
wir wissen genauer drauf, was das eigentlich macht.
Wir können also hier irgendwas sozusagen so entsprechend eingeben,
aber das Ding, das fehlt uns sozusagen dabei.
Und sowas ist eben auch nicht drin. Und das wird
durch diese Schreibweise halt entsprechend auch dargestellt. So,
jetzt haben wir neben der Partiellenordnung noch einen anderen Begriff,
den wir verwenden können. Das ist sozusagen die Striktordnung,
die wir da einführen können. Was machen wir da?
Wir wollen also sozusagen die Reflexibilität rausnehmen an den Stellen.
Was bedeutet das in dem Grafen hier unten
Ja, das ist klar,
dass wir da immer die entsprechenden Schleifchen wegnehmen, ja?
Achso, ich denke, das ist immer eine Meldung.
Jetzt verstehe ich das. Gut, die nächste Frage ist,
was nehmen wir jetzt noch mit raus?
Das ist sozusagen die Antisymmetrie. Warum fällt die raus? Naja,
weil die Paarweise, also Armee und BA,
die können ja nicht mehr drin sein,
weil A gleich B sein müsste,
allerdings wäre das Zeitteil von der Reflexion
Genau. Das schmeißen wir entsprechend raus und das ist genau hin und dann,
weil wir 1 und 3 da drin haben und dann wäre das genau etwas,
was wir nicht sozusagen akzeptieren wollen an der Stelle.
Okay, das heißt, je nachdem,
welche Art von Anforderungen wir an unsere Relation stellen,
bekommen wir irgendwelche möglichen entsprechenden Relationen raus.
Daher gibt es noch eine ganze Menge mehr und eine ganze
Menge Varianten dabei. Das sind jetzt aber erstmal die,
die für uns hier sozusagen die wichtigen sind.
Das sind Mathematiken immer wieder, andere Begriffe und andere Namen
und so weiter verwendet werden andere Notationen.
Da müsst ihr entsprechend durch. Wir verwenden jetzt diese
hier und die tauchen auch dann in der Klausur entsprechend wieder
auf in dieser Form
Das heißt, wenn ihr irgendwas aufschreibt,
sollt ihr auch unsere Notation benutzen und nicht irgendwelche anderen Dinge,
damit das einfacher wird für uns und für euch.
Selbstverständlich muss man aber vom Prinzip die verschiedenen Varianten jeweils lesen können.
Das heißt, wenn ich ein Mathematikbuch oder ein anderes Theoriebuch auflage,
dann gibt es dort andere entsprechende Symbole, Darstellungen und so weiter.
Und entsprechend andere Definitionen, die dann zu etwas anderen Dingen auch führen.
Okay, jetzt wollen wir irgendwas mit den partiellen Ordnungen,
strikten Ordnungen nochmal anschauen. Mal gucken, wie die denn
so zusammenhängen. Das ist irgendwie so eine partielle Ordnung.
Und hier eine strikte Ordnung, die da drin haben,
ist die Frage, Kann man das auch wieder andersrum hinkriegen?
Also kann ich aus, also dass ich daraus
die strikte Ordnung mehr gesehen, streichen wir was weg.
Kommen wir dann da jetzt wieder zurück?
Ja, da wollen wir nur die Sachen wieder zutun.
Und dann ist die Sache, ist die Sache gebongt, genau.
So, jetzt aber die strikte Ordnung, auch die Präzedenzrelation.
Jetzt gucken wir darauf, kommt gleich drauf, was in
der Präsidentskulation ist, aber erstmal so Präzedenzen anzugeben. Das heißt,
ich will jetzt nur die minimalen Dinge hier jetzt aufschreiben und sagen,
das, der liegt vor dem, vor dem,
vor dem, vor dem und der Rest, der kam,
den kann man ja schließen.
So,
auch da stellt sich dann die Frage,
wie das aussieht
Und was wir jetzt also haben, ist,
dass wir B als direkten Nachfolger angeben von A,
nehmen wir irgendeinen und das schreiben wir entsprechend so auf,
dass er als ein direkter Nachfolger ist,
falls eben kein entsprechendes C dazwischen liegt.
Das ist das, was letztendlich diese Formel dir aussagt.
Gut, und A und dann mit dem entsprechenden Symbol
heißt entsprechend Präzedenzrelationen zu unserem Teil hier.
Gut, damit haben wir jetzt irgendwie direkte Nachfolger und die
können wir sich jetzt ein bisschen genauer angucken.
Hier oben haben wir unser S, wo wir
die Identität rausgenommen hatten. Und da kann man sagen,
es ist keiner entsprechend dazwischen und die Präzedenzrelation ist ja klar
So, jetzt geht es andersrum. Die Frage,
wir haben eine Präzedenzrelation gegeben und wollen fragen,
kriegen wir eine strikte Ordnung dabei raus an der Stelle?
So, das heißt, wir haben irgendeinem Grafen,
kriegen wir jetzt eine strikte Ordnung raus?
Ja, wir stellen die Transitivität, ist das der Sudan?
Das ist dann hier so an der Seite,
die transitive Hülle, was sind wir dazu?
Und dann haben wir das, was wir dazu haben wollten,
wieder da. Okay, dann bleibt die Frage für eine
Strickenordnung direkt zur Präzedenzrelation, kommen wir da auch hin?
Naja, das ist dann auch nicht ganz so schwierig.
Wir streichen entsprechend Diese Dinge hier raus,
die eben genau hier oben uns irgendwie stören,
diese drei, die nehmen wir hier entsprechend weg.
Das AD, BC und BD, ich habe das Regen
aufbeschrieben hier. Gut. Und entsprechend bekommen wir dann halt
eine neue Relation hier raus und wir sorgen halt dafür,
dass wir genau diesen Teil hier entsprechend abziehen an der Stelle.
Das heißt, wir nehmen jetzt genau diese Teile eigentlich raus oder wir fanden es ja zu,
je nachdem in welche Richtung man jetzt dabei entsprechend läuft.
So, und was wir also gemacht haben, ist,
dass wir nur diese hier entfernen oder entsprechend dazutun,
je nachdem in welche Richtung man geht.
Und damit haben wir genau dieses Problem letztendlich
auch mit dabei
So, jetzt haben wir lineare Ordnung und das Ganze
heißt totale lineare Ordnung oder tot die Orde Z,
falls wir eben das als parzelle Ordnung haben und für alle AAB,
die wir in dem A drin haben, die Ungleichheit impliziert,
dass AB da drin ist oder das als entsprechende Vollständigkeit.
So, wir haben also jetzt hier unser Beispiel wieder und
haben jetzt hier unten unser ABC als eine der Möglichkeiten,
die wir da drin haben.
Und was wir jetzt gerne wissen wollen,
wir haben jetzt so eine Striktordnung haben,
wollen wir jetzt alle Linearisierung rausbekommen,
Die immer erfunden. Früher hatten sie ja das eine Minimum,
denen das, dass eine partielle Ordnung ist mit zusätzlichen Bedingungen,
aber falls du da auch nicht in der Sendung das deflexiv wirst.
Aber ist das dann nur noch gefreckt,
es liegt voller Feld, dass dann auch die Felder?
Das für die Präsidentskalation muss natürlich wegfallen,
weil keins zu sich selbst präsident sein kann an der Stelle.
Das hat mich nicht nur gefreut. Fest zum Fallen dort,
im Zimmer, dass da höhere Tests lief bei dir, Kribborn an.
Das haben wir total offen da als Verwaltung vorhanden,
aller Güte war es, Nein, aber eine totale Ordnung dran sind dran.
Parzelle, Ordnung, die man hatte, auf dem Rücken ist.
Okay, gucke ich mir nochmal an, was damit war.
Jetzt haben wir die Frage, wenn wir jetzt hier diese Striktordnungen haben,
das ist ein sehr einfaches Beispiel hier,
dann bleibt die Frage, welche Ausführungsfolgen haben wir dann?
Und wir haben da dann eben die Möglichkeit,
dass ABC oder BAC auszuführen mit der Lieblingssemantik.
Und jetzt, wenn wir das sozusagen ausrechnen oder sozusagen entsprechend
mit darstellen und sich anschauen. Und die Frage ist,
ist das jetzt sozusagen möglich da drin und dann muss man
es entsprechend ausrechnen können
Naja, und dann muss ich einfach eine neue Präzedenz einführen
und habe also das AB hier mit drin und habe ACBC,
als sozusagen dann entsprechende Relation dabei.
So, das heißt, das AC steckt sozusagen als zusätzliche redundante Informationen,
wenn man so möchte, da entsprechend mit drin.
Und genauso haben wir das auch mit dem BC,
wenn wir den Fall andersrum drehen und das BA einfügen,
kann man es entsprechend auch mit reinmachen.
Also wir können jederzeit hingehen und,
wie wir es ja vorhin schon gesehen hatten, ganz anschaulich,
wir können erst das AB oder BA machen,
das ist sozusagen keine große Frage,
was wir da veranstalten
So, also für eine Striktordnung haben wir jetzt die entsprechende
Menge der linealen oder den seriellen Vervollständigungen von dieser Relation.
Und das bekommen wir eben halt genau über diese Möglichkeit hier.
Das heißt, was wir jetzt machen können, ist,
wir können hingehen und angucken, was sind denn die Möglichkeiten
der entsprechenden der Leaving-Semantik-Darstellung für unsere Striktordnungsdinge dabei.
Genau ein Beispiel. Wir haben hier entsprechend so eine Anordnung,
das ist eine Relation, AVB, BVC,
CVF und so weiter und gucken uns jetzt an,
wie viel Linearisierung gibt es jetzt dabei
Wollen wir mal gucken, ausrechnen und dem von dem,
ich schalte einfach mal weiter, ich gehe mal schon aus,
irgendwelche eine Kritik schon hin, also das A,
B, C, F, ich glaube nicht ganz,
also A, B, C,
DEF, müssen wir schon irgendwie hinkriegen,
also A und F sind sozusagen jeweils die Begrenzer und dann kommen entsprechend die Varianten entsprechend dazwischen,
sodass wir also entsprechend mit dem B anfangen können oder entsprechend mit dem D,
also hier B,
und die 3Ds und dann eben entsprechend mit dem CDE entsprechend mit den Varianten,
die dahinter dann noch vorkommen.
Gut, das Konstruktionsprinzip dahinter. Wie passiert das jetzt?
Wie machen wir das? Naja, alle Permutationen einmal durch und das war's.
An den entsprechenden Stellen. Jetzt haben wir noch ein anderes
schönes Beispiel hier, das ist immer ein bisschen überrascht.
Jetzt ist so eine Anordnung, die kennt ihr
auch schon aus den Übungsaufgaben von dieser Woche.
So entsprechende Systeme, in denen ihr irgendwas habt,
was sozusagen immer in einem bestimmten Zustand irgendwie mal weitererzählt und
dann aber auch immer wieder abbrechen kann, meinetwegen.
Oder so wie wir das hatten zum Modelchecking,
hier hinten dann halt so einen entsprechenden Zustandswechsel wieder da rein.
Wie viele Möglichkeiten gibt es da jetzt? Gut, aufgrund dessen,
dass es hier nicht aufhört, schon mal unendlich viele.
Das sind also zumindest schon mal wie viel?
Ende, ne?
So. Aber was bewirkt das, dass man bei jedem Ähnliche wieder runterlaufen kann?
Beliebig. Und das führt halt entsprechend zu einer Menge Möglichkeiten,
weil er jedes Mal zu den beliebig vielen Möglichkeiten oben,
habt ihr immer wieder das B,
was ihr überall zwischenschieben könnt und dann habt ihr dann das B1B2-Kombination,
die auch überall zwischenschieben und könnt immer wieder immer mehr dazwischen schieben.
Und wenn ihr jetzt ein bisschen hinguckt,
könnt ihr auch die Georganisierungsverfahren, also was euch klarmachen,
dass ihr da Richtung Überabzählbarkeit lauft.
In der Anzahl der Möglichkeiten,
die in so einem einfachen,
billigen System sozusagen schon mal an Liliarisierung von einzelnen Darstellungen hat
Also auf jeden Fall schon mal mehr als die natürlichen Zahlen.
Das ist schon mal eine Geschichte, die klar macht,
in welcher Form diese Dinge wachsen und welche Probleme euch anhandelt,
wenn ihr keine vernünftigen Beschreibungsmittel für eure Sachen habt.
Das Nächste ist, wenn ihr versucht,
in euren Softwaresystemen so etwas zu realisieren,
ihr habt irgendetwas, was immer so läuft,
dass man irgendwie einen Schalter umlegen kann und sagen,
jetzt machen wir mal aus.
Also egal, welche Operationen, die in unserem Kernkraftwerk durchführt,
ihr könnt jederzeit den Ausschalter legen,
dass ihr in Zustand da unten reinkommt.
Jederzeit könnte sagen, und ich mache das Teil aus.
Egal, was wir beide gemacht haben, wir können
das Teil ausmachen. Und jetzt sollt ihr nachweisen,
dass eure Software das sozusagen kann
Wenn ihr das versucht, mit der Menge der Linearisierung auf
die Reihe zu bekommen, funktioniert das irgendwie nicht mehr.
Weil ihr euer Kernkraftwerk sozusagen unendlich lang laufen lassen möchtet,
also beliebig lange. Und jederzeit müsst ihr irgendwo den Stoppschalter
legen können und ihr habt über Aktie, war viele Möglichkeiten.
Ist ein bisschen schwierig, das vernünftig im Griff zu bekommen. Das heißt,
ihr braucht andere Verfahren, mit denen ihr dabei geht und euch das,
was ihr da eigentlich treibt, genau zu beschreiben,
sodass eure entsprechende Software, die ihr baut,
auch genau das Verhalten hat,
dass es ein Gerät abschaltet.
Ihr kennt die entsprechenden Beispiele, wo die Bahnunglücke waren oder
wo irgendwelche Zugunglücke passieren oder so,
dass so größere Geschichten
Da ist von den Ingenieurswissenschaften her eine sehr klare Geschichte.
Das heißt, wer nicht nach dem Stack of the Art
konstruiert, der wird verknackt als Ingenieur.
Und die Informatik gilt durchaus als Ingenieurwissenschaft. Das heißt,
es wird euch noch sozusagen treuen, dass ihr sozusagen verknackt werdet,
wenn ihr nicht den Stack of the Art verwendet.
Und Model-Checking ist zum Beispiel nichts, was in die Theorie gehört,
sondern was um die Softwaretechnik gehört eigentlich. Das heißt,
das, was wir da in der letzten Woche hatten,
ist sozusagen Softwaretechnik und nicht Theorie, was dahintersteht.
Dass man ein Modell dafür braucht, ist klar,
aber das hört euch mal die Sachen auf seradio.org oder sowas
an oder andere Geschichten.
Da wird es häufiger erwähnen. Klar macht man Model-Checking,
klar wird das benutzt
So, das heißt also, ihr müsst euch klarmachen,
wann ihr in die Verantwortung gehen können und sagen können,
jo, ich kann garantieren, dass dieses System diese Eigenschaften hat.
Für irgendeine Buchhaltung, ob da irgendwie ein Datensatz mehr oder weniger
drin ist, da wird das schon nicht so schlimm sein.
Aber für alle möglichen technischen Anlagen, oder wo es irgendwie
ein bisschen spannender wird, müsst ihr den Kopf hinhalten können nachher.
Und da müsst ihr nachweisen, dass ihr den Stil aus
ihr Art verwendet habt und nicht umgekehrt.
Die Leute in Italien, die verurteilt worden sind,
weil sie da als Demografen nicht ordentlich gelesen haben,
sie sind zu sechs Jahren Haft verknackt worden,
weil sie nicht ordentlich per Erdbebenvorhersagen gemacht haben.
Sie sind in der zweiten Instanz wieder freigesprochen worden
Aber erstmal sind sie verknackt worden. Und das nur,
weil sie angeblich ihre Zeismographen nicht richtig gelesen haben und nicht richtig die Vorhersagen gemacht haben.
Deswegen eine Menge Leute gestorben sind. Und wenn das jetzt
durch eure Software erledigt werden soll und ihr programmiert das,
dann seid ihr dafür dran. Das nur so als Motivation,
wozu ihr diesen ganzen Kram euch angucken sollt.
Und als Motivationsschnitt steht nichts von im Skript drin, weiß ich,
aber das sind die Dinge, die jetzt sozusagen dahinterstehen,
weswegen wir euch mit solchen Sachen überhaupt erstmal auseinandersetzen müsst.
Wenn ich Glück habe, bleibt ihr irgendwo nachher an irgendeinem Schreibtisch hängen,
wo ihr uninteressante Sachen macht, die nicht relevant sind.
Werdet ihr
aber entsprechend bezahlt
Indem man, wo ihr interessante Sachen macht,
interessante Dinge programmiert, seid ihr an einer Stelle,
wo ihr auf Verantwortung übernehmen müsst und dann müsst ihr bestimmte Techniken einsetzen können.
So, das war der Teil, wo ich mit solchen
komischen ASMBs eine Motivation für gutes Schreiben von Programmen versucht habe.
Ob es jetzt klappt, können wir ja mal schauen.
Gut, nächster Punkt. Der Herr Lemport hat vor,
eine Menge Jahren, ich glaube 78, einen schönen Artikel veröffentlicht,
wo er ein bisschen was beschrieben hat,
so Zeitstempelgeschichten und wo er erklärt hat,
wie man in verteilten Systemen Verschieden ablaufende Prozesse so ausrichten kann,
dass die konsistente Ergebnisse liefern.
Die Frage ist, wozu braucht man das eigentlich? Naja,
wenn ihr zu Datenbanken rübergeht und ich bin mir sicher,
dass die meisten von euch irgendwie Datenbankveranstaltungen besuchen werden.
Das ist eine der Grundlagen in verteilten Datenbanken,
dass die Teile konsistent sein sollen. Und die Frage ist,
wie kriegt man Konsistenz denn eigentlich hin? Naja,
ich habe jetzt auf meiner einen Datenbank wird irgendwas bearbeitet,
auf der zweiten wird das bearbeitet für dritten und vierten auch.
Und jeder bucht irgendetwas und dann schickt man irgendwelche Nachrichten
hin und her
Wie man den buchen soll. Und bei den Buchungen passieren
genau diese Dinge, die ich vorhin gerade beschrieben habe.
Wir haben so Operationen mit Plus und Minus und Mal
und durch, also durchaus anspruchsvolle Aufgaben.
Das heißt also, das wird nur hin und her geschickt,
diese verteilten Datenbanken und dort kommt es zu Problemen.
Und das Problem hat der Lampo sozusagen damals aufgegriffen,
weil das da zu der Zeit hochkam.
Das ist sozusagen schon eine Theorie zur partiellen, für partielle Ordnung und
so weiter alles gab in der Mathematik oder auch in anderen Stellen.
Das war da sozusagen gar nicht das Entscheidende.
Und entscheidend ist, dass er ein Konzept,
ein Problem erkannt hat und dafür dann Erlösungsverfahren vorgestellt hat.
Und das hat den Mann ziemlich berühmt gemacht in der
entsprechenden Community
So, und die Idee war jetzt in irgendeiner Weise
Zeitstempel zu verteilen und ist eigentlich ganz einfach.
Ich sage mal, eine Zeit tue ich auf so einen
Datenbankteil drauf und dann ist die Sache ja gebombt. Das heißt,
ich versiehe jede Aktion in meiner Datenbank mit meinem Zeitstempel und wenn ich eine Operation gemacht habe,
dann sage ich,
wann ich das getan habe und aufgrund dessen kann ich dann an anderen Stellen noch ausrechnen,
wie weit das für mich relevant war,
wie ich das berücksichtigen muss oder was dabei passiert.
So, wenn wir schauen,
was das,
wie das dann hinkommt
Wir haben so logische und vektuelle Zeitstempel, wo wir schauen,
was da drin steckt. Und es geht im Grunde genommen
um das Problem der globalen Zeit versus lokale Zeit. Zeitabweicherungen durch,
Atomuhr ins Flugzeug, in die Luft schicken, kräftig kreisen lassen,
runterkommen lassen, Uhrenvergleich mit der anderen Atomuhr und die gehen unterschiedlich,
das ist bekanntes Beispiel. Das heißt also,
irgendwie so eine Zeit, die dann auch noch unabhängig ist,
von irgendwelchen Bewegungen haben wir schon mal gar nicht,
aber das Nächste ist, dass es schon die nächste Schwierigkeit ist,
wie ich denn lokal meine Uhr abstimmen.
Wenn jetzt jeder sein Handy hier rausholt,
auf die Uhrzeit guckt, bin ich mir sicher,
dass die nicht alle
dieselbe Zeit anzeigen
So mindestens eine wird irgendwie abweichen. Spätestens meine, weil
die geht nämlich gerade nach. Deswegen ist das sozusagen eine Geschichte,
die sozusagen von vornherein klar macht, dass mit einer reinen Uhrzeit,
in die ich auf die Uhr gucke, das Ganze nicht funktionieren wird.
So, und trotzdem habe ich aber eine lokale Zeit,
weil wann immer ich eine Operation bei mir ja mache,
kann ich auf meine Uhr gucken und kann das schön anordnen.
Na gut, wollen wir mal gucken, was das heißt.
Wir haben ja solche schönen Uhren. Jeder von euch sitzt
mit so einer schönen Taschenuhr. Statt Handy haben wir halt
so eine Taschenuhr genommen, das sieht irgendwie besser aus,
finde ich. Und dann gab es irgendwas schon 1908,
das hat so ein Herminkowski hat da sich Gedanken zugemacht,
wie solche Uhren denn eigentlich verlaufen im verteilten System und was
da eigentlich so für Phänomene drin entsprechend passieren.
Also das ist für Informatik wirklich mehr als 100 Jahre.
Das ist wirklich ein Teil, was ein älteres Ergebnis ist.
Und wie wir sehen, haben wir irgendwelche Uhren und die
ticken irgendwie ein Ticken, Ding anders, aber okay.
So, und jetzt haben wir hier irgendwelche Dinge,
die vor allem bestimmten Ereignis A wiederum liegen,
die ich dann in der Zeit sozusagen angucken kann,
wo sie XY irgendwie hier darstellen.
Und ich habe irgendwas in der,
was sozusagen im Vorbereich liegen kann und dann,
was so in Vergangenheiten so da ist,
die parallel gelaufen sind
Dann kommt irgendeine Aktion, wir treffen uns jetzt gerade hier
und hinterher geht ihr alle wieder woanders hin und die Sachen
laufen auseinander und dann können wieder tausend andere Ereignisse passieren.
Am Ende sind wir gerade hier sozusagen mit dem Raum und treffen uns gerade.
Dass ich sozusagen am Schreibtisch gesessen habe und die Veranstaltung vorbereitet
habe und ihr wart noch in der Übungsgruppe,
das ist dann so eine andere Geschichte.
Kleiner Zwischeneinschub, wer von euch besucht vorher die entsprechenden Übungsgruppen
und wer damit einverstanden, dass wir entsprechend um 12 Uhr anfangen.
Es gab den Wunsch, dass wir diese Veranstaltung ab 12
Uhr,
Punkt 12.00
sozusagen anfangen
Gibt es da irgendwelche Proteste gegen den Anfang um zwölf?
Welche Hände? Ihr müsst von Campus hier her, oder wie?
Okay, genau das war der Grund, weswegen das früher sein sollte.
Okay, schafft ihr zehn nach zwölf? Geht das? Gut,
dann fangen wir ein bisschen früher an und ich verzichte auf meine Pause,
habe ich heute auch schon nicht gemacht. Das heißt,
dadurch machen wir dann sozusagen einmal durch und sind dann das
nächste Mal um 20 Uhr dann fertig und dann spart man
sozusagen für die, die dann zum Campus hin müssen,
noch ein bisschen
Gut, okay, machen wir das, machen wir so. Also bitte dran denken,
ich werde das auf der Website auch noch kundtun,
dass wir dann halt um zehn nach anfangen und ohne Pause bis 20 vor,
dann das entsprechend machen.
Gut, wir haben jetzt also hier unsere Möglichkeiten, wie gesagt,
Übungsgruppen und der entsprechenden Vorbereitung auf die Veranstaltung oder sowas gehabt.
Und jetzt treffen wir uns hier und danach geht es mir irgendwie weiter.
Gut, okay, das ist so ein Teil,
was man so anschauen kann. Und es gibt irgendein anderes Ereignis eben,
was hier sozusagen in der Zeit vorher sein musste oder sowas vor dem Teil,
weil das quasi ein Teil war, was irgendeine Vergangenheit hat,
zwar aber auch hier drauf liegt und von dem entsprechend erledigt werden muss und dann da drin ist.
Da haben wir wieder unsere Relation, das muss ja vorher
passiert sein, weil es ja in der Vergangenheit war.
Es war sozusagen Voraussetzung, dafür ich hier bin,
dass ich die Folien auf den Rechner geladen habe.
Also das müsste hier vortragen kann. Oder ich muss heute Morgen aufgestanden sein,
bevor ich überhaupt dann hierher kommen konnte oder so etwas.
Denkt euch einfache Sachen aus mit der einfachen Relation vor von Daniel,
der hier mit A bezeichnet wurde,
damit er sich euch hier mit euch treffen kann.
So, jetzt ist das Nächste, dass ihr aber
auch noch irgendwelche Kollegen von mir auch noch Unterricht machen.
Und jetzt können wir sozusagen eine Nebenläufigkeitsrelation haben. Wir haben jetzt
einen anderen Hörsaal, da gibt es einen anderen Dozenten,
da steht auch einer und erzählt auch irgendetwas. Und davor gab es,
der hat auch so eine ähnliche Geschichte, hat irgendeine Vergangenheit,
hält jetzt diese Geschichte da irgendwie und es macht dort irgendwie weiter.
Und wenn man sehen kann, diese beiden sind unabhängig,
da gibt es keine Relation zwischen und dadurch kann sich das irgendwie so bewegen. So,
wenn man es genügend weit zurückführt, diese entsprechenden Sachen,
kann man wieder andere Schnittmengen herstellen oder man kann auch irgendwelche
weiteren Sachen jetzt hier sozusagen so durchlegen und dass man sich in der Zukunft wieder trifft,
weil ich mich mit den Kollegen zusammen abspreche,
was wir in Datenbanken machen und was wir hier machen,
damit sozusagen die Stoffgebiete von uns vorbereitet werden als theoretische Grundlagen oder konzeptische Grundlagen und er greift darauf auf und baut seine Veranstaltung darauf ab.
Oder er macht das zuerst als anschauliches Beispiel und ich greife auf
das Beispiel von ihm zurück und benutze das dann hier in der Theorie als Anwendungsbeispiel,
was er schon erklärt wurde, ohne dass die Konzepte exakt durchdiskutiert wurden.
Sowas kann also entsprechend ja auch noch darauf machen,
was also unabhängig von dem Vortragetermin sozusagen ist, der erstmal unabhängig ist an der Stelle.
Was ich damit also quasi habe, ist,
dass ich hingehen kann und quasi mir für jedes Individuum,
was ich irgendwie haben kann, eine entsprechende Lebenslinie vorstellen kann,
die irgendwo so durchs Weltall geistert und da befinde ich mich irgendwie und da gibt es andere Leute und mit denen treffe ich mich dann halt auch irgendwann mal
Und dann haben wir hier sozusagen ein gemeinsames Treffen,
wo wir irgendwas tun, was wir dann als gemeinsame Aktivitäten da drin haben.
Wie lange jetzt diese Zeitskala hierzwischen ist,
wie viele Zustände ich da jetzt so noch dazwischen malen möchte,
um jetzt sozusagen dann wieder andere Sachen da mit reinzubringen in irgendeiner Reihenfolge.
Das lasse ich jetzt mal völlig offen. Es kann sich
um die Steinzeit gerade drehen bis heute, um irgendwelche Vorfahren,
die sich dann hier auch mit zufällig gerade in so einem Raum treffen,
wieder bewegen, um irgendwelche Sachen.
Oder es kann sich um Dinge handeln,
die innerhalb von ganz kurzer Zeit von Millisekundenbereich oder noch kürzer
So, dieses grundsätzliche Modell ist sozusagen prinzipiell dafür da,
um solche Lebenslinie zu haben und wenn sie lebt,
sie ihm halt schneiden und gemeinsame Dinge haben,
dann ist sozusagen die Synchronisation da und es gibt irgendwas,
was im Vor- und Nachtbereich ist.
So, und wenn ich jetzt an dieser Stelle auch noch
irgendwelche Funktionen durchführe und Sachen austausche, dann ist es natürlich nicht möglich,
dass, wenn ich nicht Eis produziert habe,
kann ich das Eis nicht essen.
Also wenn ich nicht einen Verkäufer treffe,
der mir irgendwann mal sozusagen das Eis verkauft,
also das Treffen ist also der entsprechende Eisverkäufer mit mir und der
muss also in der Zwischenzeit einkaufen gehen und Sachen produzieren und so weiter.
Das muss also passiert sein,
damit ich jetzt hier wieder beim nächsten Mal wieder Eis bekomme,
weil sonst ist irgendwann
die Schlüssel der Leer
So, und das heißt also, diese Aktionen sind sozusagen
auch wirklich notwendig, damit das drin ist.
Wenn ich Pech habe, sitzt der immer nur da und verkauft auf
das alte Eis wieder und ich kriege irgendwann eine Saminellenvergiftung.
So, also, und das sind so die Dinge,
die dahinter stehen können. Ich bin beliebige andere Beispiele,
euch da rausgreifen. Okay, so,
das erstmal so zu diesem Zeitperspektiven und wie man das im Raum
anordnet und was man dahinter sehen möchte in dieser Welt.
Ihr könnt natürlich auch hingehen und dahinter irgendwelche Webservices packen und
irgendwelche Datenbankabstimmungen oder sonstige Sachen.
Wenn das irgendwas verarbeitet werden muss,
also eine Sicherung oder sonst irgendwelche Dinge
So. Jetzt kommt der Sprung, wo ich jetzt wieder zu
dem Modell von Lampo wieder zurückkomme. Wir haben irgendein Nachrichtenmodell
. Wir haben ein System von Funktionseinheiten oder Prozessoren oder Webservern
oder was auch immer ihr gerne haben möchtet da drauf.
P0 bis PN minus 1. Die lokale Rechenschritte ausführen.
Das heißt, jeder Prozessor hier rechnet irgendetwas.
Und das macht jeder für sich sozusagen völlig unabhängig erstmal,
kann er für sich sozusagen irgendwas ausführen.
Ganz billige Variante. Und er kann Nachrichten in andere versenden.
So, schicke ich die Nachricht drüber
Das Modell hier, ja, fein, fertig.
Das macht sozusagen erstmal keine Probleme,
weil ich jetzt sozusagen noch nicht gesagt habe,
inwieweit für die Berechnung die Inhalte der entsprechenden Nachricht sozusagen wichtig waren oder nicht.
Wenn es so Nachrichten sind, ja, hallo,
ja, hallo, ja, hallo,
dann kann jeder rechnen und es gibt keine Abhängigkeiten.
Wenn aber damit Werte ausgetauscht werden,
die relevant sind für das Rechenergebnis,
dann muss ich mir jetzt überlegen,
wie ich das dann genauer anschaue
So. Und was wir uns jetzt in Relation haben,
wir haben, unsere Relation ist dann da irgendwie wieder mit
der Mathematik da draufhauen auf die Sachen und sagen, okay,
wir haben eine Relation vor und die ist hier entsprechend definiert.
Und wir haben jetzt eben die entsprechenden Emente daraus und eins
vor zwei, falls folgendes gilt, naja,
und was müssen wir jetzt da wohl haben?
Wir müssen sagen, gehören eins um zwei zu demselben Prozessor
und sie liegen auf derselben linear geordneten Zeitachse,
dann gilt 4-1-Profi-2.
Genau dann, wenn das auf der Zeitachse liegt.
Also das hier ist relativ einfach,
passt auch so direkt mit 1 und 2
gerade zufällig hier
Dass das eins vor zwei sozusagen liegen muss, ist relativ eindeutig,
was da passiert. So, und das Wichtige ist eben,
dass ich halt auf demselben Prozessor dort zu finden sind.
Und das gilt natürlich dann auch für dieses Teil hier zum Beispiel,
wo wir wie zwei, oder wie vier,
vor vier, fünf haben.
So, ja, so, dann gehören die zu verschiedenen Prozessoren.
Das heißt, sie liegen auf verschiedenen Zeitachsen.
So ist Vieh eins das Sendereignis vor einer Nachricht,
die 442 empfangen wird, dann gilt das hier entsprechend wieder.
Also, welches, nehmen wir als Beispiel,
lieber hier hinten mal eins, nehmen wir halt das hier an dieser Stelle.
Das heißt also, die Zahl 8 ist trotzdem sozusagen vor
der 3. Weil wir das jetzt irgendwie durchnummeriert haben,
das ist ja so und so,
einfach nur von oben da unten einfach irgendwie so durchnummeriert war jetzt hier als Beispiel.
So, das bedeutet, wir haben da jetzt die entsprechenden
verschiedenen Prozessoren und können das entsprechend da drin reinpacken.
So, und das Vor ist transitiv. Was bedeutet das
? Das bedeutet, wenn ich jetzt hier entsprechend reingucke,
dass ich da was gucken könnte oder ich kann auch sagen,
das ist vor dem.
Oh, warum? Naja, ich kann hier irgendwie da etwas erkennen.
Hier habe ich eine hohe Relation und hier habe ich noch mehr.
Und ich kann anders laufen. Es gibt also mehrere Gründe,
warum eins vor entsprechend zwölf kommt an den Stellen.
So, ist das denn jetzt auch irreflexiv? Naja,
wenn wir Striktordnung haben, ist die Frage, was ist damit?
Also klar, kann der vor sich selbst liegen,
das wird irgendwie schwierig. Also bin ich da vor mir selber,
uns das Ganze strikt geordnet, das müssen wir uns halt
entsprechend nochmal nochmal anschauen
So. Aber das wäre reflexiv, dann könnten wir das ja
so irgendwie anordnen und wir könnten irgendwie so einen Kreis da reinzeichnen.
Wollen wir natürlich nicht. Also wir wollen keine Nachrichten irgendwie wieder
so zurückschicken, das funktioniert irgendwie an der Stelle nicht.
Und das können wir, also es muss irgendwie sowas geben und
dann müssen wir zurückgehen und das, das wollen wir nicht.
So, jetzt kommen wir zu einem Beispiel,
wo wir es noch mal sehen, dass das Ganze auch schwierig ist sozusagen.
Wir haben unsere schwierigen Rechenoperationen jetzt und nehmen die von einer Bank,
wo auf dem Konto, was einzahlen und auszahlen und so weiter,
so ein bisschen noch ein bisschen jonglieren auf dem Beim Konto.
Und wir haben jetzt irgendwie vier Filialen,
die sich irgendwie unterhalten müssen und sind verteilt ein System.
Und da muss entsprechend was passieren. So,
und jetzt haben wir die entsprechenden Übertragungen, dass wir also
von dem einen Prozess auf den anderen was übertragen wollen.
Und es geht darum, dass wir jetzt einen Geldbetrag abziehen müssen,
M wie Money, wird von JOTO-Zeit mitgeteilt, dass ich dir,
dass ich sozusagen Geld dort wegnehme von den XI und dem J XJ, das entsprechend zuordne.
Wenn ich euch also 100 Euro überweise,
damit ihr auch bei der nächsten Veranstaltung wieder hier seid und alle zuhört,
Dann haben wir also einen Teil,
was irgendwie der Bank mitteilen müssen und irgendwie eure Bank muss das irgendwie entsprechend erfahren.
Mache ich mir mit einer Person, wenn mir die vielleicht
gerade wichtig ist jetzt oder so, oder mit vielen,
aber auf jeden Fall haben wir eine Überweisung da entsprechend drin.
So, jetzt gucken wir mal drauf und wir haben also unsere lokalen Zeiten,
die jetzt unabhängig jetzt hier entsprechend drin haben und schauen mal,
was da so passiert.
Die haben also 10 Euro, 24,30 Euro Euro,
also meine 100 Euro Beispiele mit euch auszahlen,
klappt also diesem Beispiel jetzt nicht,
aber wir haben jetzt hier irgendetwas,
was dort entsprechend passiert.
So, und die Gesamtgeldmenge ist wie viel
? 60
Und wenn die jetzt ihre Transfers gemacht haben am Ende,
dann möchten wir hier stehen haben, 60. Wir haben von
außen kommt nichts rein, es geht auch nichts weg.
Also wir können das Geld nur so unter uns hin und her schieben.
Das also nicht sein, dass ich jetzt hier hinten nicht 60 stehen hätte.
Das ist sozusagen die grundsätzliche Idee. Das heißt,
wir haben jetzt hier irgendwelche Dinge und wir haben jetzt jetzt
hier verschiedene Zeitzustände, die wir irgendwie abzielen können.
1, 2, 3, 4, 5,
6, 7, 8, 9, 10.
Und hier gibt es zum Beispiel,
dass wir Von 8. Nach Rix, wo war das jetzt?
Vielleicht zwei haben, was ist das? Dann sind wir
wieder da. In Israel bei 8, genau. Und wir überweisen,
dass wir sozusagen zwei Geldeinheiten jetzt hier entsprechend übertragen wollen auf diese Geschichte.
So, und hier wird eins überwiesen,
da wird drei überwiesen, da fünf oder vier.
Und wir mal gucken, was danach passiert. Das Problem ist jetzt,
die Bankleitung möchte immer wieder intervallen, die insgesamt umlaufende Geldmaking ermitteln.
Und diese sollte natürlich immer 60 sein. Das heißt,
jetzt will ich nicht nur am Ende die 60 haben,
sondern ich komme auf die Idee und möchte, dass wenn ich auf Konto gucke,
ich den richtigen Stand auch in irgendeiner Weise habe.
Oder wenn ich so einen Querschnitt durchs System ziehe,
dass ich das hinbekomme und sage, okay,
jetzt weiß ich, wie viel Geld hier gerade im Umlauf ist.
Und das wollen wir jetzt mal genauer angucken.
Das erste Verfahren. Ganz einfache Geschichte ist,
die Bankleitung fordert alle Funktionshänden auf die Kontostände zu einem bestimmten Zeitpunkt T in ihrer lokalen Zeit mitzuteilen.
Erwartung, dass das bei 60 ist. Zeitpunkt ist T
gleich 5 und den legen wir mal dahin an die Stelle.
So, jetzt ist die Frage, Wie sieht das dabei aus?
Ein bisschen Geld, die jeweils haben. Das Verfahren zeigt sich
relativ schnell, wo Probleme da sind. Wenn jeder nur sagt,
dass er gerade in seiner Tasche hat,
und die haben gerade vorher entsprechend hier die zwei und die drei abgeschickt,
ist klar, wo das Problem liegt, dass das Verfahren vielleicht nicht ganz optimal ist an der Stelle.
So, das heißt, wir gucken uns jetzt zum Zeitpunkt T gleich fünf an.
Gucken uns jetzt hier die Dinge an und sagen da oben,
okay, haben wir neun,
der hier sagt,
der hat irgendwie
Einen dazu, 20 und 3 weg,
sind 18 und entsprechend der hier behauptet, er hätte 28,
was entsprechend zu einer Berechnung führt und sagt,
wir haben nur 55 in der Kasse.
Führt also dazu, dass wir sagen, das Verfahren scheint nicht optimal zu sein.
Was ist also dann der nächste Schritt, was ich jetzt
als nächstes Verfahren machen könnte? Ich kann überlegen, okay,
gucken wir nach, was denn mit Nachrichten unterwegs war,
dass wir da mal drauf schauen und versuchen, das jetzt zu berücksichtigen.
Und jetzt wissen wir, dass eins auch an P1,
was geschickt hat, mich ein. Und entsprechend drei an P2.
Und zwei an P1, genau, hierüber. So,
und der Stand ist auch, dass wir hier wissen,
okay, das ist schon angekommen und das ist rausgegangen.
Und wir wissen also, unterwegs sind fünf.
Und damit haben wir also das Problem eigentlich gelöst.
Wir sagen jetzt also, okay, ihr sagt auch noch,
was ihr Geld gerade rausgeschickt habt und was ihr schon erhalten habt.
Und dann wird die Nachricht relativ dick.
So. Aber auf jeden Fall haben wir jetzt ein Problem.
Und zwar die noch nicht empfangenden Nachrichten sind jetzt eigentlich das,
was wir gerne wissen wollen
Und alle Eingegangenen sind ja eigentlich kein Problem, weil das sorgt dafür,
dass wir so null so im Spiel hier wieder hinbekommen.
Es geht eigentlich nur um die, die nicht empfangen wurden an der Stelle.
War aber unser zweites Verfahren. Die Bankleitung bittet die Summe
der abgesandten Minus der Summe der eingegangenen Betriege zu XI,
jeweils hinzuzuzählen und haben auch wieder Erwartungshaltung,
dass wir da gleich 60 haben.
Und wir sehen, okay,
abgesandten Minus der Summe der eingegangenen Beträge
Zuzählen und dann stelle ich mir fest, okay, gut,
zum Zeitpunkt Tee gleich 5 kommen wir da entsprechend hin,
weil der sagt, okay, gut, einer ist eingegangen,
drei wird weggeschickt und der sagt, okay, gut,
ich habe hier zwei und zwei rausgeschickt,
dann komme ich wieder auf 60. So.
Jetzt geht es entsprechend weiter. Diese Dinge waren vorher sozusagen
das, was sozusagen, ja, da unterschlagen war.
So, jetzt machen wir noch einen anderen Kram,
dass wir jetzt auf die Idee kommen,
uns so einen Zeitpunkt T anzugucken
Und entsprechend da jetzt den Zeitschnitt durchzulegen. Weil wir hatten ja gesagt,
unsere Uhren, die laufen also ein bisschen unterschiedlich und können wir auch nochmal gucken.
Und da stellt uns, dass wir auf 63 kommen,
wenn wir diesen Schnitt jetzt hier sozusagen durchlegen,
wenn wir sagen, okay, was ist da denn das Problem?
So, woran liegt das, was ist da jetzt das Problem?
Wenn ich das so schneide? Ich muss nur entsprechend stauchen,
dann kann ich wieder schön denkrechten Strich durchziehen,
aber das habe ich mir jetzt hier geschenkt. Naja,
es kann sein, dass sozusagen hier schon was angekommen ist,
aber da oben bei dem sozusagen, der sagt zu dem Zeitpunkt,
ja da, da hatte ich ja noch so und so viel,
habe aber später dann irgendwann mal das erst losgeschickt.
Während bei dem hier in der tatsächlichen Zeit,
das inzwischen schon angekommen ist, und sozusagen damit draufgerechnet wird.
Das heißt, mit einmal steckt da mehr Geld im System drin.
Das wollen wir auch nicht. Das liegt also daran,
dass wir jetzt eine Unterscheidung machen müssen, das ist Vergangenheit
und was ist entsprechend Zukunft an den Stellen. So und alles,
was sozusagen rechts ist an die Zukunft und das ist die Vergangenheit und jetzt ist es eben so,
dass aus der Zukunft etwas in die Vergangenheit geschickt wurde quasi,
das liegt nur immer daran,
dass der Das ist die lokale Uhr so langsam bei 1 gegangen ist,
dass sie halt, dass sie halt den falschen Zeitpunkt sozusagen genommen hat zum Draufgucken.
Wenn ich jetzt eine globale Uhr hätte und von oben drauf gucken könnte und sagen könnte,
jo, 1, 2, 3, jetzt,
dann ist das natürlich sozusagen hier möglich,
weil ich dann einfach alle synchronisiert habe.
Das bedeutet aber, ich habe kein verteiltes System mehr,
weil in einem verteilten System ist das mit den Uhren,
siehe Minkowski am Anfang, nicht unbedingt möglich,
dass man das so genau hinkriegt.
Diese genaue Uhrzeit, ich muss ja immer den Zeitabstand klein genug wählen
und wir hatten ja vorhin schon das Problem mit der Entspinne Atomuhr,
die wir ins Flugzeug packen und irgendwo rumfliegen lassen.
Das gibt es bestimmt noch in anderen Varianten,
an Laufzeiten sind ein Problem und so weiter.
Und zur Not hat irgendein Mensch vergessen, die Sommerwinterzeit umzustellen
oder sowas. Das ist ein ganz einfacher Anwendungsfehler,
der im System einfach vorliegt und der nicht berücksichtigt wurde.
Oder ein Datumswechsel wurde nicht berücksichtigt oder die entsprechende Zeitsprünge sozusagen bei
dem Datumswechsel auf dem Globus nicht berücksichtigt und so weiter und so fort.
Okay, das Problem ist hier also, Nachrichten aus der Zukunft in die Vergangenheit.
Das ist das, was wir da als Probleme jetzt haben.
Und jetzt haben wir die Frage, wie man die Relation
vor im System beobachten kann, wie wir es hinkriegen.
Und dazu bestimmen also jetzt eine logische Uhr,
Gloccio Time, LT, mit der Aussage,
dass wir dieses 1 vor 2 haben, entsprechend mit dieser Relation hier.
Das heißt, wenn der vor dem ist,
nach dem, was wir hier vorhin definiert haben,
dann muss auch die logische Zeit
sozusagen dahin kommen
So, was machen wir jetzt? Zur Realisierung führt jede
Funktionseinheit PI, eine variable LTI mit Anfangswert Müll mit.
Irgendwie müssen wir die erst mal auf Null setzen.
Da reitet also ein dritter Erbote mit dem Geld durch die Gegend.
Denkt ja an die Bährungs-,
auf Notenumstellung oder Währungsumstellung oder was weiß ich, Wiedervereinigung,
wo lauter berittene Booten mit einem kleinen Sack Geld auf dem Rücken
in die Banken überall hingereist sind, das Geld hingestellt haben.
Dann wussten die zum Zeitpunkt Null,
nämlich Montagmorgen um 9 Uhr werden die Banken geöffnet und
dann wird das Geld ausgegeben
So, und damit hat man sozusagen eine logische Zeit,
die man dann durchaus umsetzen kann. Und dann kann das Ganze losgehen.
Man kann also bestimmte Zeitpunkte davon auch umsetzen und realisieren.
Die Nachrichten wird der neue Wert, des entsprechenden sein Ereignis beigefügt,
das ist der logische Zeitstern, für den wir jetzt haben.
Das heißt, unsere Nachrichten tragen jetzt nicht nur die Geldbeträge,
sondern bekommen eben noch mehr Informationen.
Damit werden die Daten übertragen werden, das ist natürlich größer.
Heutiger Zeit kein großes Problem mehr. Sowas hat noch
ein bisschen mehr Daten da reinzustopfen
Ein Ereignis, viel von PI, setzt LTI auf einen
um eins größeren Wert als das Maximum des alten Wertes und eines gegebenenfalls in vier empfangenden Zeitstempel. So,
jetzt müssen wir so aufpassen, wir müssen jetzt sehen,
dass wir, wenn wir irgendwas empfangen,
hochzielen und wenn wir Pech haben, kriegen wir eine Zeitstempel mitgeteilt,
dass der sozusagen schon seine Uhr viel, viel weitergezählt hat,
da muss man das natürlich entsprechend berücksichtigen.
So, sei viel als Ereignis von diesem PI,
haben also irgendwelche Drei Prozessoren wieder. Wir haben unser Feed,
dann bezeichnet das Logical Time von Vieh,
den von viel berechneten Wert von dem LTI an der Stelle.
So, und wir haben einen Satz. Für die Ereignisse,
41 & P2 aus dem großen Vieh gilt,
dass wenn das eine vor dem zweiten Licht,
dann muss daraus zwingend folgern, dass die logische Zeit kleiner ist.
Damit haben wir die Möglichkeit, diese Zeiten anzugeben und
wirklich das sozusagen in diese Richtung erstmal entsprechend zu übertragen
Musik So. Tobi wieder da? Nee, nicht? Ton?
Okay, alles klar. Gut. Habt ihr Fragen?
Da war ich, glaube ich, gerade stehen geblieben.
Es war passend zur Frage. Okay, gut.
Dann schauen wir uns den Algorithmus für die Bankleitung jetzt nochmal
an und schauen mal, was dabei jetzt spannend ist.
Man führe logische Uhren ein. Gut,
haben wir gerade eben definiert, wie man das macht.
Haben wir da also drin. Man lege einen Teosku
fest mit dem Modialität entsprechend größer sind als diese Null.
Und entsprechend findet ihr die Funktion seid. PI müssen jetzt also
was machen, nämlich bestimme in Bezug auf die lokale Zeit
aufeinanderfolgende Ereignisse auf den Strich von PI
Sodass wäre so das auf jeden Fall schon mal gelten haben. Das heißt,
wenn wir die bei uns irgendwie angucken, wissen wir,
dass wir die alle entsprechend in so eine Reihenfolge bringen.
Falls den nicht vor dem ersten Ereignis von PI liegt,
das darf natürlich nicht sein, weil wir gucken uns nur die an,
die wir jetzt sozusagen ab dem Zeitpunkt T haben.
Setze C auf den Wert von XI zwischen diesen entsprechenden Sachen oder den Anfangswert,
falls T vor dem ersten Ereignis von P liegt und sende CI an die entsprechende Leitung.
Das heißt, da gucken wir uns den Werk jetzt an,
rechnen das aus und passen auf, dass das in entsprechendem Rahmen liegt.
Und seinen Wert jeder Geldsendung, an die Leitung,
die ab Fiehstrich ankommt, aber ein Zeitstempel von diesen Teil hier hat.
So, das heißt, was wollen wir jetzt hier haben?
Wir wollen jetzt hier sozusagen einen konsistenten Schnitt vornehmen,
dass wir da versuchen, diese entsprechenden Zeiten da mit reinzubekommen.
So, und wenn wir es jetzt angucken,
im Beispiel sind das zum Zeitpunkt 1,5. P.0 hat eine an
diesem P1 hier geschickt, wir schneiden also hier durch.
Und P1 war noch untätig, die schlafen noch,
die sind noch nicht richtig aufgestanden,
oder kein Kunde war da
Und hier hat irgendein Kunde gesagt, ich überweise schon mal
zwei Geldeinheiten, an denen da oben entsprechend.
So, was passiert jetzt dann da drin? Naja,
es kommt also an, eins in 4-4 und zwei
in entsprechend 4-6, was relativ lange dauert,
bis das sozusagen da auch entsprechend erscheint.
Und zwei kommen ihm da hinten an. So,
und die Summe, die wir jetzt haben,
kommt genau auf diese entsprechenden 60 raus, weil wir eben sozusagen das,
was entsprechend jetzt hier weggeht und was da entsprechend dann später ankommt,
entsprechend hier oben mit eingerechnet wird.
Wo der Algorithmus jetzt was rausholt und wo genau was nachschaut,
das könnt ihr nachlesen, und zwar insbesondere könnt ihr das
euch anschauen in den entsprechenden Büchern von dem Tannenbaum und den entsprechenden anderen Stellen.
Und da findet ihr halt sozusagen diese Dinge als Konzepte aus dem dementsprechenden Bereich nicht dargestellt.
Und mit ein bisschen mehr Text und wesentlich mehr Erläuterung,
als ich das jetzt hier hatte.
So, was man da jetzt vom Prinzip sehen kann,
wenn man das also jetzt Ländervertrag anguckt,
dann beschreibt er das hier also auch mit seinen entsprechenden Zeitsachen.
Hier sieht man entsprechend,
wie das so voranschreitet und sieht hier das A, B,
C, D entsprechend da drin und die entsprechenden Prozesse,
die eine eigene Uhr besitzen und dann muss man halt schauen,
wann, was, wohin geschickt wird an die Stellen.
So und je nachdem, wie die Zeit halt aussehen,
muss man das entsprechend korrigieren. Was passiert da? Weil Algorithmus,
hier unten haben wir eine 56 stehen. So und wenn das jetzt hier mal ankommt,
dann müssen wir halt dafür sorgen, dass Uhr nachgestellt wird,
weil es kann ja nicht sein,
dass ich hier noch bei 56 verbleibe, wenn ich einen Stempel bekomme,
mit der Uhrzeit 60. Deswegen trage ich hier die entsprechende 61 ein.
Was dazu führt, dass ich jetzt hier nach acht Zeiteinheiten,
nämlich nach 69 an der Stelle, weil lokal,
ich habe eine Uhr umgesetzt und habe dann acht Zeiteinheiten später,
eine Aktion, wo ich was lustige, das heißt,
hier muss ich mit 69 losschicken.
Und ich bin hier jetzt nicht mehr bei der 54,
sondern setze hier die entsprechende 70 fort.
Das heißt, ich springe hier von 48 auf entsprechend
70 rüber
Jetzt sehe ich gerade die Variante mit den großen Folien,
ist jetzt gar nicht hier drin, ne?
Zum Lesen etwas schlecht natürlich. Ihr könnt auch hinten erkennen,
welche Zahlen ich gerade gezeigt hatte, sonst bringe ich einmal raus.
Okay, gut. Gleiche Leseübung kommt dann gleich nochmal mit den Sachen. So,
das heißt, da wird es jetzt lustig für ihn,
weil er eben sagt, hier passiert jetzt so eine Zeitumstellung,
dass ich also was nachkorrigieren muss.
Und das ist eben die Erkenntnis, die man haben muss,
dass man so ein Update an der Stelle mit drin
hat und zumindest so eine Puppe,
diese Zeit entsprechend weiter propagiert hier
So, und das sind dann die entsprechenden kritischen Stellen dabei
mit den Sachen, die wir hier drin haben.
Und da wird entsprechend korrigiert und losgelöst. Ach so,
doch, da ist, da ist jetzt dann das zum Lesen.
Siehst du, meine ich doch, irgendwann ist das so eine Frudie.
Genau. Also diese entsprechenden Verbesserungen hier, die hatte ich
ja eben schon unten an dem anderen Tag jetzt eben erklärt.
Gut. Da oben muss man ihm aufpassen,
dass diese entsprechenden Situationen nicht haben möchte. So,
die entsprechenden weiteren Dinge zum Multi-Casting und den anderen Sachen,
die wir da jetzt dann drin haben, wenn wir das mal angucken. Hier könnte man auch,
ob mit irgendwelchen Datenbankbeispielen, da steckt noch eine ganze Menge zu drin,
was da drin vorkommt und welche Aspekte wichtig sind und was ein vollständiger Mutti-Cast ist und so weiter,
das kann man sich alles angucken und dann werden wir beim nächsten Mal,
wo gehellweit weg sind, welche mal zwei,
drei Kurzübersicht geben, dass wir auf diesen Lamper-Zeitstempel eingehen,
der auch nochmal dadurch ergibt und die entsprechenden Kausalitätsaspekte,
die da drin stecken.
Und dass wir dann hier darauf achten,
wo inkonsistente Schnitte oder konsistente Schnitte eben drin sind und wir aufpassen müssen,
was da genau passiert oder warum dessen so oder so sei,
das kann man da sich entsprechend angucken und ansehen.
Gut, und darüber wird es dann so ein bisschen gehen beim nächsten Mal.
Und dann werden wir uns den Anfang der Peternetze stürzen.
Das heißt, für euch geht der Lesestoff eben,
der da jetzt drin steckt für diese Woche.
Und schaut euch das an,
weil auch da sind so zwei, drei Rundprinzipien drin,
da sind nicht allzu viele Schwierigkeiten drin in dem Stoff.
Und damit ihr gut mitkommt, sollt ihr einfach
das schon mal angeguckt haben,
wie gesagt
So, danach, in der nächsten Woche werden wir dann,
das Skript habt ihr ja auch als PDF beziehungsweise ausgedruckt.
Habt ihr die Möglichkeit sozusagen, euch diese Definition vorher anzugucken?
Und gerade die Definition über das, wie ist das Netz definiert,
was da drin und wie schaltet es oder wie man es aktiviert und
die schaltet es und wie sind die Eigenschaften darauf definiert?
Das wäre klasse, wenn ich das vorher angeguckt habe,
damit ihr hier den Ausführungen folgen könnt und euch nicht mit dem Buchstabensalat auseinandersetzen müsst,
den ich dann im Schnellverfahren an die Wand werfe.
Ich weiß, dass es immer eine ganze Menge Sachen sind,
aber bitte schaut das vorher an.
So, dann bis Donnerstag
, hoffentlich