我是新来的,也是lambda演算的新手。我的问题是: 在lambda演算减少(到正常形式),有没有办法评估表达式(以确保我正确地进行了减少)。
例如(/代表lambda) (使用beta方法)
/x.y(/z.xz))(/y.zy)
=> /x.y(/z.xz))z
=> (/x.yx)z
=> yz
现在如何确保我的减少是正确的?有没有办法我可以评估原始的一个并将其与减少的一个进行比较?
答案 0 :(得分:1)
你在那里所做的就是对Lambda表达式的评估。如果你的意思是让计算机评估它,就像这样的lambda函数
在Haskell中写得如下:
/common/
的Python:
/organizations/
C#:
(\a b => b a)