Domanda

In Michael Sipser's Introduction to the Theory of Computation, he states:

"some languages are not decidable or even Turing recognizable, for the reason that there are uncountably many languages yet only countably many Turing machines. Because each Turing machine can recognize a single language and there are more languages than Turing machines, some languages are not recognized by any Turing machine" (178).

Isn't a Turing machine a hypothetical machine that can simulate any computer algorithm? And aren't there theoretically an infinite number of algorithms you could come up with? I'm having trouble wrapping my head around this concept. An 'explain like I'm 5' answer would be greatly appreciated, but of course any help is better than none.

È stato utile?

Soluzione

There are a countable number of Turing machines. That doesn't mean there's a finite number. The set of Turing machines is countably infinite, which means that Turing machines can be numbered using natural numbers. That is you can create a 1-to-1 mapping between natural numbers and Turing machines.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top