📜  门| GATE-CS-2005 |第 57 题

📅  最后修改于: 2021-09-25 05:05:24             🧑  作者: Mango

考虑语言:

L1 = {wwR |w ∈ {0, 1}*}
L2 = {w#wR | w ∈ {0, 1}*}, where # is a special symbol
L3 = {ww |  w ∈  (0, 1}*)

以下哪一项是正确的?
(A) L1 是确定性 CFL
(B) L2 是确定性 CFL
(C) L3 是 CFL,但不是确定性 CFL
(D) L3 是确定性 CFL答案:(乙)
解释:

L1:{ww^R | w 属于 {0,1}*}
这是 CFL 但不是 DCFL。它可以从以下语法派生
S -> aSa | bSb |厄普西隆
但是它不能从任何确定性下推自动机中推导出来,因为无法确定单词 w 在哪里结束和它的反向开始。

L2:{w#w^R | w 属于 {0,1}*}
由于与上述相同的原因,这是 CFL。这是一个确定性的 CFL,因为我们有一个标记来帮助我们找出单词 w 的结尾及其反向的开头。因此,一个 PDA,其中所有字母都被压入直到我们得到 #,然后仅当堆栈顶部与当前字母匹配时才弹出,否则拒绝 – 将推导出 L2。

L3:{ww | w 属于 {0,1}*}
这甚至不是 CFL。可以使用泵引理证明上述主张 –
考虑形式为 (0^n 1^n 0^n 1^n) 的字符串z。
假设 L3 是 CFL,并且 z 显然满足 L3——因此 z 也应该满足泵引理。
我们将取 n 使得 n = p,其中 p 是 L3 的泵送长度,因此迫使我们的字符串长度大于泵送长度。
现在,根据抽水引理,必须存在 u,v,w,x,y 使得 z = uvwxy, |vwx| <= p, |vx| > 0 并且 u{v^i}x{y^i}z 对于所有 i>=0 都属于 L3。
不存在任何这样的 u,v,w,x,y 配置使得 u{v^0}x{y^0}z 属于 L3。因此 z 不满足泵引理。因此 L3 不是 CFL。

综合以上所有结论,唯一正确的选项是 (B) L2 是确定性 CFL。

参考 ;

https://courses.engr.illinois.edu/cs373/sp2013/Lectures/lec17.pdf

此解决方案由Vineet Purswani 提供
这个问题的测验