CS 381 Homework #13 Problem 1
Question 9.3.7
Since we are trying to prove the following to be nonRE, we reduce a known problem which is non
RE to the given problems.
a)
http://wwwdb.stanford.edu/~ullman/ialcsols/sol9.html#sol93
We reduce the complement of
L
u
to this problem, which is the complement of the halting problem
for Turing Machines. The crux of the argument is that we can convert any TM
M
into another TM
M'
, such that
M'
halts on input
w
if and only if
M
accepts
w
. The construction of
M'
from
M
is as
follows:
1.
Make sure that
M'
does not halt unless
M
accepts. Thus, add to the states of
M
a new state
p
,
in which
M'
runs right, forever; i.e.,
(p,X) = (p,X,R)
for all tape symbols
X
. If
M
would halt
without accepting, say
(q,Y)
is undefined for some nonaccepting state
q
, then in
M'
, make
(q,Y) = (p,Y,R)
; i.e., enter the rightmoving state and make sure
M'
does not halt.
2.
If
M
accepts, then
M'
must halt. Thus, if
q
is an accepting state of
M
, then in
M'
,
(q,X)
is
made undefined for all tape symbols
X
.
3.
Otherwise, the moves of
M'
are the same as those of
M
.
The above construction reduces the complement of
L
u
to the complement of the halting problem.
That is, if
M
accepts
w
, then
M'
halts on
w
, and if not, then not. Since the complement of
L
u
is non
RE, so is the complement of the halting problem.
b)
Solution is similar in spirit to 9.3.4(d), proving
L(M)
=
L(M)
R
is nonRE
We reduce the problem
L
e
(does a TM accept the empty language?) to the problem
L(M
1
)
L(M
2
)
=
0. Given any TM
M
, we convert it into 2 other TMs
M
1
M
2
(with
M
1
being nondeterministic),
such that
L(M
1
)
L(M
2
)
= 0 if and only if
M
accepts the empty language. If
M
accepts the empty
language, we make
M
1
M
2
accept the empty language as well (giving
L(M
1
)
L(M
2
)
= 0). Else if
L(M)
±
0, then we make
This preview has intentionally blurred sections. Sign up to view the full version.
View Full Document
This is the end of the preview.
Sign up
to
access the rest of the document.
 Fall '05
 HOPCROFT
 Halting problem, Alan Turing

Click to edit the document details