繁体   English   中英

抽引引理以显示`{a ^ nb ^ m | n = km对于N中的k是不规则的

[英]Pumping lemma to show that `{a^n b^m | n=km for k in N}` is not regular

我应该如何证明L={a^nb^m | n=km for k in N} L={a^nb^m | n=km for k in N}不是使用抽水引理的常规语言?

我首先在L取一个词w ,对于N一些kw=a^nb^mn=km w有三种可能的分解:

  1. a^i * a^j * a^(nij) b^m
  2. a^i * a^(ni) b^j * b^(mj)
  3. a^nb^i * b^j * b^(mij)

在点2)中抽取中间部分将导致单词混淆,这显然不在L ,但我不知道为什么1)无法给您带来良好的分解:

假设您将a^ja^j x次。 那么新单词中a的数量将为i+xj+nij = n+(x-1)j 我们知道n=km大约m 我们必须证明存在x使得新单词不在L 但是让我们假设j=m (这当然是可能的,因为n=km总是有足够数量的a,除了k=0 ,但是得到的情况很简单)。 n+(x-1)j = km+(x-1)m = m(n+x-1) ,形式为{a^nb^m | n=km for k in N} 对于所有x {a^nb^m | n=km for k in N} 因此,对于每个w我们都有一个分解uvz ,使得uv^iz对于所有i都在L中。 因此,通过抽运引理, L是规则的。

我想念什么?

编辑:给出抽水引理的公式:

L为DFA接受k个状态的常规语言。 wL中长度>= k任何单词。 然后可以用|uv| <=kw编写为uvz |uv| <=k 所有i>=0 |uv| <=kv>0L uv^iz

一种可能更简单的证明方法是首先修改语言。

由于正则语言在补码和与另一个正则表达式的交集下是封闭的

这意味着,你可以证明L是不是证明一个正规语言complement(L)是不是一个正规的语言,因为如果L'是一个普通的语言, L的,反之亦然。 交叉口也是如此。

足以证明L'也不规则:

L' = intersection(complement(L),a*b*})

从而

L'={a^nb^m|n != k*m, for any k in N}

然后,证明就变得更加容易了,因为您可以显示用作抽出引理的任何部分,如果长度为l ,则可以抽出足够的次数以达到倍数。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM