【发布时间】:2013-02-07 11:07:22
【问题描述】:
我试图通过 Pumping Lemma 证明以下语言不规则。但我不确定我是否做得正确。
{L = a2n | n>= 0 }
到目前为止,我所做的如下:
s = a2p
x = a2i
y = a2j
z = a2p-i-j
因此 xy2z = a2p+j
表示a2p+j > a2p ,使语言不规则
我做得对吗?还是我有什么问题?
【问题讨论】:
标签: context-free-grammar pumping-lemma
我试图通过 Pumping Lemma 证明以下语言不规则。但我不确定我是否做得正确。
{L = a2n | n>= 0 }
到目前为止,我所做的如下:
s = a2p
x = a2i
y = a2j
z = a2p-i-j
因此 xy2z = a2p+j
表示a2p+j > a2p ,使语言不规则
我做得对吗?还是我有什么问题?
【问题讨论】:
标签: context-free-grammar pumping-lemma
不完全是,你得出了正确的结论,但推理有点不对劲。 Pumping lemma 声明对于每个常规语言 L,都存在一个整数 p >= 1,其中每个长度大于或等于 p 的字符串 s 可以写为 s = xyz,其中满足以下条件:
y 非空L,对于所有 i ≥ 0你的第一步是正确的,s = a2p 确实比p长。然而,抽水引理指出 s 可以划分为满足上述条件的s = xyz。换句话说,存在 s 的一个划分为s = xyz,但是除了知道它应该满足上述三个属性之外,您无法选择该划分是什么。
在您的情况下,L 是仅由 a 组成的语言,其中 a 的数量是 2 的幂。现在取 s = a2p,我们知道L 中下一个最长的字符串是 (a2p)2。从那里,如果前两个条件成立,可以看出第三个条件肯定不能成立i = 2,因为a2p2 z 2p)2。 (在简单的英语中,xy2z 的长度介于 2 的幂之间,因此它不是 L 语言,就像它是常规语言一样)
【讨论】: