0% found this document useful (0 votes)
92 views

4.introduction To Undecidability

The document discusses undecidable problems in computation theory. It introduces the concepts of decidable and undecidable problems, with undecidable problems having no definitive "yes" or "no" answer. As an example, it proves the universality problem Lu is undecidable by assuming it is decidable and reaching a contradiction. It then discusses how reductions can be used to prove other problems are undecidable or non-computable if they reduce to known undecidable problems. Specifically, it states that if problem P1 reduces to problem P2, then if P1 is undecidable/non-computable, so is P2.
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
92 views

4.introduction To Undecidability

The document discusses undecidable problems in computation theory. It introduces the concepts of decidable and undecidable problems, with undecidable problems having no definitive "yes" or "no" answer. As an example, it proves the universality problem Lu is undecidable by assuming it is decidable and reaching a contradiction. It then discusses how reductions can be used to prove other problems are undecidable or non-computable if they reduce to known undecidable problems. Specifically, it states that if problem P1 reduces to problem P2, then if P1 is undecidable/non-computable, so is P2.
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 2

Introduction to Undecidability

In the theory of computation, we often come across such problems that are answered either
'yes' or 'no'. The class of problems which can be answered as 'yes' are called solvable or
decidable. Otherwise, the class of problems is said to be unsolvable or undecidable.

Undecidability of Universal Languages:


The universal language Lu is a recursively enumerable language and we have to prove that
it is undecidable (non-recursive).

Theorem: Lu is RE but not recursive.

Proof:

Consider that language Lu is recursively enumerable language. We will assume that Lu is


recursive. Then the complement of Lu that is L`u is also recursive. However, if we have a
TM M to accept L`u then we can construct a TM Ld. But Ld the diagonalization language is
not RE. Thus our assumption that Lu is recursive is wrong (not RE means not recursive).
Hence we can say that Lu is RE but not recursive. The construction of M for Ld is as shown in
the following diagram:

Undecidable Problem about Turing Machine


In this section, we will discuss all the undecidable problems regarding turing machine. The
reduction is used to prove whether given language is desirable or not. In this section, we
will understand the concept of reduction first and then we will see an important theorem in
this regard.
Reduction
Reduction is a technique in which if a problem P1 is reduced to a problem P2 then any
solution of P2 solves P1. In general, if we have an algorithm to convert an instance of a
problem P1 to an instance of a problem P2 that have the same answer then it is called as P1
reduced P2. Hence if P1 is not recursive then P2 is also not recursive. Similarly, if P1 is not
recursively enumerable then P2 also is not recursively enumerable.

Theorem: if P1 is reduced to P2 then

1. If P1 is undecidable, then P2 is also undecidable.


2. If P1 is non-RE, then P2 is also non-RE.

Proof:

1. Consider an instance w of P1. Then construct an algorithm such that the algorithm
takes instance w as input and converts it into another instance x of P2. Then apply
that algorithm to check whether x is in P2. If the algorithm answer 'yes' then that
means x is in P2, similarly we can also say that w is in P1. Since we have obtained
P2 after reduction of P1. Similarly if algorithm answer 'no' then x is not in P2, that
also means w is not in P1. This proves that if P1 is undecidable, then P1 is also
undecidable.
2. We assume that P1 is non-RE but P2 is RE. Now construct an algorithm to reduce P1
to P2, but by this algorithm, P2 will be recognized. That means there will be a Turing
machine that says 'yes' if the input is P2 but may or may not halt for the input which
is not in P2. As we know that one can convert an instance of w in P1 to an instance x
in P2. Then apply a TM to check whether x is in P2. If x is accepted that also means
w is accepted. This procedure describes a TM whose language is P1 if w is in P1 then
x is also in P2 and if w is not in P1 then x is also not in P2. This proves that if P1 is
non-RE then P2 is also non-RE.

Empty and non empty languages:


There are two types of languages empty and non empty language. L et Le denotes an empty
language, and Lne denotes non empty language. Let w be a binary string, and Mi be a TM. If
L(Mj) = Ф then Mi does not accept input then w is in Le. Similarly, if L(Mj) is not the empty
language, then w is in Lne. Thus we can say that

Le = {M | L(M) = Ф}
Lne = {M | L(M) ≠ Ф}

Both Le and Lne are the complement of one another.

You might also like