edited by
763 views
3 votes
3 votes
Consider the following languages

A={<M>|M is a TM and |L(M)| >= 3}

B={<M>|M is a TM that accepts some string}

Which of the following is correct?

(a.) A is decidable, B is partially decidable

(b.) A is partially decidable, B is decidable

(c.) Both A and B are decidable

(d.) Both A and B are partially decidable

 

Answer given : (d.)

But how?
edited by

1 Answer

Best answer
7 votes
7 votes
A. Language of Turing machine contains at least 3 strings.

B. Language of Turing machine contains at least 1 string.

Both are non-trivial property of r.e. languages and hence undecidable as per Rice's theorem. Now, for semi decidability (answering for yes cases) of A, we can feed the Turing machine strings from $L$ one by one (using dovetailing technique to avoid any infinite loop for some string) and as long as the language is sure to contain at least 3 strings, it will eventually accept 3 distinct strings and we can stop. (If there are no such 3 strings, this technique goes to infinite loop and that is why we cannot completely decide this).  For B also do the same technique using replacing 3 with 1.

So, D choice.
selected by

Related questions

1 votes
1 votes
1 answer
1
0 votes
0 votes
2 answers
4
agoh asked Dec 8, 2016
439 views
L= {(M)| M is a TM and there exists an input w, |w| < 100, on which M halts}. Is L decidable?Please explain.