图灵完备是什么意思?
你能不能给出一个简单的解释,而不是过多的理论细节?
图灵完备是什么意思?
你能不能给出一个简单的解释,而不是过多的理论细节?
当前回答
Brasilford教授在这段视频中对所解释的内容进行了超级简短的总结。
图灵完备≅做图灵机能做的任何事情。
它具有条件分支(即。“如果声明”)。此外,暗示“go to”,因此允许循环。 它获得程序所需的任意数量的内存(例如足够长的磁带)。
其他回答
这是最简单的解释
艾伦·图灵创造了一台机器,它可以接收程序,运行程序,并显示结果。但是他必须为不同的程序创造不同的机器。所以他发明了“通用图灵机”,可以接收并运行任何程序。
编程语言类似于这些机器(尽管是虚拟的)。他们获取程序并运行它们。现在,一种编程语言被称为“图灵完备”,如果它可以运行图灵机在足够的时间和内存下可以运行的任何程序(无论哪种语言)。
例如:假设有一个程序需要10个数字并将它们相加。图灵机可以很容易地运行这个程序。但是现在想象一下,由于某种原因,您的编程语言不能执行相同的加法。这将使它成为“图灵不完整”(可以这么说)。另一方面,如果它能运行通用图灵机能运行的任何程序,那么它就是图灵完备的。
大多数现代编程语言(如Java、JavaScript、Perl等)都是图灵完备语言,因为它们都实现了运行程序所需的所有功能,如加法、乘法、if-else条件、返回语句、存储/检索/擦除数据的方法等等。
更新:你可以在我的博客文章中了解更多:“JavaScript是图灵完备的”-已解释
用最简单的术语来说,图灵完备系统可以解决任何可能的计算问题。
关键要求之一是便签大小不受限制,并且可以倒带访问之前对便签的写操作。
因此在实践中没有一个系统是图灵完备的。
相反,有些系统通过对无界内存建模并执行任何可能的计算来接近图灵完备性。
图灵机要求任何程序 能进行条件测试。这是最基本的。
考虑到一个播放器钢琴卷。钢琴播放器可以 演奏一段非常复杂的音乐, 但是从来没有任何条件逻辑 音乐。它不是图灵完备的。
条件逻辑既是力量也是 图灵完备机器的危险
钢琴的滚动每次都保证会停止。 对于TM来说,没有这样的保证。这 被称为“停止问题”。
从根本上讲,图灵完备性是一个简洁的要求,即无界递归。
甚至不受记忆的限制。
我是独立思考的,但这里有一些关于这个论断的讨论。我对LSP的定义提供了更多的上下文。
这里的其他答案并没有直接定义图灵完备性的基本本质。
在大多数程序员熟悉的实际语言术语中,检测图灵完整性的通常方法是该语言是否允许或允许模拟嵌套的无界while语句(与具有固定上界的pascal风格for语句相反)。