某些lambda的Beta约化

某些lambda的Beta约化,lambda,lambda-calculus,Lambda,Lambda Calculus,我有下面的lambda演算,想知道它的beta约化 lambda是: λxy.xy 我想,它不能做beta-reduce,因为没有代换,而且x是绑定在物体上的 我的假设正确吗?您不能应用beta缩减(这可能是您正在寻找的)。Beta缩减只能应用于函数应用程序(即使如此,也不能应用于所有情况) 您可以应用eta转换,当x不能自由出现在f中时,它将λx.fx转换为f。然后可以转换表达式: λxy.xy=λx.λy.xy→ηλx.x(=I)。是。这里只能使用eta-reduce。什么是eta-red

我有下面的lambda演算,想知道它的beta约化

lambda是:

λxy.xy
我想,它不能做beta-reduce,因为没有代换,而且x是绑定在物体上的


我的假设正确吗?

您不能应用beta缩减(这可能是您正在寻找的)。Beta缩减只能应用于函数应用程序(即使如此,也不能应用于所有情况)

您可以应用eta转换,当x不能自由出现在f中时,它将λx.fx转换为f。然后可以转换表达式:


λxy.xy=λx.λy.xy→ηλx.x(=I)。

是。这里只能使用eta-reduce。什么是eta-reduce?看起来更常见的是x-an表达式?如何描述x?有时在lambda演算中,您只使用beta规则,有时您还添加了eta缩减规则。如果你只关心beta,你的术语已经尽可能减少了——它是beta的标准形式。对不起,我听不懂。eta转换是什么意思?你能给我举个简单的例子吗?(=I)是什么意思?@zero\u编码Eta转换简单地意味着,如果某个抽象只将常量表达式f应用于其参数x(即
\x.fx
,如果f不包含x),则该抽象等同于f本身。抽象仅用于框f/forwards x,因此可以删除它。