📜  门|门 IT 2006 |第 82 题

📅  最后修改于: 2021-09-27 06:01:35             🧑  作者: Mango

让 L 成为常规语言。考虑以下 L 上的构造:
重复 (L) = {ww | ∊ L}
前缀 (L) = {u | ∃v : uv ∊ L}
后缀 (L) = {v | ∃u uv ∊ L}
一半 (L) = {u | ∃v : | v | = |你|和 uv ∊ L}
L 的哪个选项最适合支持您的上述答案?
(A) (a + b)*
(B) {ϵ, a, ab, bab}
(C) (ab)*
(D) {a n b n | n≥0}答案:(一)
解释:

一个反例一次证明最后一个问题的所有结论应该具有以下性质:

  • 由于问题的要求,L应该是正则的
  • L 应该是一个无限的字符串集,否则 half(L) 将是规则的
  • L 在其语法中应该有多个字母,否则 repeat(L) 将是规则的。

所以,

  1. (a + b)* 是支持最后一个问题结论的完美例子。它是规则的,有多个字母并且是无限集。
  2. {ϵ, a, ab, bab} 是一个有限集,因此是错误的。
  3. (ab)* 等价于 c∗ ,这是一种字母语言,因此是错误的。
  4. {a n b n | n ≥ 0} 甚至不是常规语言,因此是错误的。

该解决方案由vineet purswani 提供
这个问题的测验