Skip to content

λ-正规形

Lambda normal form

相对于完整 β-归约不含任何 redex 的 λ 项,以及可正规化与强正规化的边界。

条目类型
定义

形式陈述

λ 项 t 处于 β-正规形,当且仅当它不含形如 (λx.u)vβ-redex。等价地,

¬t. tβt.

β-正规形可由互递归文法刻画:

n::=aλx.n,a::=xan.

中性项 a 的头部是变量,因此不可能形成 β-redex;它的参数与抽象体也必须已经正规。

若存在正规形 n 使 tβn,其中 β有限多步归约,则称 t 弱正规化。若从 t 出发不存在任何无限 β-归约序列,则称它强正规化

弱头正规形只要求最外层已经露出 λ 或以变量为头的应用,不检查 λ 体和参数深处。例如 λx.(λy.y)z 是弱头正规形,却不是 β-正规形。不同文献还使用头正规形、弱正规形等术语,必须按其允许检查的位置核对定义。

直觉

正规形是相对于某条归约关系的语法终点。改变规则或允许归约的位置,终点集合也会改变。完整 β-正规形检查整棵项树;运行时的“值”通常只表示求值策略愿意停下,常把任意 λ 抽象直接视为值。

弱正规化的量词是“存在一条到终点的路”,强正规化的量词是“每条路都有限”。两者不能由“求值器在这个例子上停了”替代,因为求值器只实现某个策略。

例子与边界

λx.xxyλx.xy 都是 β-正规形;(λx.x)y 不是,因为整个项就是 redex。开项 xy 正规,却不是闭项;在某些运行语义中它会被称为 neutral 或 stuck,而不是值。这些名称属于不同分类轴。

Ω=(λz.zz)(λz.zz)。项

(λx.y)Ω

先收缩外层便得到正规形 y,所以弱正规化;若持续收缩参数中的 Ω,归约会无限延伸,故它不强正规化。Ω 自身连弱正规化都不满足。

正规形也不自动唯一。对任意重写关系,一个项可能归约到两个不同正规形;需要合流性才能排除这种分叉。无类型 λ 演算恰好具有合流性,但不具有全局正规化。

推论与应用

Church–Rosser 定理,同一 λ 项若能归约到两个 β-正规形,这两个结果必 α-等价。对于确实可正规化的项,正规形因此可作为计算等价的规范代表。

标准化定理进一步说明:若 β-正规形存在,最左最外的正规序归约会找到它。该策略保证寻找已存在的正规形,不表示无正规形的项会被判定后停止。

正规化性质把弱、强正规化推广到语言或项集合;简单类型 λ 演算强正规化说明每个良类型项的所有 β-路径都有限。通过 Curry–Howard 对应,证明项正规化还对应消除证明中的局部迂回。

参考资料
  • Henk Barendregt, The Lambda Calculus: Its Syntax and Semantics, revised ed., North-Holland, 1984, Chapter 3。
  • J. Roger Hindley and Jonathan P. Seldin, Lambda-Calculus and Combinators: An Introduction, Cambridge University Press, 2008, Chapters 4–5。
  • Benjamin C. Pierce, Types and Programming Languages, MIT Press, 2002, Chapters 5 and 12。
关系图谱8 个相邻概念 · 2 类关系

拖动节点调整位置。

显示关系

显示:依赖

  1. 前置三跳
  2. 前置二跳
  3. 前置一跳
  4. 当前条目
  5. 后续一跳
  6. 后续二跳
  7. 后续三跳
文字版关系按与当前条目的最短距离分组
类型化关系

使用的工具