666 views
6 votes
6 votes

Which of the following languages is/are recursive? Here, $\langle M \rangle$ denote an encoding of Turing machine $M.$ (Mark all the appropriate choices)

 

  1. $L = \{\langle M \rangle \mid M \text{ moves its head left on input } w\}$
  2. $L = \{\langle M,x \rangle \mid x \text{ is prefix of } \langle M \rangle\}$
  3. $L = \langle M \rangle \mid M \text{ does not accept any string }w \text{ such that }001\text{ is a prefix of } w\}$
  4. $L = \{\langle M \rangle \mid \text{ there exists a TM } M_0\text{ such that } \langle M \rangle \neq \langle M_0 \rangle \text{ and } L(M) = L(M_0)\}$

 

2 Answers

Best answer
9 votes
9 votes

A is recursive (decidable) as without doing a left move a Turing machine cannot do an infinite number of configurations and so we can always say "yes" or "no" after a finite number of moves.

B is just string comparison checking if $x$ comes as a prefix in the encoding of $M.$ Can be done with an LBA and hence $L$ is recursive.

C is a non trivial property of language of Turing machines and hence as per Rice's theorem $L$ is not recursive. Reference: https://gatecse.in/rices-theorem/.

D is saying for a given Turing machine we have another Turing machine which accepts the same language. This is true for any Turing machine and so $L$ accepts any Turing machine description making it regular (hence recursive too) as a valid Turing machine configuration can be detected using a finite automaton.

Correct answer: A; B; D.

selected by
1 votes
1 votes

Options A and B are on Machine so we can’t apply the Rice theorem to it.

So, we have to check manually → “best explanation by gatecse answer

Why Option C is false,

Reason → If you apply dovetailing, then within the finite time we can decide whether a string w belongs to language or not, but the twist is we have to check for all such w. which is infinite.

So, we can conclude that dovetailing can’t help us, hence Option C is not recursive.

Answer:

Related questions