Unit - V
Unit - V
Unit - V
D. Jagadeesan
Undecidability
Basic Definition
Recursive Language
A language is recursive if there exists a Turing Machine that accepts every string of the language and reject every string that is not in the language. w
Yes No
A language is recursive enumerable if there exists a Turing Machine that accepts every string of the language and does not accept strings that are not in the language. The strings that are not in the language may be rejected and it may cause the TM to go to an infinite loop. w
Basic Definition
Decidability
A language is decidable (recursive) if and only if there is a TM M such that M accepts every string in L and rejects every string not in L or A problem whose language is recursive is said to be a decidable.
Example :
Basic Definition
Undecidability
A
problem is undecidable, if there is no algorithm, that can take as input an instance of the problem and determines whether the answer to that instance is Yes or No. Given a TM M and an input string w, does M halt on input w? (Halting Problem) For a fixed machine M, given an input string w, does M halt on input w?
Example :
Union of two recursive languages is recursive. Union of two recursive enumerable languages is also recursively enumerable. Complement of a recursive language is recursive. L if L and complement of L (L) are recursively enumerable is recursive.
Proof :
Let L be a recursive language. Then there exists a TM M that halts on every string on L. L = * - L
Since L is recursive there is an algorithm (TM M) to accept L. Now construct an algorithm (TM M) for L is as follows.
Yes No
Yes
No
If M halts without accepting the string, then M halts accepting that string and if M halts on accepting it, M enters into the final state without accepting it. Clearly L(M) is the complement of L and thus L is a recursive language.
Proof : Let L1 and L2 be recursive languages accepted by the TMs M1 and M2 respectively. Construct a new TM M which first simulates M1. If M1 accepts, then M accepts. If M1 reject, the simulates M2 and accepts if and only if M2 accepts. Thus M has both accepting and rejecting criterion. So, M accepts L1 U L2.
recursive w Yes No
M1w
M2
recursive
Yes
Yes recursive No
Proof : Let L1 and L2 be recursively enumerable languages accepted by the TMs M1 and M2 respectively. Construct a new TM M which simultaneously simulates M1 and M2 on different tapes. If M1 or M2 accepts, the M accepts.
recursively enumerable w
M1 M2
M
Yes
Yes
Yes
Recursive enumerable
recursively enumerable
Proof : Let M1 and M2 be the TMs designed for the languages L and L respectively. Construct a new TM M which simulates M1 and M2 simultaneously. If M accepts w if M1 accepts w, M rejects w if M2 accepts w.
M1 M2
M
Yes Yes
Recursive
Yes No
Proof : Let M1 and M2 be the TMs designed for the languages L and L respectively. Construct a new TM M which simulates M1 and M2 simultaneously. If M accepts w if M1 accepts w, M rejects w if M2 accepts w.
M1 M2
M
Yes Yes
Recursive
Yes No