减少这个 lambda 表达式

Reduce this lambda Expression

(λy.λy.yy)(yy) 伙计们,我无法解决这个问题。 如果有人帮助我逐步减少这个 lambda 表达式,我将不胜感激

(λy.λy.yy)(yy)

第一个 lambda 永远不会“使用”它的变量,因为它的名称与内部 lambda 相同。不过,如果这不是转录错误,则减少很简单。

在减少可能存在名称冲突的表达式之前,重命名绑定变量。表达式变为:

(λx.λz.zz)(yy)

接下来,替补。 由于第一个 lambda 中的变量 x 没有任何要替换的绑定实例,因此您应用于它的任何内容都会被丢弃。

λz.zz

由于这个表达式不能再减少,所以这是正常形式。