Recursion Theorem and c.e. sets

In summary, we have proven that M is infinite and does not contain any infinite c.e. subset. This was achieved by using the Recursion Theorem and assuming the existence of a one-to-one computable function f. However, this assumption leads to a contradiction, showing that M does not have any c.e. subset.
  • #1
jgens
Gold Member
1,593
50
Let [itex]\varphi_e[/itex] denote the p.c. function computed by the Turing Machine with code number [itex]e[/itex]. Given [itex]M=\{x : \neg(y<x)[\varphi_y=\varphi_x]\}[/itex] prove that [itex]M[/itex] is infinite and contains no infinite c.e. subset.

I have already proved that [itex]M[/itex] is infinite. A necessary and sufficient condition to prove that [itex]M[/itex] has no c.e. subset is that given any one-to-one computable function [itex]f[/itex] it follows that [itex]f(\omega) \nsubseteq M[/itex]. One way to demonstrate that this holds is to use the Recursion Theorem to show that there is some index [itex]x_0[/itex] such that [itex]\varphi_{x_0}=\varphi_{f(x_0)}[/itex] but [itex]x_0 < f(x_0)[/itex]. I am having trouble doing this however and was wondering is someone here could help.

I think that this is the right way to approach the problem since the text suggested we use the Recursion Theorem to tackle it.
 
Physics news on Phys.org
  • #2
Let's start by assuming that there exists a one-to-one computable function f such that f(\omega) \subseteq M. This means that for every x \in \omega, there exists some y \in f(\omega) such that \varphi_y = \varphi_x. We can use the Recursion Theorem to construct a Turing Machine with code number e such that \varphi_e = \varphi_{f(e)}. Now, since f is one-to-one, there exists some x_0 \in \omega such that f(x_0) = e. This means that \varphi_{x_0} = \varphi_{f(x_0)} = \varphi_e. However, since x_0 \in \omega and f(\omega) \subseteq M, we have x_0 \in M. This means that \varphi_{x_0} = \varphi_x for some x \in M. But since x_0 < f(x_0) = e, this contradicts the definition of M. Therefore, f(\omega) \nsubseteq M and M does not have any c.e. subset.
 

FAQ: Recursion Theorem and c.e. sets

1. What is the Recursion Theorem and why is it important in computability theory?

The Recursion Theorem is a fundamental concept in computability theory that states that any computable function can be computed by a computer program, and that this program can be modified to compute any other computable function. This is important because it provides a foundation for understanding the limits and capabilities of computable functions and sets.

2. What are c.e. sets and how do they relate to the Recursion Theorem?

c.e. (computably enumerable) sets are sets of numbers that can be effectively enumerated by an algorithm. The Recursion Theorem shows that any c.e. set can be computed by a computer program, further illustrating the power and universality of the concept.

3. How does the Recursion Theorem differ from the Halting Problem?

The Recursion Theorem states that any computable function can be computed by a computer program, while the Halting Problem asks whether a computer program will eventually halt or run forever. The Recursion Theorem deals with the capabilities of a computer program, while the Halting Problem deals with its limitations.

4. Can the Recursion Theorem be used to prove the existence of uncomputable functions?

No, the Recursion Theorem only deals with computable functions and sets. Any uncomputable function cannot be computed by a computer program, and thus cannot be proven to exist using the Recursion Theorem.

5. Are there any real-world applications of the Recursion Theorem?

The Recursion Theorem is primarily a theoretical concept in computability theory, but it has applications in fields such as computer science and artificial intelligence. It also helps to provide a deeper understanding of the capabilities and limitations of computers and their programs.

Similar threads

Replies
11
Views
840
Replies
1
Views
1K
Replies
1
Views
2K
Replies
16
Views
2K
Replies
6
Views
2K
Replies
0
Views
622
Back
Top