Disclaimer: Dieser Thread wurde aus dem alten Forum importiert. Daher werden eventuell nicht alle Formatierungen richtig angezeigt. Der ursprüngliche Thread beginnt im zweiten Post dieses Threads.
ich glaub, du hast recht. ich hab statt des rot markierten bereichs zuerst hinten x in (\x.f) eingesetzt und das ergebnis dann vorne rein, aber ich glaub, das darf man nicht, oder? so kommt man jedenfalls auf das, was ich geschrieben hab.
genau, die letzten beiden parameter also (/x.f)x das sind die, die du in “die große klammer” einsetzen musst, dass ist auch das was die linksassoziativität bedeutet.
Man kann beim Lambda kalkül nur von hinten nach vorne einsetzen (von rechts nach links).
Pass bei Lambda genau mit der Klammerung auf.
In der Aufgabe steht
(/X Y.(/Z X.X Z Y)(/Z.X Z)(/Y X.Y Z))
→ mit dem X und Y am Beginn passiert in der Ganzen Aufgabe gar nichts.
Nicht wenn man Fehler dabei macht und nicht dazu schreibt was man tut
Fixed Version:
(\XY.(\ZK.KZY)(\Z.XZ)(\YX.YZ)
→ beta,beta (\XY.(\YX.YZ)(\Z.XZ)Y)
→ alpha,beta,beta (\XY.(\Z.XZ)Z)
→ beta (\XY.XZ)
Und etwas falsch abzukürzen kostet Punkte
Die Aufgabe geht nicht ohne alpha-Konversion! Wenn links keine angegeben ist und man nicht aus dem Zusammenhang erschließen kann, dass eine alpha-Konversion durchgeführt wurde, gibt es Punktabzug.
Ist falsch. Würde man einfach 2 beta Konversionen durchführen, würde das Ergebnis so aussehen: