((λw。w)(λu。λv。u)(λu。λv。v)(λu。λv。u)
任何人都可以逐步介绍此示例的Beta减少功能吗?我真的很困惑
(λw. w) (λu. λv. u) (λu. λv. v) (λu. λv. u)
将(λw.w)应用于(λu。λv.u)。因为这是身份功能,所以没有任何变化。
(λu. λv. u) (λu. λv. v) (λu. λv. u)
将(λu。λv.u)应用于(λu。λv.v)。在表达式中用它代替u。由于现在我们可能会对第一个表达式中的多个v感到困惑,因此我们可以将内部表达式中的v阿尔法重命名为另一个变量x。
(λv. (λu. λx. x)) (λu. λv. u)
将(λv。(λu.λx.x))应用于(λu.λv.u)。由于v没有出现在lambda的主体中,因此该参数被有效地丢弃。
(λu. λx. x)
我们现在可以(可选)再次重命名以恢复原始变量名。
(λu. λv. v)