如何找到L的补充,
L = {<M>: M is a TM, which accepts some palindrome}
寻找补充的一般规则是什么? 我想在这个特殊情况下它会是
L_bar = {<M_bar> : M_bar is a TM, which rejects any palindrome .???
答案 0 :(得分:0)
查找某种语言的补语(关于某些理解的宇宙U
)的一般规则:
S = {x: P(x)}
,其中x
是Universe U
和P(x)
的元素,如果x
具有S
成员资格所需的属性,则为
S' = {x': ~P(x')}
,其中x'
是Universe U
的元素,~P(x)
是P(x)
的否定,如果x'
不具备所需的属性,则为真加入S
。
在你的例子中:
L = {<M>: M is a TM, which accepts some palindrome}
我们必须首先确定宇宙是什么。如果我们将Universe作为代表TM编码的所有字符串,您的答案很接近,但可能不正确,具体取决于您的定义。如果你说&#34;不接受&#34;那将更加明确无误。而不是&#34;拒绝&#34;因为TM可以在回文上永远循环,永远不会接受或拒绝它。
另一方面,如果宇宙是停止所有输入的TM,那么你的答案是正确的。另一方面,如果Universe都是二进制字符串,那么除非每个可能的二进制字符串都是编码中某些TM的有效编码,否则您的答案将是错误的。如果某些编码不是有效的TM,那么它们也需要属于L
的补码。