标识通过以下语法生成的语言,其中 S 是起始变量。
S → AB
A → aAb | ε
B → bBc | ε
(A) L = { a i b j c k | i, j, k ≥ 0,和 i+k > j }
(B) L = { a i b j c k | i, j, k ≥ 0,和 i+j = k }
(C) L = { a i b j c k | i, j, k ≥ 0,和 i+k = j }
(D) L = { a i b j c k | i, j, k ≥ 0,和 i+j > k }答案: (C)
说明:在这种情况下,我们观察到的第一件事是我们仍然可以通过将 A 和 B 设置为 ε 来接受空字符串。
接下来,我们使用变量 A 和 B 构造字符串。
此处的变量 A 确保对于 A 的每次出现,我们都有相同数量的 a 和 b。
对于 B 的每次出现,变量 B 允许我们拥有相同数量的 b 和 c。
因此,b 的数量是 a 和 c 的数量之和
L = { a i b j c k | i, j, k ≥ 0,和 i+k = j }
选项(C)是正确的。
这个问题的测验