Let
- $A = \mathrm{R}$ be the set of all languages that are recursive,
- $B = \mathrm{RE} \setminus \mathrm{R}$ be the set of all languages that are recursively enumerable but not recursive and
- $C = \overline{\mathrm{RE}}$ be the set of all languages that are not recursively enumerable.
It is clear that for example $\mathrm{CFL} \subseteq A$.
What is a simple example of a member of set B?
What is a simple example of a member of set C?
In general, how do you classify a language as either A, B or C?
Asked By : Andrew Tomazos
Answered By : David Lewis
You can choose the language of the halting problem
$\qquad \displaystyle B_1 = \{\langle T \rangle \mid T \text{ halts on } \langle T \rangle\} \in B$
and its complement
$\qquad \displaystyle C_1 = \overline{B_1} \in C$.
This is fairly standard material. The proof for $B_1$ not being recursive is the well-known diagonalization. Proving $B_1$ to be RE (recursively enumerable) is a tad tricky, involving interleaved simulation of multiple TMs, but is widely documented. If $C_1$ were RE, then $B_1$ being RE would imply that both are recursive; hence $C_1$ is not RE. This illustrates some of the techniques for such proofs in general.
Best Answer from StackOverflow
Question Source : http://cs.stackexchange.com/questions/2304
0 comments:
Post a Comment
Let us know your responses and feedback