📜  门| GATE CS 2021 |设置 1 |问题 22

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

让 ⟨M⟩ 表示自动机 M 的编码。假设 Σ={0,1}。以下哪种语言是/不是递归的?
(A) L = {⟨M⟩ ∣ M 是一个 DFA,使得 L(M)=∅}
(B) L = {⟨M⟩ ∣ M 是一个 DFA,使得 L(M)=Σ*}
(C) L = {⟨M⟩ ∣ M 是一个PDA使得L(M)=∅}
(D) L = {⟨M⟩ ∣ M 是一个PDA使得L(M)=Σ*}答案: (D)
解释:递归语言(REC)——如果存在一个图灵机,它会接受 ‘L’ 中的所有字符串并拒绝所有不在 ‘L’ 中的字符串,那么就说语言 ‘L’ 是递归的。图灵机每次都会停止并为每个字符串输入给出答案(接受或拒绝)。如果语言“L”是递归语言,则它是可判定的。所有可判定语言都是递归语言,反之亦然。

从给定的选项来看,L = {⟨M⟩ ∣ M 是一个 PDA,使得 L(M)=Σ*} 是 CFL 的完整性问题,这是不可判定的。因此不是递归的。

给定一种语言 L,取其补码 L’ 并检查 L’ 是否为空 => L 是完整的。
由于 CFL 在互补下不是封闭的。因此,CFL 的完整性是不可判定的。
这个问题的测验