问题 多个无限级别[关闭]


一些程序员认为理论CS课程(特别是我的学生)并没有多大意义。这是我发现非常相关的东西。让我为那些以前没见过的人建造它们......

A)编程问题可以重写为有关语言的问题。

B)图灵机识别语言。

C)图灵机可以编码为(大)整数。

D)因此,可能的图灵机的数量是无穷无尽的

E)集合的幂集只是该集合的所有可能子集。

F)如果一个集合是无穷无尽的,它的功率集更大,即无数无限。

G)因此,如果一种语言是无限的,它就有无数无数的子集。这些都代表了一个问题。但是,只有很多图灵机可以解决这些问题。如果我们用图灵机无法解决问题,就无法解决。

结论......我们只能解决所有问题的无限小部分。

我的问题几乎就在这里......

每当我向学生提出这个论点时,他们就会陷入可数与无数无限之间。他们通常没有很强的数学背景,所以试图通过康托尔的对角化论证来解释他们的眼睛会釉。

通常我试着给他们一些他们可以抓住的东西,比如这样......在计数数字线的任何部分放置一个有限的盒子,我们捕获有限数量的那些数字......但是在有限的数量上放置一个有限的盒子。实数行,我们捕获无限数量的实数。有证据表明存在的实数比计数数字多。

最后我的问题......你如何向那些从未听说过这个概念的人解释多层无穷大的概念,而且可能不是数学倾向的?

最终编辑:我通过提出这个问题了解了很多,并且我很感激反馈。我浪费了太多时间试图找出“社区维基”究竟是什么。我了解到,有些人反对理论问题存在固有的偏见,我认为这只是一个错误,因为我们今天做的很多事情都是昨天的理论。但这种偏见是自然的,虽然我不同意理论的价值,但我对它没有任何问题,这有助于我理解我的学生来自哪里。我认为BS评论是不必要的。

我觉得这个问题根本不是民意调查或2009年的问题。那些只想要编码问题和编码答案的人可能想重新审视这个要求。我已将此问题移至社区维基,但强烈认为我不得不通过不当使用武力来这样做。


12313
2018-06-16 00:52


起源

我想我应该研究“社区维基”,但尊敬地说,我提出了一个问题,并对这个问题的解决方案感兴趣。它在多个方面是一个编程问题。我没有看到它比大多数关于如何解决问题的SO问题更主观。 - RAL
作为社区维基更好,因为没有代码,IMO。 - S.Lott
理论问题是二等公民?您是否知道最近发现质数的求解是O(n ^ 12)?我认为这是高度理论化的,与程序员非常相关。顺便说一下,为什么在这么多答案中使用了大哦符号呢?真的不确定为什么这是一个问题...... - RAL
我没有说这不是一个有趣的问题,我说这不是一个编程问题。 CS理论化和日常编程都很有趣,也很重要,但它们并不是一回事。 - Matthew Flaschen
Stack Overflow专门编写可回答的编程问题。不幸的是,这个问题本质上是一个数学教育问题(不是编程相关),需要一个主观答案,以便“正确答案”或“最佳答案”是不可能的。提问者和回答者应该意识到,这可能导致答案质量差,对答案的主观/不一致投票(好的答案没有浮动到顶部)。 - Wesley


答案:


我认为你的解释是最简单的,因为这就是我所学到的。这几乎就像实数具有多个无穷大维度一样。它在一个方向上是无限的,但在另一个方向上也是如此

对角化是一个非常酷的实验,但我可以看到它可能会超过初学者的头脑。它确实有意义,如果以非常慎重的方式展示,那么进展非常缓慢。我想,快速抛出数字可能很难实现。

我认为的原则 连续体的基数 也很有用,虽然也许可以简化到初学者水平。表明除了简单的真实与整数之外还有更多可能有助于“点击”的东西。


2
2018-06-16 01:53





我建议向有限数学背景的人教授无限级别的第一步是“为什么数学家说偶数和一组整数都是相同的大小?”这引入了“如果你可以将集合A的每个成员与集合B中的一个成员完全关联,那么数学家就说这些集合具有相同的大小。”接下来显示使用对角线方法可以将每个分数(每个有理数)与一个计数数相关联。一旦他们对此感到满意,我就会调出π,每个人都知道它的十进制表达式中有无数个非重复数字,这意味着它不能表示为分数,因此它将被遗留,这意味着无理数集合大于计数数字集合。如果你在基数π中工作,一些明智的人会反对π具有有限数字的数字,即1π,但你可以回答他们“好吧,brainiac,记下一周内基数π的天数。”


6
2018-06-16 00:54



我打算沿着这些方向说些什么,这可能是概念化它的最简单方法。这个词当然是1-1对应。你可以“配对”这些数字吗?我将从整数数字开始,并展示如何建立与每个超集的对应关系,直到你到达Reals。 - Chet


哪个是“非常相关”的部分?

编辑: 好吧,我已经专业编写了13年的代码,我不会把无限级别称为与我曾经做过的任何事情相关的无限级别。

我想我会从你的理论中得出一个不同的结论。如何“我们只能解决所有问题的无限小部分”我们的技术极限?

对我来说听起来像是无数(可数或不可数似乎没有什么区别)问题的数量。因此我们的工艺是无限的 - 我们永远不会遇到问题需要解决。


