lambda-calculus - Beta 约简 Lambda 演算示例
问题描述
(λ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)
我们现在可以(可选地)再次 alpha 重命名以恢复原始变量名称。
(λu. λv. v)
推荐阅读
- c# - 命名空间“WebApplication1.Models”中不存在类型或命名空间名称“Application”
- php - 如何将 PHP 全局变量用于 2 个函数?
- python - python 全局变量如何在 Telebot(pyTelegramBotAPI)中工作?
- php - 仅从查询中获取一行
- javascript - 显示短版或完整版文本
- c++ - 图片 SFML 加载失败
- python - 复制同一 ssrs 报表服务器中的文件夹自动更新新的子报表路径和共享数据集
- python - 为什么 stripped_string 输出没有用逗号分隔?
- r - 在 R 中设置 IRT 模型的难度值
- python - ActionChains 不使用 Firefox 执行 F5 按下