为什么 CFG 的泵引理不起作用

Why pumping lemma for CFG doesn't work

语言:

{(a^i)(b^j)(c^k)(d^l) : i = 0 or j = k = l}

我们接话

w = a^0 b^n c^n d^n

这显然属于语言 因为j = k = l

w = uvxyz

  1. |vxy| <=n

  2. |维| > 1

现在 v 和 y 可以是:

  1. 只是一个字符,如果我们抽取单个字符,该词将不再是语言

  2. 两个字符,第三个字数会少,所以这个词不在语言中

所以,这种语言不是 CF 的证明不应该用标准泵引理来做,只能用 ogdens 引理,但我不明白为什么上面的证明是无效的。

它不起作用,因为实际上每个抽取的字符串 都是 在语言中,因为你仍然没有 as (即 i=0) .

并且如果您选择一个字符串,其中 i > 0,那么您不能保证 v 不只是一些 a,并且 x 是空字符串。