Tag. Beim letzten Mal hatten wir uns mit Prozessalgebra beschäftigt.
Das war ein Ansatz, um Prozesse zu beschreiben,
auf allgebranchem Wege. Das heißt, mit Hilfe einer Struktur,
die nur zwei Operatoren bislang besitzt, für den Fall der BPA.
Und diese beiden Operatoren sind plus und mal.
Und wir wollen so ähnlich wie in normalen,
allgebranischen Strukturen damit rechnen können. Der Unterschied ist jetzt,
dass plus nicht Addition bedeutet, sondern plus bedeutet Auswahl.
Und mal bedeutet auch nicht Multiplikation,
sondern sequenzielle Ausführung
Und das Zweite, was wir im Hintergrund haben,
wenn wir rechnen, Formen wie Therme ja um.
Beispielsweise, indem wir sagen, 2 plus 5 ist gleich 7.
Das ist dann eine Gleichung, die für die reellen Zahlen beispielsweise gilt.
Für uns ist jetzt die Gleichheit auf Prozessen naheliegender Weise die Verhaltensgleichheit.
Die Bi-Simulation. Und wir wollen jetzt schauen,
wie verhält sich Bi-Simulation zur algebraischen Struktur von BPA.
Wie verträglich ist es damit? Und dafür sind wir
beim letzten Mal ungefähr an den Punkt gekommen,
dass wir gesehen haben,
Bi-Simulation ist ja
eine Äquivalenzrelation
Also etwas, was reflexiv, symmetrisch transitiv ist, ein verallgemeinertes Gleichheitszeichen.
Nur das reicht uns für unsere Zwecke gar nicht.
Wir brauchen mehr, denn wir wollen ja kompositional argumentieren mit
unseren Prozessalgebranchen Thermen. Kompositional zu argumentieren bedeutet,
wir gehen mal davon aus, wir haben ein System,
das wird durch eine Auswahl von zwei Substrukturen, S&T beschrieben.
Ich habe also den Therm S plus T. Und
nun möchte ich hier eine Substitution vornehmen,
ich möchte S ersetzen durch etwas,
was ich als Äquivalent erachte
Ich habe also ein zweites Subsystem-S-Strich, dieses Subsystem-S-Strich ist gemäß B-Simulation ununterscheidbar.
Also wir nehmen mal an, es gilt,
es ist B-Simulat zu Es-Strich. Und nun möchten wir,
dass wir einfach es durch Es-Strich ersetzen können. Das heißt,
wir wollen, wenn es B-Simulat zuerst Strich ist,
das dann auch gilt,
dass die Auswahl von S von Tee wiederum Bisimilat ist zur Auswahl von S-Strich und Tee.
Was nichts weiter bedeutet, als dass ich es durch S-Strich ersetze,
ohne dass ich das am Verhalten bemerken könnte,
wenn ich schon
das Verhalten von Essen und Es-Strich
nicht auseinanderhalten kann
So, dafür gibt es in der Algebra das Konzept der Kongruenz,
was die Verträglichkeit der Äquivalenz mit den Operationen fordert.
In diesem Beispiel heißt das in nichts weiter,
als dass unsere B-Simulation verträglich ist mit der Addition.
Ich darf das auch im Kontext der Addition verwenden und Gleiches,
bleibt er noch in einem größeren Kontext gleich.
Allgemein ist eine Kongruenz, eine Äquivalenzrelation,
auf eine Menge X, die noch eine Zusatzeigenschaft hat,
nämlich sie erfüllt für alle XY,
X-Strich Y und alle Operatoren,
die es gibt,
auf diese Algebraischen Struktur
Die Eigenschaft, wenn ich weiß,
X ist Äquivalent zu X-Strich, Y ist Äquivalent zu Y-Strich,
dass diese Äquivalenz erhalten bleibt unter Anwendung des Operators F,
das heißt F von X und Y.
Es ist immer noch Äquivalent zu F von X-Strich und Y-Strich.
Äquivalente Argumente führen dazu, dass auch das Bild der Operatoren
äquivalent ist. Das überträgt sich also, diese Äquivalenz auch,
wenn ich hier alle Operatoren einmal angewendet habe.
Und für unsere BPA haben wir zwei spezielle Operatoren,
also für F können wir hier Plus und Mal einsetzen
Und das können wir, weil es nur zwei Stück sind, auch explizit schreiben.
Wir wollen also haben, wenn ich schon weiß,
dass S-B-Similar zu S-Strich ist und T-B-Similar zu T-Strich,
dann möchte ich auch, dass deren Summenbi-Similar sind.
Also ich möchte, dass S-Plus-T-B-Similar zu S-Strich und T-Strich ist.
Und ich möchte, dass ihr Produkt S-Mal-T-B-Similar zum Produkt
S-Strich-Mal-T-Strich ist. Und wenn wir gucken,
was hat das mit dem Beispiel von eben zu tun,
dann sehen wir, eben hatten wir einen Spezialfall.
Da hatten wir nämlich den Spezialfall,
S-B-Similar zu S-Strich
Aber beim Beispiel von eben kam kein T-Strich vor.
Das ist aber nicht weiter schlimm.
Denn wir wissen ja, Bisimulation ist eine Äquivalenz.
Also gilt erst recht, Tee ist B-Simulat zu Tee selbst.
Ich kann also in diesem Beispiel auch T-Strich-Gleich-Tee setzen.
Und dann steht dort die Summe von S und Tee
ist B-Simulat zur Summe von S-Strich und Tee.
Also genau eine Instanz dieses Schemas ist unser Beispiel von ihm.
Gut, und ähnlich für Produkte, die dann Sequenzen beschreiben
Und was wir jetzt haben, ist tatsächlich die wünschenswerte Eigenschaft.
B-Simulation ist tatsächlich eine Kongruenz. Diese Eigenschaft gilt in BPA.
Das liegt daran, dass das Transitionskalkül für die Regeln,
wann welche Ableitung möglich sind,
eine sehr spezielle strukturell operationale Form hat, die wir Panz-Normalform nennen.
Und für diese gilt immer hier eine Kongruenzeigenschaft.
Gut, was können wir damit jetzt machen
Wir wollen damit jetzt rechnen können. Wir wollen also ähnlich,
wie wir das gewohnt sind,
in den reellen Zahlen oder in der linearen Algebra oder in der Bullschen Algebra
mithilfe von Gleichung oder eigentlich Aktionenschemata, Gleichungsumformung machen.
Wir möchten also rechnen können und zwar so rechnen können,
dass wir B-Simulationen nicht immer wieder am Prozess gaben überprüfen müssen.
Denn das war die Ausgangsmotivation für uns, das zu wollen.
Es ist einfach zu aufwendig für einen größeren Prozessthermen,
den im Zweifelsfall exponentiell größeren Prozess Graphen aufzustellen.
Wir werden später auch sehen, es gibt auch das Ganze
für unendliche Prozessgraphen. Bislang haben wir das noch nicht,
aber wir werden im Fortschrift der Veranstaltung ein Operator bekommen,
der auch unendlich große Prozessgraphen konstruiert.
Und bei dem wird das Verfahren ja gar nicht mehr gehen,
dort die Simulation zu zeigen.
Deswegen wollen wir nicht mehr die Prozessgraphen erstellen,
um die Bi-Simulation zu konstruieren,
sondern wir wollen stattdessen lieber
einen Gleichungskalkül aufstellen
Und wir wollen mit diesem Gleichungskalkül auf den Thermen,
die ja immer endlich sein müssen, Therme sind immer endliche Darstellung.
Bei denen wollen wir jetzt mit elementaren Umformungen operieren,
um jetzt indirekt die Bisimulation nachzuweisen. Und da gibt es jetzt Ableitungsregeln,
die wir haben und die Endableitung werden immer die Form haben,
x gleich y. Also alle Aussagen, die wir in unserem Kalkül treffen können,
haben die Form ein Therm X, ist gleich ein Therm Y.
Und dann sollen das natürlich wahre Aussagen rein
Was man zum Beispiel überhaupt nicht aussagen kann, ist,
ob zwei Therme ungleich sind. Das kann ich auf diesem Wege nicht nachweisen.
Ich kann immer nur die Gleichheit zwei Thermen nachweisen.
Und dann wollen wir, wie man das so kennt,
für Gruppenkörper etc., einfach Umformungsregeln anwenden und dann nachweisen,
dass zwei vorgegebene Therme gleich sind.
Und das wollen wir dann wieder rückwärts schließen,
wenn es zwei Therme gleich sind, also x gleich y,
dann wollen wir daraus immer Schluss folgern können,
dass sie dann auch b-similar sind.
Das heißt, dieses Gleichheitszeichen wird jetzt für uns die Rechen
Bezeichnung sein und wir interpretieren das gleich jetzt als Verhaltensgleichheit,
also durch B-Simulation.
Und in einem Kalkül, wenn man da rechnen will,
jeder Gleichungskalkül hat eine gewisse Grundstruktur, die sich nie verändert.
Man spezifiziert zuerst, dass ein Gleichungskalkül um eine Gleichheitsrelation
ja immer eine Äquivalenz beschreiben muss. Und deswegen sagt man,
okay, für einen beliebigen Therm kann ich sofort beweisen,
dass Tee gleich Tee ist.
Das ist also ein Beweis,
der in einem Schritt erledigt ist
Dann die zweite Eigenschaft, kennzeichnend Gleichheit als symmetrische Relation. Ich kann,
wenn ich schon weiß, dass es gleich Tee ist,
in einem weiteren Beweis Schrittschluss folgern, das Tee gleich Ess ist.
Ich darf also die Beziehung umdrehen, das ist wichtig,
weil ja dieses Rechnen etwas stupides, mechanisches ist,
also im Zweifelsfall auf dem Rechner läuft und dem muss das sehr beigebracht werden.
Das war das Gleichheitszeichnung, vertauschen darf die Seiten.
Das dritte beschreibt dann die Eigenschaft
vongleich transitiv zu sein
Wenn ich zwei Beweise habe, der erste Beweis zeigt mir,
dass es gleich Tee ist.
Der zweite Beweis, der zeigt mir,
dass Tee gleich U ist, dann darf ich das verketten.
Ich weiß ja, er ist gleich Tee, gleich U.
Also kann ich die Enden dieser Gleichungskette nehmen und stelle fest,
in einem Beweisschritt, dass S gleich U sein muss.
Das kennzeichnet jetzt erstmal in unserem Kalkül, das sind die Regeln,
mit denen ich damit operieren kann, dass ich eine Äquivalenz habe.
Und das Ganze wird jetzt erweitert zu einer Kongruenz
Mit der Kontextregel hier schon mal für die beiden Operatoren plus und mal,
mit denen ich jetzt umgehen will, spezialisiert.
Das kann man auch im Allgemeinfall für jeden Operator machen.
Und da haben wir genau das,
was für Konkurrenz schon formuliert war,
wenn es gleich erst Strich ist und Tee gleich T-Strich,
dann darf ich auch Schluss folgern in einem Schritt das S plus T gleich S-Strich plus T-Strich ist.
Und analog darf ich auch Schluss folgern,
dass S mal T gleich S-Strich mal T-Strich ist.
Also, ich darf Gleichung addieren und ich darf auch Gleichung multiplizieren.
Linke Seite mit linker Seite und rechte Seite
mit Rechter seid
Das ist erlaubt. Was ich dann noch machen darf,
ist folgendes, ich werde gleich Aktionen haben,
in denen kommen Variablen vor, XYZ zum Beispiel.
Und da ist es mir erlaubt, diese Variablen XYZ durch einen beliebigen Therm zu ersetzen.
Und dann gilt die Gleichheitsbeziehung immer noch. Das heißt,
wenn ich eine beliebige Substitution habe,
die Variablen durch Therme ersetzt, durch BPA-Therme,
dann weiß ich, wenn S gleich T eine Aktion ist,
dann gilt das auch für jede beliebige Substitution,
dass das,
was da rauskommt,
Sigma von S
gleich Sigma von Tee ist
Das heißt, Einsetzen von Variablen ändert an der Gleichheit
auch nichts. Und jetzt kommt noch das,
was diesen BPA-Kalkül so charakteristisch macht, nämlich seine Aktionen.
Bislang ist noch nichts Besonderes passiert. Es ist also noch gar nicht klar,
ob ich gerade einen Körper definieren will oder BPA,
das kann man bislang noch nicht sehen.
Er ist die Aktione, machen das Ganze jetzt zu dem,
was es ist. Und die Aktionen,
die ich habe, fünf Stück an der Zahl,
die ersten drei beschreiben erstmal Eigenschaften von Plus
Die erste Eigenschaft A1, das erste Axium sagt,
plus ist ein komutativer Operator. X plus Y ist gleich Y plus X.
Was inhaltlich bedeutet, dass eine Auswahl keine links-nach-rechts-Reihenfolge hat.
Die Auswahl zwischen X und Y und Y und X ist nicht zu unterscheiden.
So gesehen gibt es nicht den linken und den rechten Prozess.
Das ist nur die syntaktische Repräsentation davon. Der zweite,
ja die zweite Gleichung beschreibt, dass plus assoziativ ist.
Es ist also egal, wie ich eine Auswahl klammere,
Auch das ist eigentlich eine typische Regel, wie man sie gern hat.
Also eigentlich kann ich in Summen die Klammern jetzt weglassen.
Das ist völlig unerheblich, wie rumgeklammert ist.
Das ist eine Folge dieses Axiums. Das heißt,
eine nützliche Klammerungssparregel ist oftmals, dass man sagen kann,
naja, bei Ensumanten ist die Klammerung irrelevant, ich lasse sie komplett weg.
Und das ist intuitiv auch sehr sinnvoll,
denn ob ich eine Auswahl habe zwischen einem Z und einem Therm,
der zufällig X plus Y ist,
oder die Auswahl zwischen X und dann nochmal zwischen Y und Z,
das ist eigentlich nur die Auswahl zwischen diesen drei Dingen
XY und
Das dritte Aktion beschreibt jetzt, dass eine nicht echte Auswahl gar keine ist.
Also wenn ich die Auswahl zwischen X und X habe,
das ist keine Auswahl. Und deswegen gilt Idem Potenz,
X plus X ist gleich X. Gut, also mit Plus
rechnet es sich ungefähr so wie mit dem Vereinigungszeichen in der Menge Algebar.
Das ist auch kommunitativ assoziativ wie dem Potent. Und dann
haben wir das vierte Aktionen, das vierte Aktionen ist das Rechtsdistributivgesetz.
Distributivität von mal über Plus. Da sieht man,
ich darf ausklammern, aber nur, wenn ich von rechts aus klammere.
Wir hatten mal ein Beispiel, da haben wir gesehen,
wenn ich das von links mache, geht das in die Hose,
dann ist es mich nicht mehr bissimilar, was da ist.
Und da wir eine mit dem Gleichheit ja Bissimilarität beschreiben wollen,
haben wir in dieser Aktionenmenge nur das eine Distributivgesetz.
Dieses Distributivgesetz ist aber gerade sinnvoll, denn wenn ich mich entscheiden muss,
wie im linken Therm beschrieben, erst zwischen X und Y,
und danach kommt auf jeden Fall Z,
dann ist das nichts anderes, als würde ich mich erst entscheiden,
ob ich X und Down Set oder Y und Down
Set mache
Da ist keine Information, die da wegfällt oder hinzukommt.
Und das fünfte Aktionen ist dann verhältnismäßig langweilig,
wenn ich eine Sequenz habe, ist die Klammerung irrelevant.
Also ich habe Assoziativität bezüglich der Multiplikation. Auch da ist
die Klammerung in ein Produkt irrelevant. Was ich nicht habe,
ist Kommutativität. Das würde ja gerade der Sequenz widersprechen.
Bei einer Sequenz ist natürlich die Reihenfolge relevant.
Da darf ich nicht umdrehen. Das sind unsere fünf Basisaktionen,
die können wir benutzen, um zu zeigen,
dass zwei Therme gleich sind.
Das ist jetzt erstmal nichts weiter
als ein mathematisches Spiel
Wir müssen dann irgendwann nochmal zeigen, dass das ganz sinnvoll ist und dass
dieses Gleichheitszeichen tatsächlich etwas mit der B-Simulation zu tun hat.
Bislang können wir nur Therme schubsen und umschreiben.
Gucken wir uns das mal an ein paar Beispielen an.
Hier zum Beispiel, dass Aktion 4 ist ein Aktionenschema,
hat nämlich drei Variablen XYZ. Und da können wir jetzt
eine Variablen-Substitution vornehmen. Wir können zum Beispiel uns wünschen,
dass X substituiert wird durch den Therm A mal B,
Y durch A und Z durch den Therm C plus
Wenn wir das machen, dann setze ich, so wie man das erwartet,
an alle Stellen entsprechendes ein und bekomme den Therm.
X ist jetzt AB, Y ist A, also A,
B, plus A, mal C plus C für Z.
Und das ist gleich A, B mal C plus C plus A mal C plus C.
Also ausgeklammert auf der rechten Seite. Das heißt,
ich habe eigentlich nicht einen Therm, der hier gleich und ist,
sondern ich habe eigentlich hier dieses Aktionsschema, da ich nicht sagen will,
ich habe unendlich viele Aktionen, sage ich,
ich habe dieses Schema und dieses Schema erlaube ich mit der Substitution zu instanzieren.
Ich könnte auch sagen, wenn mich das nicht stört,
dass ich unendlich viele Aktionen habe, dann könnte ich auch sagen,
naja gut, alle Therme, die ich hier einsetzen kann.
Für ein Werkzeug auf dem Computer ist es natürlich praktischer zu sagen,
es gibt nur endlich viele Aktionen und Substitutionen ist ein expliziter Vorgang.
Das Nächste ist, wie rechne ich jetzt mit den Äquivalenzregeln?
Da rechne ich tatsächlich so, wie man das schon immer gemacht hat.
Diese drei Regeln, die mir Äquivalenz beschreiben,
da kann ich zum Beispiel Konsensitivität genauso machen, wie ich das immer mache.
Wenn ich solche Gleichungsketten schreibe,
ich habe also eine Gleichung in der obersten Zeile X plus Y plus Y,
ist gleich X plus Y,
plus Y. Das ist eine Instanz des Axiums,
in dem ich einfach sage, plus ist die Assoziative,
deswegen darf ich die Klammern verschieben.
Habe ich nichts weitergemacht, als umzuklammern. Und in der
zweiten Zeile steht eine Instanz des Idem-Potenzgesetzes plus Kontext.
Denn hier wird ja angewendet, dass der Teilausdruck Y
plus Y Nach dem dritten Aktion gleich Y ist.
Und Kontext sagt, ich darf das in einem beliebigen Kontext auch jetzt umformen.
Deswegen bleibt das X-Plus, was daneben steht,
einfach erhalten auf beiden Seiten. Das heißt, diese beiden Gleichungen,
davon kann man sich schnell überzeugen, die gelten.
Ich nehme jetzt an, dafür kann ich auch tatsächlich den
formalen Beweis aufschreiben. Und die dritte Eigenschaft von Äquivalenz,
nämlich Transitivität, sagt jetzt, okay,
ich darf diesen Beweis zusammenziehen und darf linke Seite gleich rechte Seite annehmen,
also X plus Y geklammert plus Y ist direkt X plus
Solche Umformungen darf ich machen. Und entsprechend auch Dinge für Semitrie und Reflexivität. Das heißt,
es macht eigentlich, es ist nicht schlimm,
wenn wir jetzt Gleichungsketten von links nach rechts schreiben,
eine Kette, die so durchgängig wäre,
mit meinetwegen fünf Gleichheitszeichen dazwischen, das müssten wir uns vorstellen,
als wenn da fünf Gleichheitszeichen sind,
als Kette von immer einzelnen Paaren von gleichen Thermen,
die ich denn mithilfe von,
ich glaube,
fünfmal Anwendung von Äquivalenz zu einem Endergebnis
ganz links und ganz rechts zusammenbastel
Die Kontextregel war ja, wenn wir zwei gleiche Therme haben,
S&S-Strich und nochmal zwei gleiche Therme, T- und T-Strich,
dann darf ich da auch munter diese Gleichung addieren, beziehungsweise multiplizieren.
Wenn ich also beispielsweise schon weiß,
dass X plus das X gleich X ist,
das kann ich direkt folgern,
das ist die Reflexivität und Y plus Y ist auch gleich Y,
das ist eine Aktion, das heißt,
dafür gibt es Beweise der Länge Null jeweils,
dann darf ich Folgendes machen,
ich darf
diese beiden Gleichungen addieren
Und zwar die linken Seiten und die rechten Seiten.
Also ich darf daraus Schluss fallen,
X ist X plus Y plus Y ist gleich X plus Y.
Ja, das sind so Varianten, wie man damit rechnen kann.
Gleichung addieren, gib mir jetzt die Kontext drehen.
Und jetzt hatte ich gesagt, bislang ist das nur ein frommer Wunsch,
dass das irgendwie was mit Verhaltensbisimilarität zu tun hat.
Das müssen wir jetzt eigentlich erst nochmal überprüfen, ob dem tatsächlich so ist.
Und da sind zwei Dinge wichtig, nämlich Korrektheit und Vollständigkeit.
Das kennt man auch aus der Logik für Hilbert,
Kalküle beispielsweise ist Korrektheit zu zeigen und Vollständigkeit.
Beim logischen Kalkül heißt Korrektheit, wann immer der Kalkül eine
Aussage behauptet, errechnet, dann ist das eine Tautologie.
Und Vollständigkeit bedeutet es, dass jede Tautologie einen Beweis in
diesem Kalkül hat. Für uns bedeutet das jetzt etwas ähnliches.
Wir wollen ja die Relation Bisimilar berechnen. Bei uns
geht es um eine Relation, die wir charakterisieren wollen.
Und diese binäre Relation ist die B-Simulation
Und jetzt wollen wir beweisen, dass sie genau bissimilar sind,
wenn sie äquivalent in diesem Kalkül sind.
Das heißt, dass diese beiden Beschreibungsarten eigentlich zusammenfallen,
nur für manche Dinge ist jeweils die eine praktischer als die andere.
Bissimilarität ist das, was wir wollen. Und Äquivalenz in
diesem Kalkül ist das, was wir gut rechnen können.
Vorausgesetztes fällt tatsächlich zusammen. Um das nachzuweisen,
werden zwei Eigenschaften jetzt Rechtheit und Vollständigkeit,
nämlich erstmal formuliert und getrennt bewiesen.
Das ist einfach nur,
weil es praktischer ist,
beide Konzepte zu trennen
Denn in der Logik ist es auch so, man kriegt nicht immer beides.
Hier haben wir Glück, hier kriegen wir beides.
Aber es gibt ganz viele Kalküle, die sind,
in Anführungszeichen, nur korrekt, aber nicht vollständig.
Und deswegen gibt es diese beiden Begriffe. Und Korrektheit ist
der wichtige Begriff Schletz hin. Denn wenn der Rechner irgendwas behauptet,
dann sollte das auch der Wahrheit entsprechen. Das heißt,
wenn behauptet wird, X gleich Y, also Bisimilarität,
wird angezeigt vom Rechner,
dann können wir ja nur was mit diesem Algorithmus anfangen,
wenn das auch immer der Wahrheit entspricht
Dass es vielleicht zwei Therme, X und Y gibt,
die tatsächlich b-similar sind bezüglich der Prozessgrafen.
Aber mein Kalkül kann das nicht nachrechnen. Damit könnte ich vielleicht leben.
Aber dass er falsche Dinge behauptet, damit kann ich nicht leben.
Wir haben jetzt das Glück für den einfachen Fall,
haben wir auf jeden Fall beide Eigenschaften, wird sich noch rausstellen.
Fangen wir mal mit dem einfachen an, Korrektheit. Der BPA-Kakül,
den wollen wir jetzt korrekt nennen oder im englischen Sound.
Wenn gilt, dass für alle Therme,
von denen ich nachweisen kann, dass es gleich T ist,
Dass dann auch gilt, dass sie zueinander biesen lassen.
Das heißt, wenn ich mechanisch Gleichheit nachweisen kann, dann impliziert das die Bisimilarität.
Es wird also nur etwas Richtiges behauptet vom Kalkül.
Und die zweite Eigenschaft, Vollständigkeit oder Completeness, bedeutet,
dass der BPA-Kakül, den wollen wir dann vollständig nennen,
wenn für alle B-Similaren Therme ST auch gilt,
dass ich im Kalkül die Qualenz nachweisen kann.
Dass also im Kalkül S
gleich Tee folgt
Und beides wollen wir jetzt getrennt nachweisen, aus praktischen Gründen,
die Beweistechniken für Korrektheit unterscheiden sich sehr von den Beweistechniken für Vollständigkeit.
Das Einfachere von diesen beiden Dingen ist immer Korrektheit.
Das liegt schlichtweg daran, ich muss ja nur zeigen,
wenn der Kalkül etwas behauptet, dass das denn auch Bi-Simularität bedeutet.
Nun ist es aber so, wenn der Kalkül etwas behauptet,
dann habe ich ja immer einen Beweis.
Der muss ja da sein. Dann kann ich mir
den Beweis angucken
Und jetzt macht man letztendlich einen Induktionsbeweis, der sagt,
naja, wenn jeder einzelne Schritt korrekt ist,
dann ist auch die gesamte Beweisbehauptung korrekt.
Jeder einzelne Schritt behauptet nur, wie simulare Therme sind da.
Und wenn ich jetzt mir jede Beweisregel einzeln anschaue und stelle fest,
die behauptet tatsächlich etwas Wahres, das heißt,
jeder Beweisschritt nimmt zwei B-Similare Dinge und macht daraus irgendetwas,
was B-Similar ist, dann haben wir schon Korrektheit beweisen können.
Genau so funktioniert das jetzt.
Der Satz lautet der BPA-Kalkül ist korrekt
Und wir machen jetzt einen Beweis, der geht über
die Beweisstruktur, mit dem ich Gleichheit nachweisen kann.
Naja, und die Beweise, die ganz einfach sind,
sind die Aktionen. Das sind Beweise der Länge Null.
Also muss ich zeigen, die Beweise, Fraktionen sind korrekt.
Und zweitens muss ich zeigen, dass alle Regeln,
die schon einen Beweis nehmen oder mehrere davon, mehrere Teilbeweise,
dass die dann tatsächlich etwas überführen, was wieder korrekt ist.
Das heißt, wenn das schon gilt,
dass meine Induktionsannahme, die Teilbeweise behaupten, was Korrektes,
dass dann auch die Schlussfolgerung in dem letzten Beweis schritt,
dass auch die dann korrekt ist.
So, wenn man erstens hat,
das kann man unter dem Spezialfall der Substitution erledigen,
damit man mich feststellen kann, bei den Aktionen,
die muss ich ja eh nochmal anpacken,
wenn ich die Substitutionsregel habe.
Da sage ich mir mich, in einer Aktion darf ich
Beliebiges für die Variablen einsetzen.
Das heißt, das kriegen wir an der Stelle sowieso nochmal,
müssen also eigentlich gar nichts tun.
Und den Fall, zweitens, den machen wir jetzt per
Fallunterscheidung über alle möglichen Beweisschritte,
die es da
so geben kann
So, das erste, was einen Beweis nimmt und
einen neuen Beweis liefert, ist die Substitution.
Wir nehmen also an, wir haben schon mal es gleich
Tee bewiesen. Und wir haben eine Substitution Sigma,
die ersetzt alle Variablen in S und T durch Prozesstherme.
Und was wir jetzt zu zeigen haben, ist,
dass dann Sigma von S-B-Similar zu Sigma von Tee ist.
Das ist unsere Beweisaufgabe. Wir müssen B-Similarität für diesen Fall
Okay, da kann man jetzt einzeln für jedes Aktionen durchgehen,
dass das etwas Sinnvolles ist. Das erste Aktion sagt ja,
Assoziativität von Plus, dass das vernünftig ist,
wenn ich das durch beliebiges substituiere und so weiter.
Das wollen wir jetzt hier nicht machen. Das haben wir
da schon uns klargemacht, dass die Aktionen sinnvoll sind,
egal was ich für XY-Zepte einsetze.
Wir können das aber informell uns mal nochmal hier vor Augen führen,
wenn man das folgendermaßen machen, wir gehen mal durch.
Das erste Aktion sagt ja,
S und T und T und
Das ist eine Auswahl zwischen S&T. In welcher Reihenfeuer ich das
aufschreibe? Egal. Zweite Saktion, irgendwie ansortierte Auswahlen von
S-T&U sind wieder nur eine Auswahl von diesen drei Dingen,
also eigentlich von der Menge.
Auch wenn ich das in der Reihenfolge bringe,
eigentlich beschreibe ich nur eine Auswahl auf einer Menge bei Sumanten.
Naja, und dass die Auswahl zwischen T&T keine ist,
sondern nur Tee bedeutet, ist uns auch klar.
So, das ist egal,
was ich da substituiere
Ein bisschen spannender ist es jetzt schon mal,
noch mal nachzugucken, dass tatsächlich das vierte Aktionen der Rechtsdistributivität gilt.
Ja, dass ich also S-Plus T mal U ausklammern darf
zuerst mal U plus T mal U.
Ja, da können wir uns so ein Schema aufmalen,
wie ungefähr die Prozessgrafen aussehen. Also wenn S und T und U
tatsächlich atomare Aktionen wären, dann sieht das so aus.
Ja, dann habe ich auf der linken Seite die Möglichkeit,
S oder T auszuführen, kommen dann zu U.
Und auf der rechten Seite habe ich die Möglichkeit,
S oder T auszuführen
Wir kommen da im Prinzip jeweils zu dem eigenen U des Terms,
nur das kann ich nicht mehr unterscheiden. Ja,
ich könnte auch schreiben, mit ES komme ich zum U,
mit Tee komme ich zum anderen U, aber das ist der gleiche Knoten.
Das heißt, in der grafischen Darstellung fasse ich die vielleicht nicht zusammen,
aber in der mathematischen gibt es da keinen Unterschied.
Und dann sieht man eben auch,
wenn der initiale Knoten anders beschriftet ist,
wenn ich vergesse, was in den Knoten drinsteht,
dann haben sie exakt die gleiche Struktur.
An den Kanten steht das Gleiche drin,
Terminationsverhalten ist gleich,
also ist das B-Similar
Und wenn ich das jetzt für einen beliebigen Therm esse und
für einen beliebigen Therm Tee und U nachweisen will,
dann komme ich natürlich mit einem Therm S,
nicht mit einer Aktion S zu U.
Da muss ich jetzt einen komplizierteren Beweis führen.
Da komme ich natürlich in einigen Schritten, nämlich alle Schritte,
die S so ausführen kann, irgendwann zum U-Therm.
Und genauso für Tee. Und ich musste dann immer zeigen,
dass das auf der rechten Seite es auch geht.
Das heißt, dieses Bildchen ist nur korrekt für atomare Therme
S-T und U. Im Allgemeinenfall sind natürlich diese Pfeile,
an denen S und T und U dran steht,
ganz,
ganz viele
Die durch ganz viele Zwischenzustände gehen. Ja,
aber wenn man sich das erst mal für atomare Therme klargemacht hat,
dann kann man das auch mit ein bisschen Aufwand beweisen,
dass das für beliebige Therme ST&U,
also für eine beliebige Substitution auch gelten muss.
Und was kommt dann noch? Das letzte Aktion A5,
das ist die Aussage, dass ich in Sequenzen beliebig klammern kann.
Naja, und das ist eben, sind alles Sequenzen von Aktionen.
Beim Linken ist es halt so,
dass ST in Klammern erst kommt und dann, uh,
und beim anderen halt erst S und dann Thema
Es ist halt eine sequenzielle Ausführung von S-T und U. So,
da müssen wir noch gucken, was haben wir noch?
Wir haben Äquivalenzregeln im Angebot, die gelten aber,
denn wir wissen ja, B-Simulation ist eine Äquivalenz.
Das heißt, alles, was ich da machen kann,
ist ja Reflexivität behaupten, ist in Ordnung, Symmetrie,
Transitivität, wissen wir alles schon.
Und Kontextregel, da kann ich auch nichts falsch machen,
da hat B-Simulation ja eine Konkurrenz ist.
Das heißt, die Beweisregeln machen an diesen Stellen nichts Schlimmes,
denn das ist alles schon eine Eigenschaft,
die B-Simulation selbst hat
Gut. Damit sind wir eigentlich fertig für Korrektheit.
Jeder Beweisschritt nimmt eine, wenn er eine korrekte Behauptung nimmt,
führt er wieder zu einer korrekten Behauptung.
Das heißt, Gleichheit bedeutet tatsächlich immer dann,
wenn ich sie nachweisen kann, auch Bisimilarität.
Kommen wir zur Umkehrung. Der andere Satz, der gilt auch.
BPA-Kalkül ist vollständig. Da ist ja zu zeigen,
dass wann immer ich zwei Therme S und T habe,
die Bisimilar sind, dass dann da auch die Äquivalenz folgt.
Das heißt, es muss einen Beweis geben
Und da habe ich jetzt ein Problem.
Denn ich weiß ja nicht, wie könnte dieser Beweis aussehen?
Es gibt unendlich viele Beweise für die Tatsache, dass es
gleich Tee ist. Die haben alle eine unterschiedliche Länge.
Und ich weiß, ich kann ja nicht irgendwie sagen,
ich gucke mir nur alle Beweise an, bis zur Länge, 1.000.
Vielleicht hat der kürzeste Beweis gerade die Länge 1.001. So ist es relativ schwierig,
wenn ich ein korrektes Verfahren habe,
dann kann ich natürlich sagen, okay,
wenn ich einen Beweis finde in den ersten 1.000 Schritten,
dann darf ich natürlich aufhören
Der kürzeste Beweis tut es. Wenn ich aber unter den
ersten tausend kürzesten beweisen, keinen finde, also Beweiskandidaten,
keiner weiß das nach, was ich gern hätte.
Was habe ich dann? Nix. Das heißt,
es muss irgendwie ein Verfahren geben, bei dem man trotzdem sagen kann,
in diesem Fall scheint es ja möglich zu sein,
dass man sagen kann, Gleichheit kann ich geschickter nachweisen.
Das heißt, es gibt zwei Varianten, was jetzt passieren
kann im Beweis. Entweder ich weiß so etwas wie,
wenn ich diese Therme S und Tee habe,
dann kann es, wenn es überhaupt einen Beweis gibt,
höchstens einen Beweis geben, der diese und jene Länge hat.
Das heißt, ich könnte vielleicht ausrechnen, es gibt eine
Oberschranke innerhalb dessen, sich einen Beweis auffinden lassen muss.
Gut, dann hätte ich einen Verfahren, dann kann ich das immer nachweisen.
Das wäre eine Entscheidungsprozedur. Probiere alle Beweise bis zu einer
berechenbaren Länge aus und dann ist gut. Dann werde ich
sie immer finden, den Beweis, dass wir eine Variante.
Oder es gibt jetzt einen anderen Trick, ich kann das nachweisen,
indem ich sage, okay, gib mir mal S,
gib mir mal Tee, Ich gebe dir jetzt,
wenn das tatsächlich bissimilar ist, ich gebe dir den Beweis.
Das heißt, der Nachweis der Vollständigkeit, den können wir auch dadurch erbringen,
indem wir einen solchen Beweis im Kalkül jetzt konstruieren.
Und das Erstaunliche ist, das geht tatsächlich.
Wir können jetzt zu zwei vorgegebenen Thermen S und Tee,
von denen wir wissen, sie sind bissimilar,
für die können wir tatsächlich einen Beweis immer jetzt konstruieren im folgenden,
werde ich euch zeigen,
wie das geht,
der dann nachweist,
dass die beiden gleich sind
Und wir verwenden dafür eine etwas einfache Relation zunächst.
Das ist eine Hilfsrelation. Gleich mit dem Index AC.
Dieser Index AC steht für Assoziativ und Kommutativ.
Und wir wollen einfach sagen, wir haben zwei Therme,
S und T, die sind AC-Äquivalent.
Wenn ich ihre Äquivalenz nur mit dem Assoziativ-Axium und dem Kommutativ-Aktion
für Plus nachweisen kann.
Das waren die ersten beiden Aktionen
Das heißt, was ich erstmal nur machen will, ist was viel leichteres.
Ich will zeigen, wenn zwei Therme bissimilar sind,
dann möchte ich da gewissermaßen zeigen können,
dass ich das vielleicht hinkriege, einen Beweis, der dann nachweist,
dass S und T als gleich nachweisbar sind für AC.
So, und daraus leite ich dann die Korrektheit, nein,
die Vollständigkeitsbehauptung ab. Wenn ich weniger Aktionen zur Verfügung habe,
und ich will das Gleiche tun, dann kann ich das
natürlich nicht mehr für alle Therme S und T tun.
Ich verzichte hier freiwillig auf drei Aktionen, Also geht das,
dieser Nachweis nur noch für einigere wenige? Wenn ich also nachweisen möchte,
dass Tee gleich Es ist und zwar bezüglich der Äquivalenz AC,
dann mache ich ganz normal einen Beweis im Kalkül für Tee gleich Es,
aber da darf ich nur die Aktion mal eins oder zwei benutzen,
aber nicht A3, A4,
A5. Äquivalenzregeln und Kontextregeln darf ich auch weiterhin benutzen.
Also ich operiere erst mal in einem Subkalkül. Also nur Kommutativität A1.
Und Assoziativität A2 für Plus. Diese beiden Dinge benutze ich
. Und ich benutze das jetzt nicht auf beliebigen Thermen,
sondern nur auf speziellen Thermen, nämlich Normalform.
Und bei diesen Normalformen, da kann ich jetzt was Interessantes machen,
aber erst mal, wie sehen die aus?
Normalformen haben entweder die Form, dass sie so aussehen wie eine Summe.
S1 plus S2 plus plus plus plus bis SN.
Ich habe also Ensumanten, eine endliche Zahl
Und da gibt es zwei Fälle, wie diese somannten aussehen dürfen.
Entweder ein Somant ist eine atomare Aktion oder der Somant beginnt mit
einer atomaren Aktion und wird dann von einem beliebigen Therm gefolgt.
Solche Therme, wenn ich jetzt normal vom Thermen nenne und für
solche Normalformtherme, da will ich jetzt diese AC-Äquivalenz einsetzen.
Zum Beispiel gilt jetzt A plus B mal C.
Das ist ein Therm, der diese Normalform hat
Es besteht aus zwei Semanten. A ist ein Semant,
der nur eine atomare Aktion ist. Und der zweite Semant
beginnt mit einer atomaren Aktion B. Hat also diese Eigenschaft.
Auf der rechten Seite analog BC und A sind auch zwei Semanten.
Beginnen jeweils mit einem Atom. Und dass die beiden gleich sind,
kann ich mit einer Instanz des Kommutativitätsaktiums A1 beweisen.
Das heißt, in AC-Equalenz ist es nachweisbar,
dass die beiden gleich sind
Was kann ich jetzt noch machen? Auch diese beiden Therme
sind in Normalform. Aber ich kann sie nicht als gleich
nachweisen. Die beiden Therme sind gleich. Das ist jetzt
eine Instanz des Distributivgesetzes. Ich muss nur rechts ausklammern,
um vom linken Therm direkt auf den rechten Thermen zu kommen.
Aber dazu bräuchte ich das Distributivgesetz. Das ist das
vierte Aktion, das ich gerade nicht habe.
Bei diesen beiden Thermen kann ich das nicht machen.
Mal abgesehen davon, dass der linke Therm nicht in
Normalform ist
Was kann ich jetzt noch nicht machen? Ich kann zum
Beispiel AB gleich BR. Natürlich kann ich das nicht nachweisen
. Das gilt noch nicht mal in der normalen Equalenz.
Also ich kann nichts nachweisen, erst recht nichts nachweisen,
was noch nicht mal äquivalent war.
Ich kann höchstens weniger nachweisen. So, ich kann das
auf jetzt beliebige Therme anwenden. Spannend wird es aber nur
sein für Therme, die in Normalform sind.
Das sieht man, das linke Beispiel ganz links unten.
Da sind beide Therme in Normalform
Wenn beide Thermen in Normalform sind, dann wird sich erweisen,
dann reicht AC-Äquivalenz aus, um Bisimilarität nachzuweisen. Also für zwei Therme,
S und Tee, die bereits in Normalform sind,
reicht das erste und das zweite Aktionen bereits aus,
um nachzuweisen, dass sie tatsächlich gleich sind.
Für Therme, aber die nicht in Normalform sind,
so wie das obere Beispiel auf der rechten Seite,
da wird es nicht ausreichend sein.
Nur die ersten beiden Aktionen, AC zu haben, um den Nachweis zu führen.
Ja, also obwohl die beiden Therme gleich sind,
wird diese eingeschränkte Kalkül nicht mächtig genug sein, um das nachzuweisen.
Und das dritte Beispiel zeigt nur, dass nichts Schlimmes passiert,
also es wird nichts als gleich nachgewiesen,
was nicht vorher schon gleich war.
Wir kriegen nur weniger, das ist die Aussage.
Gut, was machen wir jetzt? Wir müssen irgendwie ja noch sagen,
okay, was machen wir denn mit Thermen oder Thermpärchen,
S und Tee, bei denen mindestens einer von den beiden nicht in Normalform ist.
Da müssen wir irgendwas tun. Und was wir tun können ist jetzt,
wir nehmen die restlichen Aktionen Aber jetzt in eingeschränkter Form.
Und die eingeschränkte Form ist, wir verwenden sie als Ersetzungsregeln.
Und zwar, Ersetzungsregeln heißt, wir wenden sie nur in
eine Richtung an, nämlich von links nach rechts.
Das heißt, die ersten beiden Aktionen,
die sind jetzt für meine AC-Qualenz, die sind ja immer noch da.
Axium 3, 4 und 5, die werden jetzt eingeschränkt nur noch benutzen dürfen.
Nämlich immer nur in der Instanz von links nach rechts.
Also X plus X
darf ich umformt zu einem
Aber ich darf nicht von rechts nach links argumentieren,
dass X das Gleiche ist wie X plus X. Und
ich darf was Folgendes machen, ich darf rechts ausklammern.
Ja, dann kriege ich zwei Semanten.
Was ich aber nicht machen darf, ist den gemeinsamen Vorfakt,
Nachfaktor Z, den rausziehen, indem ich neue Klammern bilde.
Ich darf also das vierte Aktionen niemals von rechts nach links anwenden.
Und das fünfte Aktionen sagt, okay,
das darf ich auch nur von links nach rechts anwenden,
Das sorgt dafür, dass alle Klammerungen von Produkten maximal nach rechts geklammert werden.
Das heißt, diese Klammerungsstruktur ist ganz schön rechtslastig.
Beim längeren Produkt sammeln sich die schließenden Klammern alle am Ende.
Da habe ich dann bei N Faktoren halt N-schließende Klammern ganz
am Ende, wenn ich diese Regeln anwende.
Was ich mir dadurch definiert habe, ist jetzt ein Ersetzungskalkül,
wo ich jetzt die Regelanwendung als spezielle Instanzen meines Originalkaküls
verwende.
Ich forme also um
Das ist eigentlich auch das, wie man,
sagen wir mal, 80 Prozent seiner Schulzeit ganz gut vorankommt.
Man nimmt eigentlich die Aktionen für elle Zahlen und wendet sie
typischerweise immer nur in eine Richtung an.
Also 80 Prozent der Zeit ist man damit beschäftigt,
da auszuklammern und Faktoren möglichst, Klammer,
befreit zu haben und ein bisschen anzusortieren und die restlichen 10 Prozent,
15 Prozent macht man nochmal ein bisschen Aufräumarbeit und spaltet dann gemeinsame Vorfaktoren ab.
Aber hauptsächliche Beschäftigungstherapie ist ja irgendwie auszuklammern oder ähnliches.
Das heißt, wir sind das eigentlich schon immer gewöhnt,
Gleichung typischerweise so zu lesen,
wie sie da stehen,
also von links nach rechts
Was sie erstmal nicht zwingend ist, in welcher Reihenfolgegleichung aufschreibe
, ist egal. Wir wissen, sie sind symmetrisch.
Hier machen wir das jetzt aber mal ganz bewusst.
Wir schränken uns willkürlich ein und sagen, nur noch in eine Richtung.
So, die erste Konsequenz ist, dadurch kriegen wir im Zweifelsfall nur weniger.
Wenn ich nur in eine Richtung operieren darf,
dann fehlt mir die andere. Das heißt,
im Allgemeinenfall, wenn ich so etwas tue,
gehen mir jetzt gewisse Beweismöglichkeiten durch die Lappen.
Wenn ich das so mache,
dann kann man schon mal sicher sein,
mehr kann ich schon mal nicht beweisen
Im Zweifelsfall kann ich sogar weniger beweisen. Und der Gag an der Sache
wird sein, dass uns für BPA gar nichts entgehen wird.
Das, was ich jetzt noch beweisen kann,
wenn ich mich einschränke, also die dritten, vierten,
fünften Aktionsschemata-Einschränke, dass dann gar keine wirkliche Einschränkung da ist.
Ich kann alles immer noch tun. Das heißt,
es reicht mir, nur die Aktion mal 1 A2 beizubehalten,
aber die anderen weiterhin nur von links nach rechts und nicht mehr
rechts nach links zu verwenden.
Wie kann man das jetzt zeigen? Was passiert da,
wenn ich eigentlich das anwende,
diese Reduktion
Ja, man kann jetzt zeigen, das wollen wir so ein bisschen tun,
wenn ich diese Regeln immer nur von links nach rechts anwende.
Und ich starte mit dem Prozess Therm S,
dann gelange ich nach einer endlichen Anzahl von Schritten immer zu einem
eindeutig festgelegten Prozess Therm T, den ich nicht weiter umformen kann.
Ja, ich schmeiße in dieses Verfahren, in diese drei Regeln,
da schmeiße ich etwas ein, ich darf nur die Regeln drei,
vier und fünf anwenden, auf diese Struktur,
die anderen beiden Aktionen, 1 und 2 gelten weiterhin.
Und dann forme ich um und ich forme um wie ein Irrer,
in irgendeiner Reihenfolge, völlig nicht deterministisch.
Und das Schöne ist, an diesem Satz von Umformus-Regeln,
ich kann da gar nichts falsch machen. Ich forme um,
irgendwann ist Schluss, egal wie ich das gemacht habe,
ich kann vielleicht einen relativ langen Fahrt erwischen.
Ich kann relativ lange Umformen, auf dem anderen Fahrten
wäre es vielleicht schneller gegangen. Aber egal,
welchen Weg ich gehe, wie ich umforme,
ob ich erst die inneren Therme umforme oder in
äußeren Thermen oder einen linken Thermen oder einen rechten Therm,
ist egal,
nach endlicher Zeit höre ich immer auf damit
Kann man länger dauern, mal kürzer sein,
aber es dauert immer nur endlich lang.
Das Verfahren terminiert also. Das ist die erste wichtige Sache.
Die zweite wichtige Sache ist, diese Umformungsschritte führen nie dazu,
dass ich auf eine Variante in Therm T1 bekomme.
Und auf eine andere Möglichkeit,
T2. Sondern es kommt immer nur maximal ein Therm raus.
Wobei ein Therm ist immer zu verstehen als Modulo AC.
Ich habe ja immer noch die Gleichung, Kommutativität und Assoziativität.
Das heißt, es kommt genau ein Therm raus,
stimmt nicht im ganz strengen Sinne
Da können verschiedene Therme rauskommen,
aber die sind alle äquivalent bezüglich Assoziativität und Kommutativität von Plus.
Das heißt, da kommt die gleiche Äquivalenzklasse raus.
Aber das ist ganz praktisch. Also damit haben wir
schon ein nettes Verfahren gewonnen für den Anfangsschritt.
Und das, wie kommt das? Da gibt es
zwei wichtige Eigenschaften. Das Verfahren ist ja nicht determinismisch.
Ich kann an verschiedenen Stellen die Regeln anwenden.
Ich kann manchmal sogar mal auf einem Thermen die erste oder
in die dritte Regel anwenden oder irgendwie sowas.
Das heißt, ich habe da eine größere Auswahl
Und der Therm, der da entsteht, ist natürlich anders,
je nachdem, was für einen Schritt ich gerade gewählt habe.
Das heißt, der Nicht-Determinismus erzeugt mit zwischendurch mal unterschiedliche Therme,
aber Konfluenz ist eine Eigenschaft, die sagt,
egal wo ich so lang gegangen bin,
das Ganze fließt wieder zusammen, also konflure, zusammenfließen,
auf einen gemeinsamen Therm-Tee.
Alles wird gut, was ist die Eigenschaft?
So, das wollen wir hier nicht beweisen,
haben wir noch
Die zweite Eigenschaft, die wichtig ist, ist terminierend zu sein.
Also wir hätten wenig davon, wenn das zwar gelten würde,
aber die Umformung auch unendlich lange gehen kann.
Ja, das ist dann kein Beweis,
Beweise sind immer endlich lang und interessieren nur endliche Umformungen.
Und was wir jetzt zeigende Weisen nach, dass das Verfahren terminiert,
und das weiß man nach typischerweise mit einer Gewichtsfunktion.
Wir geben jetzt jedem Term der Prozessallgebra ein Gewicht und Gewicht
ist eine natürliche Zahl.
Und die Eigenschaft soll sein, dass ein Reduktionsschritt das Gewicht
des Terms
echt verringert
Und dann ist es ganz klar, ich starte mit meinem Anfangsgewicht,
dann mache ich die Diät mit den Reduktionsschritten, naja,
und was kann da nur passieren?
Das kleinste Gewicht ist null, wenn es immer echt kleiner wird,
kann ich nur dieses Spiel endlich lange treiben.
Das ist die Grundidee. In den natürlichen Zahlen ist das klar,
dass das reicht, würde ich sagen,
ein Gewicht ist eine reelle Zahl, dann wird das nicht reichen,
denn da kann ich trotzdem das Gewicht immer um ein kleines Äpfel abnehmen lassen und lande trotzdem nie bei null,
kann das unendlich lange machen.
Also es ist schon wichtig, dass Gewicht eine natürliche Zahl ist.
Deswegen ist es nämlich immer einen diskreten Schritten,
wenn es echt kleiner wird
Und es ist von unten durch die Null begrenzt.
Das kann ich ewig weitergeben. Und das Gewicht,
naja, da muss man irgendwie eine göttliche Inspiration haben,
wie man sich das jetzt definiert.
Wir definieren es mal so. Wir sagen für eine Variable
ist es zwei. Ja, also jeder Wert größer
als eins tut es gerade. Und wir sagen,
das Gewicht einer Summe ist gleich der Summe der Gewichte.
Das heißt also, egal wie ich das ansortiere,
da verändert sich nichts. Also ganz praktisch zur Assoziativität und
Kommutativität. Diese Therme in einer Äquivalenzklasse, in der AC-Äquivalenzklasse
haben das gleiche Gewicht deswegen
Aber hier sieht man, das Gewicht eines Produktes, das ist gleich erster Faktor,
dessen Gewicht quadriert, mal dem Gewicht des zweiten Faktors.
Und das führt insbesondere beim Rechtsausklammern dazu, dass dort beim
Rechtsausklammern das Ganze kleiner wird. Kann man jetzt nachrechnen,
wenn man das jetzt nachrechnet, für die drei Regeln,
die wir da haben, R3, 4 und 5,
dann stellen wir fest,
tatsächlich,
jeder Umformungsschritt dekrementiert tatsächlich das Gewicht eines Terms
Und dann führt das dazu, wenn ich mit einem Therm S1 starte,
forme ihn um zu einem Therm S2,
dann ist dessen Gewicht kleiner geworden und so weiter.
Bis zu einem Therm SQ und so weiter.
Das kann aber nicht unendlich so lange weitergehen.
Es gibt keinen unendlich langen Umformungsketten, denn spätestens,
wenn das Gewicht null hat, kann es nicht mehr kleiner werden.
Dann hört das Ganze auf. Also wissen wir schon mal
, terminierend ist es. Wir müssen bislang noch nicht,
wozu das gut ist, so recht,
aber zumindest kann man es machen und es ist nicht so
schlimm,
es hört irgendwann auf
Was da rauskommt, das nennen wir jetzt Normalfonds. Ja,
wir haben einen Therm reingestopft,
wenden die Regeln an und haben ihn so lange umgeformt,
bis da nichts mehr geht, was da rauskommt,
das soll jetzt eine Normalform genannt werden.
Und diese Normalform, die haben eben die Eigenschaft,
sie sind eindeutig, sie haben also die gleiche Form,
hier in Klammern, Modulu AC.
Ja, die sehen nicht exakt syntaktisch gleich aus,
sondern ich darf noch Assoziativität und Kommutativität benutzen,
um sie syntaktisch umzuformen.
Aber innerhalb dieser Äquivalenzklasse von AC
sind sie gleich
Beschreibt eine Normalform, deren Äquivalenzklasse, die ist eindeutig festgelegt.
Ja, und das ist eben ganz nett,
weil es nicht deterministisch abläuft.
Das können wir uns noch mal an ein Beispiel anschauen.
Wir nehmen mal den Therm A plus A plus B plus B,
gefolgt von insgesamt einem C. Und was sieht man da?
Wir sehen zweifach Instanzen des Idepotenzgesetzes, das wir anwenden können.
Hier steht A plus A, das darf ich zu A zusammenziehen.
Ich darf B plus B zusammenziehen und da hinten lungert
noch so ein C rum,
damit darf ich
rechts ausklammern
Und wenn ich jetzt diese Ersetzungsregeln mache,
dann kann ich genau so vorgehen, wenn ich den Therm nehme,
die erste Regel, Anwendung von R3 führt dazu,
dass A plus A zu einem A zusammengezogen wird.
Das ist der erste Schritt. Der zweite Schritt zieht dann
B plus B zu einem B zusammen.
Und im dritten Schritt forme ich das um,
indem ich rechts ausklammere mit R4 und erhalte AC und BC.
Kurze, knappe Umformung. Ich hätte auch dämlicher das Ganze
machen können, Ich hatte mich zum Beispiel zuerst ausgeklammern können.
Ja, also von außen vorgehen. Naja, da hätte
ich zäh ausgeklammert. Da habe ich also A plus A
mal C plus B mal C. Und um mir besonders viel
Arbeit zu machen, klammere ich nochmal aus.
Also AC plus AC plus BBC. Ja, und weil
ich irgendwie gar nicht nachgedacht habe, mache ich das nochmal.
Habe dann also AC plus AC und BC plus BC.
Jetzt kann ich nicht mehr ausklammern, jetzt wird es Zeit
mal, Idempotenz anzuwenden. Und ich stelle fest,
Mensch, da steht hier AC plus AC
Ein Muster, das auf Ideam Potenz passt. Ich kontrahiere
es also zu einem AAAC und dann stelle ich fest,
BC kommt ja auch zweimal vor als Summe,
BC plus BC, ziehe ich das zusammen.
Und was sehe ich da? Mensch, da sind unterschiedlich
lange Ketten, aber wenigstens führen sie zum gleichen Ergebnis.
Das hatte ich ja versprochen. Ja, und das ist jetzt
nicht nur ein günstiger Zufall, sondern das ist systematisch so.
Das liegt an der Eigenschaft konfluent zu sein.
Muss so sein. Man sieht auf jeden Fall,
es kommt das Gleiche raus, also was noch hätte rauskommen können,
so als Unterschied wäre zum Beispiel,
Beim einen hätte der AC plus BC rauskommen können und beim
anderen vielleicht BC plus AC, also die Reihenfolge andersrum.
Das wären so taktisch zwei verschiedene Therme,
aber sie wären äquivalent modulo AC,
weil ich sie mit A und C, Assoziativität und Kommutativität umformen kann.
So, also, wir können eigentlich von der Normalform sprechen
und meinen damit immer, die eindeutig bestimmte Normalformen,
wenn ich in der Äquivalenzklasse,
Modulu AC
mir das Ganze vorstelle
Gut, und dass das terminierend ist,
haben wir auch hingekriegt, eben durch die Gewichtsfunktion von eben,
dann wissen wir, es gibt keinen unendlich langen Ketten.
Können wir uns nochmal angucken, wie das denn aussieht für die Regeln.
Hier sind ja die drei Reduktionsregeln. Die erste,
die mir Idem-Potenz kontrahiert, die zweite, die ausklammert.
Und die dritte, die die Klammern nach rechts schubst.
So, und was passiert da? Wenn wir
mal annehmen, X steht jetzt für einen atomaren Ausdruck.
Dann steht auf der linken Seite,
ja, Gewicht eines Atoms ist zwei,
also steht da zwei plus zwei
Und auf der rechten Seite steht zwei. Okay, das
ist kleiner geworden. Vier ist nämlich größer als zwei.
Gewichtendefinition ist auch recht glückwürdig. Ja. Ja,
dann wäre das eine blöde Gewichtsfunktion, mich eine,
mit der man nichts anfangen kann. Ja, die bringt was,
die beweist nämlich das, was ich haben will.
Ich will ja eine ständig fallende Gewichtsfunktion haben.
Wenn ich eine Funktion habe, die nicht ständig fällt,
dann ist das eine Funktion, die brauche ich nicht.
Dann habe ich dann gezeigt, dass es weiter nennt.
Naja, ein Therm hat initial sein Anfangsgewicht, meinetwegen
Dann weiß ich automatisch, das Ding erlaubt nicht mehr als
tausend Umformungsschritte. Oder 1001, ne? Also müsste ich
jetzt gerade mal nachzählen. Ich meine, tausend Umformungsschritte.
Weil in jedem Umfangsschritt muss es um mindestens einen kleiner werden.
Also 999, 998, das kann ich höchstens tausendmal machen,
bis ich bei der Null bin.
Also spätestens nach so und so vielen Schritten,
wie das Anfangsgewicht ist, ist Schluss mit der Umformung.
Und dazu ist es wichtig, dass jeder Umfang muss Schritt
das Gewicht kleiner macht. Bei einer richtigen Diät,
wenn das Gewicht mal rauf und runter geht,
weiß ich gar nichts.
Das bringt nichts
So, das heißt, klar, es ist willkürlich, aber passt.
Wir machen uns das jetzt nur exemplarisch klar für atomare Ausdrücke.
Wenn man das richtig nachweisen will, dann müsst ihr
mit Induktionsbeweisen draufschießen. So, was steht da jetzt?
Da steht ein Produkt von X plus Y. Das heißt,
in der Klammer X und Y haben jeweils den Wert 2.
Ein Produkt, dessen Gewicht rechne ich aber aus,
wenn ich den ersten Faktor nehme und dessen Gewicht quadriere,
Also zwei plus zwei quadriere. Und mit dem Gewicht des zweiten Terms,
das ist wieder eine Variable, also zwei multipliziere.
Das heißt, auf der linken Seite steht 4 hoch 2,
16 mal 2 ist 32. Und was steht auf der rechten Seite? Naja,
da habe ich wieder sowas,
da soll ich den ersten Faktoren dessen Gewicht nehmen,
das ist 2, das quadriere ich,
das ist 2 auf 2, mit dem Gewicht von Z multiplizieren,
ist auch 2. Und für Y mal Z,
wenn das wieder ein Atom ist,
2 quadriert mal 2.
So,
also 4 mal
Bis acht, das habe ich zweimal, also 16. 32
ist echt größer als 16. Das Gewicht hat abgenommen.
Kann man hier nochmal ausrechnen für x-mal Y? Naja,
erst nur x-mal Y ist ja den ersten Term neben dessen Gewicht quadrieren,
also 2 auch 2. Das Gewicht des zweiten Terms nehmen ist zwei.
Habe ich also den in der Klammer stehenden Ausdruck.
Jetzt geht das Ganze weiter, mal Z. Gut,
dann muss ich das, was in der Klammer steht,
nochmal quadrieren.
Also 2 auch zweimal 2 quadriert und mit dem Gewicht von
Z multiplizieren
So, 2, auf 2 ist 4,
mit 2 ist 8, 8 quadriert bis 64, mal 2 ist 128.
Und bei der rechten Seite, das ist ein bisschen einfacher,
da muss ich mich erst Y myZ, dessen Gewicht bestimmen.
Das ist das, was in den Klammern steht,
2 quadriert my 2, also 4 mal 2, 8.
Und das nehme ich dann. Und jetzt das Gewicht von X quadriert,
also 2 auf 2, wenn ich das ausrechne,
steht da 4 mal 4 mal 2, also 16 mal 2, 32.
Auch da wird das Gewicht
echt kleiner
Gut, haben uns also zumindest mal für atomare Ausdrücke,
die wir für XY und Z einsetzen,
haben uns schon mal überzeugt, da stimmt das wenigstens.
Den Basisfall der Induktion hätten wir damit gewissermaßen erledigt.
So, jetzt fahren wir mal fort. Ich habe ja immer noch versprochen,
wir können den Beweis jetzt direkt stricken. Man kann jetzt zeigen,
wenn nichts mehr geht, also ich ein Therm in Normalform habe,
wenn ich die Regeln R4 bis R5 angewendet habe,
dass die dann tatsächlich die Form einer Summe haben, nämlich genau so,
wie wir das vorhin auf der ersten Folie schon hatten,
es ist die Summe T1 bis TK.
Und jedes TI, jeder Summant, hat die Form,
entweder ein atomares A zu sein oder ist ein A gefolgt von einer weiteren Normalform S.
So muss das aussehen. Diese Eigenschaft muss man jetzt
nachweisen, dass das so letztendlich rauskommt.
Denn was mache ich da? Ich klammere maximal aus,
durch Ausklammern erzeuge ich mir sinngemäß sowas wie eine Summe von Faktoren.
Dadurch, dass ich immer mehr ausklammere,
verschwinden die Klammern und es bleiben im Wesentlichen Seumanten übrig irgendwann.
Und das müssen dann Faktoren sein oder eben Therme dieser Struktur.
Und was man jetzt macht, man kann jetzt nachweisen,
dass wenn nicht zwei Normalformen und Endstrich habe.
Und die sind bisimilar. Dass dann gilt,
dass diese Normalform im AC-Kalkül auch nachweisbar gleich sind
Und das macht man jetzt per Induktion über ihre Länge.
Das heißt, wenn die Normalform bisimilar sind, ja,
dann sind sie ja irgendwie eine endliche Summe von solchen Thermen, T-1 bis TK.
Und wenn sie bisimilar sind, weiß ich ja,
wenn ich einen Semanten der Form A habe,
dann kann der ja sofort mit einer A-Aktion terminieren.
Also wenn gilt das N mit A terminiert und weil
die beiden ja B-Semilar sind, N und N-Strich,
weiß ich auch, dass Endstrich mit einem A sofort terminiert.
Und da ich weiß, dass die Normalform sind,
weiß ich sofort, dass A, auch ein Summant sein muss.
Eine Alternative wäre gewesen, dass ein Endstrich vielleicht sowas vorkommt wie A plus A als Anfangsfaktor.
Ja, dass wir auch mit einer A-Aktion direkt zum Termination gekommen.
Nur A plus A wäre ja nicht in Normalform.
Da könnte ich ja nochmal eine Regel anwenden. Also da ich weiß,
dass Endstrich in Normalform ist und da ich zusätzlich noch weiß,
dass ein Strich wegen der Bisimilarität auch eine A-Aktion bis zur Termination ausführen kann,
kann ich jetzt schließen, dass diese beiden Eigenschaften zusammen ergeben,
dass A direkt ein Summant sein muss.
Das heißt, sie kann vom Verhalten des Thermsendstrich jetzt sofort auf seine Syntax schließen.
Irgendwo als Summant muss das vorkommen. Das heißt, dieser Summant,
wenn er in einem vorkommt, kommt er auch im anderen vor.
Und wenn ich einen Summant in der Form A mal S habe in Enden,
also der etwas komplexere Fall, was ist dann,
dann weiß ich ja,
ich kann eine Aktion ausführen und N wird dann mit
einer Aktion zu essen
Weil das Bisimilarse-Therme sind, weil sie auch Endstrich kommt mit
einem A zu Tee und B-Simulation sagt mir,
aus der Definition folgt dann das S und Tee,
wieder zueinander Bisimilar sein müssen.
Also weiß ich auch, dass A mal Tee in Endstrich,
als so man vorkommen muss.
Ja, denn ich musste mit einer A-Aktion antworten können und
dann kommt noch irgendwas, was Tee machen kann.
Also muss da dieser ThermAT auch vorkommen.
Nun ist es aber so, S und Tee,
die sind bereits Normalform
Und es sind jetzt kleinere Therme als N- und N-Strich. Und deswegen,
weil es kleinere Therme sind, also ihre Größe kleiner geworden ist,
schlägt das Induktionsprinzip jetzt zu,
für kleinere Therme weiß ich jetzt sofort,
es gilt diese Aussage, dass die Sommanten vorrätig sind,
also dass orangefarbene gilt jetzt für S- und T,
wenn S- und T also B-Seminar sind, weiß ich sofort,
dass S- und T-A-C-Äquivalent sind, Beweis haben.
Insgesamt weiß ich also, Was kann ich machen mit N- und N-Strich?
Ich kann sie so lange umtauschen mit der Kombitativität,
bis die an gleicher Stelle die gleichen Sachen stehen haben.
Denn die einzige Unterscheidung, die jetzt noch übrig geblieben ist,
ist die Art der Klammerung und die Position der Sumanten.
Und wenn ich das ignoriere, die Art der Klammerung,
also schon mal die Klammern weglasse und die Reihenfolge irgendwie normalisiere,
dann heißt das sogar, dass N- und N-Strich,
das sagen mir diese beiden Unterpunkte, untereinander geschrieben tatsächlich so das Gleiche haben.
Da gibt es immer den passenden Thermen da drunter
Ja, was habe ich gemacht? Ich habe einfach gesagt,
ich darf die Klammern umtauschen, ich darf umsortieren.
Das heißt, ich habe die beiden Aktionen mit A und
C angewendet. Das heißt, der einzige Beweis,
um jetzt nachzuweisen, dass die beiden gleich sind,
verwendet die Axiome A und C, also A1 und A2.
Insgesamt habe ich also gezeigt, dass, wenn ich zwei
B-Seminare Therme habe, dann haben sie die gleichen Sumanten.
Wenn zwei Therme die gleichen Sumanten haben,
dann reichen aber die Aktionen A und C aus,
um sie tatsächlich als gleich nachzuweisen.
Also weiß ich auch, N ist AC-Äquivalent zu Endstrich
Die erste Hilfsaufsage habe ich also schon mal bewiesen.
Hier mal ein Beispiel, wenn ich drei Semanten habe,
die unterscheiden sich jetzt, Klammer, habe ich mal weggelassen,
immerhin in ihrer Reihenfolge, wie ich es hingeschrieben habe.
Aber zum Beispiel sehe ich,
der eine kann mit einem A zu CD werden,
da sie bisimilar sind, weiß ich, naja,
es muss auf der anderen Seite auch irgendwie etwas geben.
Da gibt es auch ein AD,
eine Aktion, die zu CD führt.
Und die beiden müssen wieder bisimilar sein.
Also so der einfachste Fall
Nur durch Umsortieren kann ich wirklich nachweisen und umklammern,
dass diese beiden Therme sogar syntaktisch identisch sind. So,
jetzt habe ich schon mal gezeigt,
und das ist schon mal die halbe Miete,
wenn ich zwei Therme in Normalform habe, also die Normalform N&N-Strich,
dass dann tatsächlich ein Beweis im Kalkül möglich ist.
Für diese Teilklasse von Thermen gibt es immer einen Beweis.
Der Beweis, den ich führen muss, ist nämlich,
Klammern umtauschen und die Reihenfolge manipulieren.
In der offensichtlichen Art und Weise
Gut, das gilt jetzt nur für zwei Therme, die bereits so Normalform sind.
Was ist mit allgemeinen Thermen, die ich ja habe?
Im allgemeinen Fall muss ich ja nicht für Normalform das zeigen,
sondern für beliebige Therme S und T.
Ich nehme also ANS ist B-Simulatio Tee und muss jetzt beweisen,
dass S Gleichtee ist.
Sowas mache ich jetzt, dann mache ich Folgendes.
Ich nehme erst mal an,
es ist B-Simulatio Tee und ich nehme jetzt mein Ersetzungssystem
und reduziere es zu seiner Normalform und nenne sie mal
Und ich reduziere Tee zu seiner Normalform und nenne das mal Endstrich.
Man kriegt also aus S und T jeweils die Normalform.
Und was habe ich da gemacht? Gar nichts Schlimmes.
Da Ersetzungsregeln, Spezialfälle meiner Kalkülgleichung sind, weiß ich,
dass ganzheitlich auch im Kalkül als Umformung machen können.
Ich weiß also sofort,
dass die Normalform äquivalent ist zum Ausgangstherm S bzw. ein Strich
ist äquivalent zum Ausgangstherm Tee
Die Reduktionsregeln sind nur die abgespeckte Variante der Äquivalenz.
Das heißt, da kann gar nichts schief gegangen sein.
Das hätte ich im Kalkül auch machen können. Im Kalkül kann ich
ja höchstens noch mehr, nämlich von rechts nach links operieren.
Jetzt weiß ich aber, mein Kalkül ist korrekt.
Das war der letzte Satz. Ich weiß, alles,
was ich im Kalkül beweise, das stimmt auch.
Das heißt, alles, was als gleich nachgewiesen ist,
ist auch bisimila. Aus der Korrektheit folgt also jetzt sofort,
wenn es gleich en ist, dann weiß ich direkte Mang,
es ist B-Similar zu en.
Und TSB-Similar zu endstrich
Ich habe also nachgewiesen, dass die jeweiligen Normalformen zueinander bisimilar sind.
Zum Ausgasthemen. Und B-Seminarität ist eine Äquivalenz. Wenn ich also weiß,
Essensbisimilar zu Tee, das heißt, die beiden Ausgangstherme sind B-Similar.
Und dann reduziere ich sie zu den Normalformen,
und das ist auch B-Similar,
dann kann ich hier diese wunderschöne Kette bilden und stelle fest,
die beiden Therme, wenn ich das alles so verbinde und weiß,
ich darf das noch umdrehen,
dann kann ich das durchziehen und weiß dadurch,
aha,
auch die beiden Normalformen sind bisimilar
NSB-Similar zu N-Strich. Und was folgt dann?
Jetzt habe ich ja zwei Normalformen, für diese Normalform,
N- und N-Strich, wenn Dibi-Similar sind,
da habe ich ja eben auf der Folie zuvor gezeigt,
dass ich dann im AC-Kalkül nachweisen kann, das N-gleich-Endstrich ist.
So, wenn ich das in dem Abgespeckten AC-Kalkül kann,
dann kann ich erst recht nachweisen,
dass diese beiden tatsächlich auch gleich sind.
Also insgesamt habe ich dadurch bewiesen,
es ist gleich
Tee ist gleich Endstrich. N ist AC-Äquivalent zu Endstrich.
Da die AC-Äquivalenz eine Teilmenge ist von der Allgemeingleichheit,
habe ich hier eine Kette, die ich einfach durchdenken darf.
Also kann ich sagen, Anfang und Ende sind gleich.
Es ist gleich Tee. Das kann man sich nochmal illustrieren.
Der Beweis ist jetzt zu Ende. Was haben wir eben gesagt
? Wir haben angenommen, S ist Äquivalent zu Tee.
Und jetzt formen wir das um. Wir bilden von S
die Normalform mit den Reduktionsregeln. Und wir bilden zu Tee
Die Normalform Endstrich. Und jetzt wissen wir,
Umformung ist auch im Kalkül möglich. Deswegen sind die gleich
, die Therme. Und wir wissen auch, naja,
was gleich ist, deswegen der Korrektheit, auch Bisimilar.
Wenn ich das im Kalkül mache, dann könnte ich auch
sagen, naja, das ist die Therme Bisimilar sind.
Also kann ich das Ganze hier wunderbar verbinden.
Beide sind Bisimilar, folgt aus der Korrektheit.
Und das ganze Volk jetzt, das heißt,
N ist Bisimilar zu N Strich
Das kann ich einfach durchziehen. Einfach von N nach S,
von S nach Tee und von Tee nach Endstrich.
Einmal durchgezogen, also N- und Endstrich sind B-Similar.
Jetzt verwende ich noch die Eigenschaft für Normalform, kann ich aus B-Similarität das immer verschärfen.
Ich kann also daraus machen, dann weiß ich auch,
beide Normalformen sind AC-äquivalent. Und wenn ich das weiß,
weiß ich erst recht, dass die beiden gleich sind. So,
also habe ich konstruktiv gezeigt,
wie man für gegebenes S und gegebenes Tee,
von dem ich jetzt weiß, dass sie B-Similar sind,
dass ich für die beiden nachweise, Und zwar auch,
was ich tun muss, um einen Beweis zu führen.
Ich muss einfach nur diese Beweisschritte zusammensetzen. Von S nach M
muss ich kommen. Und das ist einfach das Anwenden der Normalform.
Von N nach N-Strich muss ich kommen. Das geht mit
dem Klammervertauschen, Positionsvertauschen. Und jetzt den letzten Schritt,
jetzt muss ich von Endstrich nach Tee kommen.
Da ich aber weiß, ich komme von Tee nach Endstrich.
Ja, den Beweis nehme ich mal.
Und jetzt schreibe ich den einfach rückwärts auf den Beweis
Ja, ein Beweis in meinem Reduktionskalkül,
der mich von Tee nach Endstrich führt, den kann ich,
wenn nicht alle Regeln auch von rechts nach links anwenden darf,
auch wieder rückwärts abspulen.
Das heißt, im Rückwärtslaufmodus kriege ich dann einen Beweis von Endstrich ist hingeführt zu Tee.
So mache ich das rückwärts. Und so setze ich
die Beweise einfach zusammen. Oder ich kann direkt sagen,
wenn ich Tee nach Endstrich umformen kann,
dann gilt Tee gleich Endstrich und einmal Symmetrie anwenden,
gebt mir dann Endstrich,
ist gleich Tee.
Wahlweise auch so
Das heißt, in diesem speziellen Kalkül sind wir fein raus,
wir können sogar explizit zu zwei Bisimilaren Thermen den Beweis konstruieren,
der nachweist, dass sie Bisimilar sind.
In komplexeren Kalkülen geht das nicht.
Gut. Ja, der Name zeigt das wieder
Nein, ich habe nicht gesagt, dass es
einige Therme gibt, für die es keine Normalform gibt.
Es gibt für jeden Therm seine Normalform. Am Anfang habe ich gesagt,
es gibt jetzt Therme, die nicht in Normalform sind.
Für die kann ich mit AC nicht mehr die Gleichheit zeigen,
obwohl sie gleich sind. Gleichheit mit AC ist nur dann
ausreichend, wenn ich zwei Normalformen vergleiche.
Da reichen nur A und C aus, um nachzuweisen,
dass sie gleich sind. Wenn einer,
mindestens einer von den Thermen nicht in Normalform ist,
dann reichen die Aktionen A und C nicht aus und nachzuweisen,
dass sie gleich sind
So, das brauchen wir aber auch nie. Wir rattern das ja mal durch.
Ess zur Normalform N und Tee zur Normalform Endstrich. Ja,
dann habe ich zwei Normalformen und von denen weiß ich,
für DSAC ausreichend, um die Gleichheit jetzt nachzuweisen.
Immer unter der Voraussetzung, ich starte mit etwas Bisimilan.
Ja, sonst kann das nicht rauskommen. Gut,
also insgesamt weiß ich, wie ich den Beweis,
dass S gleich Tee ist, zu führen habe.
Was wir implizit jetzt haben, ist ein,
ob es effizient ist, einmal dahingestellt,
aber wir haben einen Entscheidungsverfahren, sodass ich mit dem Kalkül entscheiden kann,
ob es gleich Tee ist, beziehungsweise ob es Bisimilla-CT ist.
Und ich habe sogar noch mehr. Man kann sogar zeigen
mit diesem Satz, dass zwei Therme nicht Bisimilla sind.
Denn ich nehme mal an, sie seien Bisimilla doch.
Dann berechne ich ihre Normalform, stell fest,
die Normalform sind aber jetzt nicht AC-Äquivalent.
Das Einzige, woran es gelegen haben kann, ist,
sie waren doch nicht Bisyla
Das heißt, das ist sowohl ein Entscheidungsverfahren um die Gleichheit nachzuweisen.
Und im Kalkül kann ich ja nur Gleichheit nachweisen.
Ich kann nur Beweise für, es gleich Tee führen.
Mithilfe dieses Normalform-Berechnungsverfahrens kann ich auch tatsächlich nachweisen, ob zwei Thermen nicht bisimilar sind.
Ich kriege sogar noch mehr. Sie sind nämlich genau dann
nicht bisimilar, wenn Sie unterschiedliche Normalformen haben. Und das Verfahren,
das ich mache, ist, so wie man sich das denkt,
ich will also entscheiden, ob SB-Similar zu Tee ist,
Ich gebe als Input zwei Prozesstherme,
S&T. Und als Output möchte ich gerne True haben,
falls es gleich Tee ist oder Bisimilla ist.
Und Falls, falls es die Eigenschaft eben nicht gilt.
Und das mache ich genauso wie eben skizziert.
Ich wende nicht deterministisch die Regeln eher 3, 4,
5, so lange wie irgend möglich auf S an.
Was da rauskommt, nenne ich mal N,
und das ist eine Normalfonds.
Das weiß ich. Genauso verfahre ich mit dem Thermen
Tee. Und was da rauskommt,
nenne ich
N Strich
Und jetzt überprüfe ich, ob N gleich Endstrich ist,
und zwar nur durch Anwendung der Gleichung A,
für Assoziativität und C für Kommutativität.
So, den letzten Punkt, ja,
den kann ich nicht so direkt machen mit als gerichtetes System.
Also es hat schon einen Grund, warum ich da keine Reduktion anwende.
Warum? Ja, Kommutativität kann man so schlecht richten.
X gleich Y, wenn ich das normal anwende,
habe ich Y gleich X, X gleich Y,
damit kann ich mich ziemlich lange beschäftigen.
Deswegen würde ich diese Regeln reinnehmen,
wird mir das sofort
die Termination versauen
Deswegen sind die Regeln R1 und R2 tatsächlich keine von links
nach rechts gerichteten. Aber ich kann trotzdem überprüfen,
ob zwei Therme AC-Äquivalent sind, indem ich einfach sage,
na gut, dann müssen sie die gleichen Semanten beschreiben.
Das kann ich einfach dadurch machen,
dass ich eine Sortierungsreihenfolge definiere und sage, okay,
dann sortiere ich eben, was da vorkommt.
Ich sortiere die Somanten durch. Es müssen A,
die gleiche Anzahl von Sumanten vorkommen.
Und B, in der sortierten Reihenfolge müssen sie sogar syntaktisch
Zeichen für Zeichen übereinstimmen
Das heißt, um so etwas festzustellen,
wie in fünftens, ob sie AC-äquivalent sind,
dafür wird man technisch gesehen ein irgendwie Ansortierungsverfahren machen.
Hier nochmal die Regeln, also die dreitens, viertens,
fünften Stars ist okay, da wird der Therm immer einfacher.
Bei den anderen geht das nicht so einfach.
Also im Prinzip drei Schritte. Erst die beiden,
dann die zweite Normalform berechnen und da nochmal überprüfen,
ob die beiden AC-Äquivalent sind.
Gucken wir uns das mal ein Beispiel an.
Wir haben ja einen so nicht mehr
völlig trivialen
Prozess auf der linken Seite, mit As und Cs und Ds.
Und wir haben einen zweiten Term, der sieht irgendwie offensichtlich anders aus.
Wir fragen uns jetzt, sind die beiden gleich?
Können wir da einen Beweis führen, ob die beiden gleich sind?
Und jetzt kann man sagen, okay,
entweder sehe ich den sofort, dann ist es gut.
Wenn ich sofort das mit zwei, drei Schritten sehe,
wie ich das umforme, dann kann ich mir vielleicht viel Arbeit sparen,
dann schreibe ich das genauso hin.
Wenn ich es erstmal nicht sehe, dann sage ich,
okay, ich sehe es nicht,
bin vielleicht nicht so genial, aber ich bin fleißig,
so,
ich forme jetzt die linke Seite erstmal um
Die linke Seite, da wende ich die Reduktionsregeln mal munter drauf an.
Ja, den linken Term nenne ich mal S.
Und was kann ich da machen oder das Erste,
was mir so auffällt, da steht A plus A.
Und das kann ich ja nehmen und kann es mit der einen Regel zusammenfassen.
Das dritte Aktion, Idem Potenz sagt, okay,
das kontrahiere ich zu einem A. Und dann gehe ich so weiter,
links ausklammern darf ich ja nicht.
Also gehe ich nochmal weiter, stelle fest, aha,
da hinten, D plus D,
das kann ich vereinfachen.
Gut, Marima
Wenn ich das zusammengezogen habe,
dann sind es schon mal einfache Therme der A-CD,
in Klammern, mal B-10, Klammern mal D.
Und jetzt stelle ich fest, ja, das ist eigentlich
schon ganz gut. Nur diese Reduktionsregeln sagen, ja,
ich soll die Klammern weit möglichst nach rechts verlagern.
Also schreibe ich da noch einmal um. Diesen Therm,
da klammere ich um, A, mal CD,
plus B, mal CD.
Und jetzt geht es nicht weiter. Das heißt,
was da rausgekommen ist, ist also meine Normalform N,
die Normalform zu S.
Und völlig ungebrochen
Gehe ich zur rechten Seite und forme auch da weiter um.
Und stelle fest, wenn ich mir das so angucke,
C plus C ist ein guter Kandidat zum Umformen,
dann steht da nur noch B plus A mal C mal D.
Was kann ich da jetzt machen? Irgendwie rechts ausklammern.
Und zwar, ich nehme mal den ganzen Term.
Ja, wenn ich das Ganze nehme,
dann will ich offensichtlich die Klammer nach rechts schaufeln.
Wenn ich die Klammer nach rechts geschoben habe,
dann ist das CD zu einem Term geworden und B plus A auch.
Und was ich da habe, kann ich jetzt
durch rechts ausklammern,
beispielsweise auch noch verändern
Bekommen also B mal CD plus arm als CD.
Und das ist meine Normalform Endstrich. Und jetzt erinnere ich
mich daran, dass zwei Therme ja dann gleich sind,
wenn sie gleiche Normalform haben. Jetzt stelle ich fest,
Mensch, beide sind doch hier sogar auf den ersten Blick
zu erkennen oder auf den anderthalbten, sind gleich.
Also sie sind nicht syntaktisch gleich. Das sieht man als erstes
. Eins fängt mit A an, das andere mit B.
Also deswegen sind sie schon mal nicht gleich.
Aber was man sofort sieht, sie sind,
wenn ich noch einmal das Kommutativitätgesetz anwende und die beiden Semanten einfach durchtausche,
Dann bekomme ich tatsächlich syntaktisch gleiche Darstellung.
Und einen Strich sind die deswegen auf jeden Fall modulu AC
e-e- äqualent, bezeichnen die gleiche Qualenzklasse.
Und jetzt benutze ich die Aussage aus dem Beweis von eben,
wenn ich weiß, die Normalformen sind gleich,
dann habe ich ja bewiesen, linke Seite ist gleich der Normal vom N,
die ist gleich der Normal vom Endstrich.
Und die Normal vom Endstrich ist gleich der rechten Seite Tee.
Also linke Seite, gleich rechte Seite,
S ist gleich Tee.
Da steht der Beweis
So, so kann ich damit umgehen, ohne jemals nachgedacht zu haben, großartig.
Ja. Großartig nachdenken. Naja, natürlich, ich muss
die Muster irgendwie in dem Therm finden, zum Umschreiben.
Aber das kann auch ein Computer, kann also nicht sehr tiefsinnig sein.
Sodass man jetzt macht, ist, bislang sind die Prozesse
sehr langweilig, die wir haben. Das nächste Konstrukt,
was wir uns jetzt gönnen, ist ein neuer Operator,
der das Ganze ein bisschen anders macht für parallele Kompositionen.
Also ein frischer Operator
Der Parallelopperator, Englisch Merch, der soll die Parallele eigentlich
besser nebenläufige Ausführung der beiden Prozesse darstellen.
Das heißt, ich habe als neuen Operator neben Plus und Mal
jetzt diesen Doppelstrich. Und ich erweitere die Thermenge natürlich entsprechend,
sodass ich jetzt Therme hinschreiben kann wie A plus B,
parallel ausgeführt zu C mal D.
Das ist jetzt ein neuer Therm. Und was mache
ich da
Naja, ich möchte, dass das irgendwie ausgeführt werden kann und zwar,
dass ich jetzt im Prinzip sagen kann,
erst den linken Therm ausführen,
da habe ich die Wahl zwischen A und B oder erst den rechten Thermen ausführen,
da kann ich nur einen C machen.
Und das muss ich jetzt nachziehen. Das heißt, was
ziehe ich nach? Ich definiere mir so eine Schrittsemantik,
eine Parallelausführung, auch interliebigen Semantik, weil ich sage,
parallel bedeutet mal der eine, mal der andere irgendwie verwoben.
Welcher nun drankommt, ist irgendwie nicht festgelegt,
Jedes Get-Yolin ist möglich, aber immer sequenziell. Ich behaupte,
also es gibt eine sequenzielle Ausführung, nur sie ist nicht festgelegt.
Wenn ich das habe, dann sage ich, okay,
wenn ich von X zum Prozess X-Strich komme,
mit der atomaren Aktion V, was ist dann?
Naja, dann kann ich das Gleiche machen,
wenn ich da noch einen Prozess Y daran klatsche.
Und was kann ich noch machen? Wenn Y zu Y
Strich wird, dann kann ich links auch einen Prozess X
dran klatschen
Und da sieht man, das ist deutlich unterschieden von dem Plus,
auch wenn es erst mal so ähnlich aussieht.
Was ist bei einer Auswahl anders? Bei der Auswahl klatsche ich
auch meinetwegen Y dahin. Aber nur auf der linken Seite.
Wenn ich mich weiß, ich komme von x nach x Strich,
dann komme ich mit x plus y nur zu x Strich.
Nein, die Seite spielt keine Rolle. Ich habe ja
beide Gleichung. Erstmal spielt sie eine Rolle,
weil das ja so taktisch verschiedene Therme sind.
Ja, inhaltlich haben wir natürlich das Gefühl,
es sollte keine Rolle spielen
Nur, dass es irgendwie schon mal so,
das sind zwei verschiedene Therme. A, parallel zu B,
ausgeführt, das ist was anderes als B,
parallel zu A ausgeführt, selbst wenn sie das Gleiche tun können.
Die Thermenrepräsentationen ist was anderes, vielleicht sind das ja
B-Seminare Dinge. Also da gibt es schon einen Unterschied.
Und weil es verschieden sind taktische Therme sind,
muss ich auch erst für alle Therme mal durchdeklinieren,
was es bedeutet, sie auszuführen.
Gut, und da setzen wir beim nächsten Mal
wieder ein bei dem parallelen Ausführen