归类为常规,无上下文或其他

时间:2017-04-11 06:19:37

标签: context-free-grammar discrete-mathematics regular-language context-free-language

有人可以回答这些问题并为我愚蠢,我并没有完全掌握这些想法。我总体上对#34;终端到底是什么感到困惑?"" w代表什么?"

但至于真正的问题,请将其归类为常规,无上下文或其他。

a){a ^ nb ^ na ^ n}∩#的a是偶数 b)(a ^ nb ^ n)∪回文
c)a ^ n + m b ^ m a ^ 2n

请分类并解释。

1 个答案:

答案 0 :(得分:1)

  

{a ^ nb ^ na ^ n}∩#的#是偶数。

{a ^ n b ^ n a ^ n}中的每个字符串都有2n a' s,偶数,因此交集不会进一步限制语言。交点等于{a ^ n b ^ n a ^ n}。这类似于规范的上下文敏感语言之一a ^ n b ^ n c ^ n。我们可以使用针对无上下文语言的泵浦引理来证明语言不是上下文。然后,请注意,如果^ nb ^ na ^ n是无上下文的,那么您也期望(a + c)^ nb ^ n(a + c)^ n,因为前者的任何PDA都可以只需对待a和c即可,并接受后者。然而,CFL和RL的交点必须是CFL,并且(a + c)^ nb ^ n(a + c)^ n与aa bb相交 cc *是^ nb ^ nc ^ n(n> 0),这不是没有上下文的,是矛盾的。 OTHER。

  

(a ^ nb ^ n)∪回文

假设这是常规的。然后与所有奇数长度字符串的常规语言的交集将是规则的。上述联合中的所有奇数长度的字符串都是奇数长度的回文。奇怪的长度回文不规则,矛盾。现在,一个^ n b ^ n由CFG S给出:= aSb | ""和palindromes是无上下文语言的规范示例,CFL的并集也是CFL,所以这是无上下文。

  

a ^(n + m)b ^(m)a ^(2n)

我们可以将其重写为^ n a ^ m b ^ m a ^ 2n。然后我们看到这是免费的,因为CFG是S:= Q;问:= aQaa | "" | R等R:= aRb | "&#34 ;.常规语言的抽象引理可以证明它不是常规的。