Questions tagged [turing-completeness]

A language or system is Turing-complete if it can compute anything a Turing Machine can; one way to show this is by simulating a universal Turing machine. (Implementing lambda calculus also works.)

221 questions
73
votes
7 answers

Are there minimum criteria for a programming language being Turing complete?

Does there exist a set of programming language constructs in a programming language in order for it to be considered Turing Complete? From what I can tell from wikipedia, the language needs to support recursion, or, seemingly, must be able to run…
67
votes
14 answers

Is C actually Turing-complete?

I was trying to explain to someone that C is Turing-complete, and realized that I don't actually know if it is, indeed, technically Turing-complete. (C as in the abstract semantics, not as in an actual implementation.) The "obvious" answer…
TLW
  • 1,500
  • 1
  • 10
  • 16
43
votes
9 answers

Why are some programming languages Turing complete but lack some abilities of other languages?

I came across an odd problem when writing an interpreter that (should) hooks to external programs/functions: Functions in 'C' and 'C++' can't hook variadic functions, e.g. I can't make a function that calls 'printf' with the exact same arguments…
38
votes
5 answers

Can regular languages be Turing complete?

I was reading about Iota and Jot and found this section confusing: Unlike Iota, where the syntactic tree for a string can branch either on the left or on the right, Jot syntax is uniformly left-branching. As a result, Iota is strictly context-free,…
36
votes
5 answers

What does being Turing complete mean?

I see that most definitions of what it is to be Turing-complete are tautological to a degree. For example if you Google "what does being Turing complete mean", you get: A computer is Turing complete if it can solve any problem that a Turing machine…
sashoalm
  • 437
  • 1
  • 4
  • 9
29
votes
5 answers

Why are functional languages Turing complete?

Perhaps my limited understanding of the subject is incorrect, but this is what I understand so far: Functional programming is based off of Lambda Calculus, formulated by Alonzo Church. Imperative programming is based off of the Turing machine…
27
votes
7 answers

Are all turing complete languages interchangeable

Note, while I know how to program, I'm quite a beginner at CS theory. According to this answer Turing completeness is an abstract concept of computability. If a language is Turing complete, then it is capable of doing any computation that any…
27
votes
2 answers

How is the rule 110 Turing complete?

I've read the wikipedia page for rule 110 in cellular automata, and I more or less know how they work (a set of rules decides where to draw the next 1 or 0). I've just read they're Turing complete, but I can't even fathom how would you 'program' in…
25
votes
1 answer

Does a do-while loop suffice for Turing-completeness?

I know that, in imperative programming languages, a while-do loop is sufficient as a control flow construct to make the language Turing-complete (as far as control flow goes - of course we also need unbounded memory and certain operators...). The…
23
votes
2 answers

What makes PROLOG Turing-complete?

I know that it can be proven PROLOG is Turing-complete by constructing a program that simulates a Turing machine like this: turing(Tape0, Tape) :- perform(q0, [], Ls, Tape0, Rs), reverse(Ls, Ls1), append(Ls1, Rs, Tape). perform(qf, Ls,…
21
votes
2 answers

Universality of the Toffoli gate

Regarding the quantum Toffoli gate: is it classicaly universal, and if so, why? is it quantumly universal, and why?
Ran G.
  • 20,884
  • 3
  • 61
  • 117
20
votes
2 answers

Paradox? Pure Prolog is Turing-complete and yet incapable of expressing list intersection?

Pure Prolog (Prolog limited to Horn clauses only) is Turing-complete. In fact, a single Horn clause is enough for Turing-completeness. However, pure Prolog is incapable of expressing list intersection. (Disequality, dif/2, would allow it to do it,…
19
votes
4 answers

Connection between NAND gates and Turing completeness

I know that NAND gates can be used to create circuits that implement every truth table, and modern computers are built up of NAND gates. What is the theoretical link between NAND gates and Turing completeness? It seems to me that NAND gate circuits…
bsm
  • 363
  • 3
  • 7
19
votes
4 answers

What is required for universal analogue computation?

What operations need to be performed in order to do any arbitrary analogue computation? Would addition, subtraction, multiplication and division be sufficient? Also, does anyone know exactly what problems are tractable using analogue computation,…
17
votes
3 answers

Does the Turing test have anything to do with Turing completeness or Turing machines?

I am studying Turing machines and Turing completeness and just remembered I saw something called the Turing test. It seems that the Turing test (from Wikipedia) is a test of a machine's ability to exhibit intelligent behavior equivalent to, or…
Hang Chen
  • 335
  • 2
  • 6
1
2 3
14 15