图灵完备是什么意思?

你能不能给出一个简单的解释,而不是过多的理论细节?


当前回答

图灵机要求任何程序 能进行条件测试。这是最基本的。

考虑到一个播放器钢琴卷。钢琴播放器可以 演奏一段非常复杂的音乐, 但是从来没有任何条件逻辑 音乐。它不是图灵完备的。

条件逻辑既是力量也是 图灵完备机器的危险

钢琴的滚动每次都保证会停止。 对于TM来说,没有这样的保证。这 被称为“停止问题”。

其他回答

We call a language Turing-complete if and only if (1) it is decidable by a Turing machine but (2) not by anything less capable than a Turing machine. For instance, the language of palindromes over the alphabet {a, b} is decidable by Turing machines, but also by pushdown automata; so, this language is not Turing-complete. Truly Turing-complete languages - ones that require the full computing power of Turing machines - are pretty rare. Perhaps the language of strings x.y.z where x is a number, y is a Turing-machine and z is an initial tape configuration, and y halts on z in fewer than x! steps - perhaps that qualifies (though it would need to be shown!)

A common imprecise usage confuses Turing-completeness with Turing-equivalence. Turing-equivalence refers to the property of a computational system which can simulate, and which can be simulated by, Turing machines. We might say Java is a Turing-equivalent programming language, for instance, because you can write a Turing-machine simulator in Java, and because you could define a Turing machine that simulates execution of Java programs. According to the Church-Turing thesis, Turing machines can perform any effective computation, so Turing-equivalence means a system is as capable as possible (if the Church-Turing thesis is true!)

图灵等价比真正的图灵完备性更主流;这一点以及“完全”比“等效”短的事实可能解释了为什么“图灵完全”经常被误用为图灵等效,但我离题了。

关系数据库能否输入地点和道路的经度和纬度,并计算它们之间的最短路径?这是一个表明SQL不是图灵完备的问题。

但是c++可以做到,并且可以解决任何问题。事实就是这样。

从根本上讲,图灵完备性是一个简洁的要求,即无界递归。

甚至不受记忆的限制。

我是独立思考的,但这里有一些关于这个论断的讨论。我对LSP的定义提供了更多的上下文。

这里的其他答案并没有直接定义图灵完备性的基本本质。

正如韦伦·弗林所说:

图灵完备意味着它至少和图灵机一样强大。

我认为这是不正确的,如果一个系统和图灵机一样强大,那么它就是图灵完备的,即机器所做的每一个计算都可以由系统完成,而且系统所做的每一个计算都可以由图灵机完成。

用最简单的术语来说,图灵完备系统可以解决任何可能的计算问题。

关键要求之一是便签大小不受限制,并且可以倒带访问之前对便签的写操作。

因此在实践中没有一个系统是图灵完备的。

相反,有些系统通过对无界内存建模并执行任何可能的计算来接近图灵完备性。