537 views
5 votes
5 votes

Which of the following languages is/are recursively enumerable but not recursive? Here, $\langle M \rangle$ denote an encoding of Turing machine $M.$ (Mark all the appropriate choices)
  1. $L = \{\langle M \rangle\mid L(M) = \emptyset\}$
  2. $L = \{\langle M \rangle\mid L(M) = \Sigma^*\}$
  3. $L = \{\langle M \rangle\mid |L(M)| = 2(\text{ number of strings in L(M) is 2)}\}$
  4. $L = \{\langle M,w \rangle\mid w \in L(M)\}$

2 Answers

Best answer
6 votes
6 votes

A is not even recursively enumerable as per Rice's theorem part 2. $L_{yes} = \{\}$ and $L_{no}$ can be any other set making $L_{yes}$ a strict subset of $L_{no}$ and thus $L$ is a non-monotonic property of language of Turing machines making it not even recursively enumerable (not even semi-decidable).

For B  we cannot apply Rice's theorem part 2 but via reduction this can be shown as not recursively enumerable. Reference: https://gateoverflow.in/79/l-m-%CF%83

C is also not recursively enumerable. We can take $L_{yes} = \{0, 1\}$ and $L_{no} = \{0,1, 00\}$ making $L_{yes}$ a strict subset of $L_{no}$ and thus $L$ is a non-monotonic property of language of Turing machines making it not even recursively enumerable (not even semi-decidable).

D is the acceptance problem for Turing machines. This is semi-decidable (L is recursively enumerable) as we can simulate $w$ on $M$ and if $M$ accepts $w$ we output "yes" making the problem semi-decidable. If $M$ goes to an infinite loop on $w$, we cannot output anything and that's why the problem is not decidable (L is not recursive).

Thus, only D is recursively enumerable.

selected by
0 votes
0 votes

Options A and B are NOT-RE, 

I have mentioned the reason in this question → https://gateoverflow.in/346934

Now let’s talk about Options C and D.

The question is asking for RE but not REC, which means we must HALT for members, but we are not sure for non-members.

Now in Option C, the size of L(M) is 2, which means with dovetailing we can say whether it’s RE but not REC or not.

By running our TM for all strings as followed using the dovetailing method and stop at that point where we have 2 strings accepted.

Hence its REC.. which is not what asked in question.

but, in Option D → we can say for members 100%. but for non member even with dovetailing, we can’t say anything.

 

Edit : Option C's explanation is slightly wrong. Read my comment below for the correct one.

edited by
Answer:

Related questions