HiveBrain v1.2.0
Get Started
← Back to all entries
patternMinor

The Church-Turing-Thesis in proofs

Submitted by: @import:stackexchange-cs··
0
Viewed 0 times
thethesischurchturingproofs

Problem

Currently I'm trying to understand a proof of the statement:

"A language is semi-decidable if and only if some enumerator enumerates it."

that we did in my lecture. One direction of the proof goes as follows:

Let E be an enumerator that enumerates L. We construct a TM M, that semidecides L in the following way:

Given an input string x, we design M in the following way :

  • Run E to enumerate the next string y of L. Compare it with x.



  • If x=y accept, else goto 1



Am I right if I say, that it is sufficient to just name an algorithm to prove the existence of such a TM M because of the Church-Turing-Thesis?
Furthermore is there anything to take care of when constructing an algorithm in such a context as not to hurt the "definition" of intuitively computable?

Thanks for any answers.

Solution

A Turing machine provides a formal definition of a "computable" function, while the Church-Turing-Thesis says that intuitive notion of "computable" coincides with the formal definition of "computable", i.e., all functions computable by TMs. This is just a hypothesis, and it is up to you to believe or not.

When we describe a procedure in order to show that some function is computable (or problem is solvable) we usually describe it at a high level, to avoid long and tedious rigorous formal details. So, you are right that "it is sufficient to just name an algorithm to prove the existence of such a TM M because of the Church-Turing-Thesis". In other words, first we informally describe a procedure using English, and then since we believe in correctness of the the Church-Turing-Thesis we conclude that the function is computable.

Another example is computing $\pi(n)-$ the $n$th digit of the decimal expansion of $\pi$. Intuitively, we can draw a circle, measure its circumference and radius, and divide the circumference by two times the radius. But this method is not suitable to implement on a computer. The Turing-Church thesis says this function is indeed computable on a Turing machine. For example, $\pi(n)$ might be computed using Taylor series.

As for the wrong usage of the thesis, usually the error may lay in a wrong assumption. For example, the following wrong procedure may seem to decide the Halting problem:

Let L be the Halting Problem language
IsHalt(W,w)
  Recursively enumerate elements of L and complement of L 
  and process one element from each set at a time
  If  is in one of them then depending in what set  is 
  return true or false


Since we loop on both $L$ and $\overline{L}$, and we enumerate each element of these sets, the procedure eventually must halt with true or false. But the wrong part is that we assumed the $\overline{L}$ is r.e.

Code Snippets

Let L be the Halting Problem language
IsHalt(W,w)
  Recursively enumerate elements of L and complement of L 
  and process one element from each set at a time
  If <W,w> is in one of them then depending in what set <W,w> is 
  return true or false

Context

StackExchange Computer Science Q#81091, answer score: 5

Revisions (0)

No revisions yet.