3
2018-06-16 01:12



我认为程序员会发现知道他的技术极限是相关的。 - RAL
“从理论上讲,理论与实践之间没有区别;但在实践中,存在差异。”这句话肯定有一些道理,但这并不意味着与理论合作不是一个好的练习,也不是一个无用的练习。缓解解决现实世界问题所需的批判性和抽象性思维是非常重要的。 - Sufian
@Robert,一点,是的(个人而言,我认为你通过了那一点,但我只是一个人,我以前错了 - 只要问我的妻子)。建造者不需要知道原子如何能够建造房屋。 - paxdiablo
@Pax,thx的赞美?呵呵,但我真的很想知道,所以我可以帮助更多学生理解无用的理论。我的姐夫向他的孩子介绍了尽可能多的运动,因为不可能提前知道他们最喜欢哪一种。 - RAL
@Sufian:发现那句话是真的只是意味着一个人的理论不够好:) - AakashM


英语中有几万个单词。您可以计算书中的单词数或Universe中的书数。你无法计算将要出现的书籍数量


2
2018-06-16 00:50



太好了!谢谢! - RAL
这是向不理解数学的人解释它的最简单方法。 - David Basarab
但是,假设每本书占用至少一个原子,最多可以有10 ^ 80本书;-) - Jonas Kölker
问题在于它将可数无数的书籍连接起来,而这些书籍的概念将超过可数。 (计算书籍的策略:完成日期) - gha.st
@Eric,这个例子有点误导。可写的英文书籍集是无限的,但可数。您可以轻松创建一个规则,在任何给定的英语书籍和整数之间设置一对一的对应关系。 - Igor Krivokon


原谅下面写得不好的比喻。

我个人认为可数性/不可数性二分法与芝诺的箭头悖论密切相关。

所有自然数的集合都是可数的,有一种生成“下一个”整数的特定方法,它会让你向前迈进一步。在这个意义上,可数集是向前移动的。它几乎就像它有一个 速度它继续向前发展。


所有实数的集合都是不可数的,比如 zeno的箭头

如果你必须在原点(0)和目的地之间移动(1 == 2-0),你必须首先通过中点(1/2 == 2-1)。

现在你的目的地是1/2;如果必须在原点(0)和(1/2)之间移动,则必须经过中点(1/4 == 2)-2

所以等等,所以要介于0和1之间,你必须首先介于两者之间的某个东西之间,你必须先介于两者之间。没有有限的方法来计算“下一步”,所以 速度 (与自然数的速度相反)并不存在,你的下一步不会带你到任何地方。

编辑:

我现在意识到这可能与自然数集的总排序和映射到任何可数集都有关。 如果你不能完全订购集合中的项目,或者你不能创建一个方法来确定集合中的下一个项目,那么它很可能是不可数的。


1
2018-06-16 06:59





G)因此,如果一种语言是无限的,它就有无数无数的子集。 这些都代表了一个问题。

引文需要。你不能仅仅假设任何(可能是无限的)图灵机必然代表一个独特的“问题”。至少,你必须(单独)将“问题”的定义正式化,就像图灵机正式化一样。


1
2018-06-16 02:19



是的,这是一个以图灵为中心的。向我展示一种语言(子集),然后编写一个识别它的有限状态机(解决问题)。这是否是一个有用的问题是另一个故事。 - RAL


程序员(或者至少是我自己)通常不必以这种方式担心无限。当你在一个有限的盒子上放置一个有限的盒子 机器可表示 实数行你得到一个 有限 实数的数量。 =)

例如,a 双精度变量 具有有限数量的可能值:2 ^ 64。


0
2018-06-16 01:28



哇!我真的觉得被劫持:(你能提供一个指导链接,我没有得到有用的信息,谢谢。 - RAL
@Robert Lamb,当代计算机的算术单元用有限的有理数表示实数。 - Thomas L Holaday
我们现代计算机的有限界限越来越接近无限,虽然理论上它永远不会到达那里。了解在非常远的地方发生的事情对于理解现实世界中的缩放至关重要。你想在n ^ 2或log(n)上向无穷大扩展吗? - Kekoa


这是一个可计算问题的例子:在国际象棋比赛开始时,白方是否有可能取得胜利?

可能的移动和反向移动的数量是有限的。我们所要做的就是建造树木并修剪它们。我们还没有这样做,只是因为目前的技术需要数十亿年。

以下是无法计算的问题示例:给定场景的二维视图,构建场景的完整三维模型。

我们一直这样做。 (在门上设一个带窥视孔的房间。有人提供它。透过洞洞来描述你看到的一切。)

我们不计算不可计算的。我们产生一个近似结果(就像我们计算和使用pi的近似值,另一个不可计算的数字)。随着更多信息的出现,我们不断更新结果。这就是视错觉的全部内容。当你看到“一个花瓶,或者它是两个面孔?”的图片时。你的视觉系统说:“这是一个花瓶。不。等等。这是两张脸。不。等等。这是一个花瓶。”你看到它在两种解释之间来回切换。

仅仅因为某些东西不可计算是没有理由不这样做的。


0





结论......我们只能解决所有问题的无限小部分。

你必须是网页设计师。


-5



不是一个真正的答案 - SingleNegationElimination