CFL的抽奖引理

时间:2018-11-10 15:10:58

标签: computer-science automata language-theory computer-science-theory

问: 证明L = {ww | w∈{0,1} *}不是上下文无关的

我的解决方案:

假设L是上下文无关的

让其抽水长度为P

因此

字符串= 0 ^ P 1 ^ P 0 ^ P 1 ^ P

让P = 2, S = 00 11 00 11

S可以分为u v ^ i x y ^ i z

0 0 110 0 11
u v  x  y  z

抽水后

0 00 110 00 11
u  v  x   y  z

0 ^ 3 1 ^ 2 0 ^ 3 1 ^ 2 因此其格式为 ww (满足第一个条件)

| vy | = 4> 0 (满足第二个条件)

| vxy | = 7,大于抽水长度2 (不满足第三个条件)

因此,与L是上下文无关的假设相矛盾。

因此L不是上下文无关的


我的证明正确吗?

1 个答案:

答案 0 :(得分:0)

此证明不正确。它偏离轨道的位置在这里:

  

让P = 2,S = 00 11 00 11

您不能“让” P成为任何东西。由于上下文无关的语言存在抽动引理,因此假设存在P,但这是一个尚未确定的数字。即使证明的其余部分正确,您所要证明的是数字P = 2不起作用。您需要证明P别无选择,以显示该语言不是上下文无关的。

下一个错误是:

  

S可分为u v ^ i x y ^ i z […]

可以根据您的建议对S进行划分。但是,它也可以用其他方式划分。请注意,无上下文语言的泵送引理仅要求| vxy |。 0。特别是,只要v和y都不为空,则u,v,x,y和z中的任何一个都可以为空字符串。

您肯定在正确的轨道上:

  

字符串= 0 ^ P 1 ^ P 0 ^ P 1 ^ P

从这里开始,而不是选择特定的P或特定的分配,而是整体考虑有趣的分配或案例。有趣的不同案例的数量实际上很少。

  1. v和y从字符串的第一部分开始仅包含0。抽水会导致第一部分的0数与后面的三个部分不匹配。
  2. v和y在字符串的第一部分和第二部分中仅包含0和1。泵送导致字符串的第一部分和第二部分中的0和/或1数与第三部分和第四部分不匹配。
  3. v和y从字符串的第二部分开始仅包含1。基本上与(1)相同
  4. v和y由字符串第二和第三部分的1和0组成。基本上与(2)相同
  5. v和y由字符串第三部分的0组成。与(1)和(3)基本相同
  6. v和y由字符串的第三部分和第四部分的0和1组成。基本上与(2)和(4)相同
  7. v和y由字符串第四部分的1组成。基本上与(1),(3)和(5)相同。

这些情况涵盖了v和y的所有可能赋值,并且像引理所说的那样,它们都不能被泵出。这是矛盾。关键是使用| vxy |