是否有任何不可计算的可数集合?


15

如果集合具有自然数的双射数,则该集合是可计数的;如果存在枚举其成员的算法,则该集合可计算的(ce)

由于我们可以从枚举构造双射,因此任何非有限的可计算枚举集都必须是可数的。

是否有一些不可计算的可数集示例?也就是说,存在该集合与自然数之间的双射,但是没有算法可以计算该双射。


1
预先设定的术语可以计算得出。许多人会说“可数”和“可数”是同义词。我相应地编辑了问题。
安德烈·鲍尔

@AndrejBauer,可计算和递归是同义词,对吗?
rus9384

1
@ rus9384是的。关于词汇,如罗伯特·欧文·索亚尔(Robert Irving Soare)在《图灵后相对论可计算性和交互式计算》(2011)中所写:到那时
David Tonhofer

Answers:


23

有没有不可枚举的可数集的示例?

是。自然数的所有子集都是可数的,但并非所有数字都是可数的。(证明:子集数量众多,  但图灵机可以用作枚举器的数量却不计其数。)因此,您已经知道不可递归枚举的N的任何子集  就是一个例子–例如所有编码图灵的数字的集合每次输入停止的机器。NN


3
@JorgePerez
David Richerby

3
这证明存在,但不举一个例子..
BlueRaja -丹尼Pflughoeft

2
@ BlueRaja-DannyPflughoeft,举一个例子与列举一个例子相同。“你能举一些你不能举的例子吗?不?所以没有什么你不能举一个例子的。” 简而言之,这就是数学建构主义。
通配符

2
繁忙的海狸功能的图像会是这样的集合吗?由于Σ严格增加,因此它很容易与N形成双射,但是没有图灵机可以枚举ΣΣΣñΣ
orlp

7
@Wildcard不,举一个例子与定义一个例子是一样的,不是吗?有可以定义但不能由算法枚举的集合,例如所有不停止的图灵机的集合。
Tanner Swett

17

是的,每种不确定(非决定性)语言都具有此属性。

例如,考虑集合L={(x,M)M does not halt on input x}

假设我们有一种算法可以枚举此集合的成员。如果存在这样的算法,我们可以使用以下算法来解决输入的停止问题:x,M

  • 在运行机器x上连续执行n个步骤,并枚举L的n个成员。MnxnL

停止或不停止 x。如果它停止,最终我们将在达到停止状态的位置找到 n。如果它没有停止,那么最终我们将在枚举中达到M x Mxn(M,x)

因此,我们有一个约简,我们可以得出结论,不存在这种枚举。

请注意,此类枚举可存在于半确定性问题中。例如,您可以通过枚举步后枚举所有Turing Machine执行的所有可能轨迹来枚举所有暂停机器输入对的集合,并过滤掉未处于暂停状态的机器。 n


难道没有复杂性无法计数的语言吗?
rus9384

@ rus9384我不确定您的意思。“不可数”是度量大小;“复杂性”是衡量决策难度的一种度量。但是没有有限字符串的不可数语言:如果您希望一种不可数的语言,则必须允许无限字符串(或不可数的“字母”,或两者都允许)。
David Richerby

@DavidRicherby,好吧,jmite声称每个不确定的问题都使用有限的字符串进行运算吗?我认为,这仅适用于每个图灵可识别的不确定问题。
rus9384

@ rus9384有限字母上的任何语言都是可数的,并且可计算性通常会忽略无限字母。另请参阅此问题
jmite

1
@ rus9384是的,语言是在有限字母上的一组有限字符串。任何这样的事情都是可数的。如果要获得一种不可数的语言,则需要从该定义中删除“有限”的一个或两个实例。但是,如果有人只是说“语言”,则表示在某些有限字母上的一组有限字符串。
David Richerby

7

在可计算性理论,我们处理的子集,其中Σ = { 0 1 }。这种语言是可数无穷的,所以任何集大号⊆ Σ *是可数的。此外,有许多不确定的但递归可枚举的语言,其补语不可递归可枚举。这些语言是∗的子集,因此是可数的。ΣΣ={01个}大号ΣΣ


我们不一定要处理二进制字符串。在很多情况下,我们可能会对字符串而不是其他字母感兴趣,而那些将可计算性称为“递归理论”的人倾向于直接处理自然数集。(也就是说,数字本身被视为原始数字,而不是被编码为例如二进制字符串。)
David Richerby

@DavidRicherby几周前,您在Yuvals答案的评论中向我提出了相反的要求。这不是第一个类似的情况。
fade2black

Yuval发布了很多答案,我发布了很多评论,因此您必须更加具体。我当然支持我的上述评论,因此,如果我在某个时候说了相反的话,那么我要么错了,要么感到困惑,或者您误解了我,或者我在谈论某些特定的情况或类似的情况。如果您感到困惑,对不起,尤其是我说了不清楚或不正确的话!
David Richerby

2
@DavidRicherby,实际上每个有限字母都可以简化为二进制,所以,我不知道这有什么用。还是在这种情况下我们有无数个无限字母(每个数字都有唯一的符号)?
rus9384

{01个}
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.