📜  门| GATE IT 2006 |第81章

📅  最后修改于: 2021-06-29 18:58:12             🧑  作者: Mango

令L为常规语言。考虑以下L的构造:
重复(L)= {ww | w∈L}
前缀(L)= {u | ∃v:uv∈L}
后缀(L)= {v | ∃uuv∈L}
一半(L)= {u | ∃v:| v | = |你和uv∈L}
哪些构造可能导致不规则的语言?
(A) I和IV
(B)只有我
(C)只有IV
(D) II和III答案: (B)
解释:

  • 不要将repeat(L)与串联混淆,因为它具有特定的顺序。只有相同的字符串才能相互串联,而不是全部。而且,双字语言甚至不是CFG(非常规)。
  • prefix(L)是一种常规语言-L的DFA中的所有状态都可以设为最终状态,从而使DFA接受使用prefix(L)的结果[regular]
  • 后缀(L)是一种常规语言,因为可以构造一个可以接受后缀(L)的NFA。 L的DFA中的每个状态都可以得到一个事件#-从起始状态开始的边缘-该NFA会接受后缀(L)[常规]。
  • half(L)是常规语言。它只是一种包含偶数长度字符串的语言。

因此,选项(B)是正确的。

这个问题的测验