📜  门| GATE-CS-2016(套装1)|第 53 题

📅  最后修改于: 2021-09-26 04:39:05             🧑  作者: Mango

考虑下面给出的带有输入字母 ∑ 的 PDA 的转换图。 = {a, b} 和堆栈字母 Γ = {X, Z}。 Z 是初始堆栈符号。让 L 表示 PDA 接受的语言。
GT11

(一) A
(乙)
(C)
(四)答案: (D)
解释:

在给定的 PDA 中,我们可以从左到右将状态编号为 q1、q2 和 q3。

PDA的转换如下:

  1. (q1, a, Z) -> (q1, XZ )

  2. (q1, a, X) -> (q1, XX )

  3. (q1, b, X) -> (q2, €)

  4. (q2, b, X) – > (q2, € )

  5. (q2, €, Z) -> (q3, Z)

由于初始状态是最终状态,因此 PDA 始终接受空字符串。
前两个转换表明状态在 ‘a’ 输入字母表上保持 q1(最终状态),并且每个 ‘a’ 我们将 X 推入堆栈。因此
,当 n≥0 时,总是接受n
转换 3 和转换 4 表明,对于输入字母 ‘b’ 和堆栈符号 X(即字符串出现 ‘a’),我们可以从堆栈中弹出 X。转换 5 表明只有当字符串为空且堆栈符号为 Z 时,我们才能移动到最终状态 (q3)。当我们从堆栈中弹出所有 X 时,这是可能的,即 ‘b’ 与 ‘a’ 发生的时间完全相同’。因此,
对于 n≥0,总是接受a n b n 。 PDA 接受的语言是 { a n | n≥0 } U { a n b n | n≥0 } 是确定性 CFL。
(a
n b n | n≥0 不是常规的,但被 PDA 接受)。因此选项(D)。

该解决方案由Yashika Arora 提供
这个问题的测验