【问题标题】:when to stop reduction in lambda caculus何时停止减少 lambda 演算
【发布时间】:2017-11-22 16:15:18
【问题描述】:

我对 lambda 缩减是如何终止的感到困惑。例如,数字 2 写成

\xy.xxy

为什么我们不应该继续应用 beta 替换规则并让它像这样

\xy.(x)xy
=>\ab.axy
=>\b.yx
=>y

这显然是错误的。但我不知道为什么。任何人都可以帮助我吗?谢谢!

【问题讨论】:

    标签: lambda-calculus reduction


    【解决方案1】:

    如果您在进行替换时遇到问题,我建议您使用完全展开的表单

    \xy.xxy
    

    不是

    \xy.(x)xy
    

    是的

    λx. λy. (x x) y
    

    可以 eta 化简为

    λx. λy. (x x) y λx. (x x) λx. x x

    head normal form中,不能进一步减少

    在这个特定的问题中不需要测试版替换

    【讨论】:

      猜你喜欢
      • 2015-10-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-02-07
      相关资源
      最近更新 更多