Skip to content

正则语言泵引理

Pumping lemma for regular languages

足够长的正则语言词可分解出可重复泵送的中段。

形式陈述

L 是正则语言,则存在泵长 p1,使每个满足 wL|w|p 的字符串都可分解为

w=xyz

并满足

|xy|p,|y|>0,i0,xyizL.

分解 x,y,z 可以依赖于 w,但在选定后必须对所有 i0 同时成立。

直觉

有限自动机读入足够长前缀时必重复某个状态,重复段形成环。绕该环零次、一次或多次都回到同一状态,因此后缀接受行为不变。

例子与边界

要证明 {0n1n:n0} 非正则,可对任意候选 pw=0p1p;任意满足 |xy|p 的非空 y 只含 0,泵送后打破数量相等。量词顺序是“对所有 pw,对所有合法分解选某个 i 使失败”。满足泵性质是正则性的必要条件,不是充分条件。

推论与应用

泵引理是证明语言非正则的经典工具。它不能用于证明语言正则,也并非对所有非正则语言都容易使用;Myhill–Nerode 定理常给出更强、更结构化的判别。

参考资料
  • John E. Hopcroft, Rajeev Motwani, and Jeffrey D. Ullman, Introduction to Automata Theory, Languages, and Computation, 3rd ed., Pearson, 2006,§4.1。
  • Michael Sipser, Introduction to the Theory of Computation, 3rd ed., Cengage, 2013,§1.4。