Prove that ETM is not recognizable. We use the fact

CSE 555 HOMEWORK TWO
DUE 16 FEBRUARY 2017, START OF CLASS
(1) Using the recursion theorem,
(a) Prove that ETM is not recognizable. We use the fact that ETM is recognizable,
and let T recognize it. Suppose to the contrary that ETM is recognizable and
let R recognize it. Then define the TM:
S = “On input x:
1. Obtain own description hSi.
2. Run R and T on hSi in parallel.
3. If R accepts, accept x. If T accepts, reject x.”
At least one of R and T must halt, but S contradicts the recognizers.
(b) Prove that ATM is not recognizable. We use the fact that ATM is recognizable,
and let T recognize it. Suppose to the contrary that ATM is recognizable and
let R recognize it. Then define the TM:
S = “On input x:
1. Obtain own description hSi.
2. Run R and T on hS, xi in parallel.
3. If R accepts, accept x. If T accepts, reject x.”
At least one of R and T must halt, but S contradicts the recognizers.
(2) The fixed point version of the recursion theorem says that whenever t is a Turing
computable function, there must be a Turing machine description hF i for which
L(F ) = L(t(hF i)). (When x is not a valid encoding of a TM, by convention we
take L(x) = ∅.) Can you find a valid TM F and a Turing computable function t
for which L(F ) = L(t(hF i)) = {hF i}? Explain. The computable function t is a red
herring: Depending on how you interpret L(hF i), either t can just be the identity
function id, or the decoding function that recovers a TM from its description. Now
for the rest of the problem, define the TM:
A = “On input x:
1. Obtain own description hAi.
2. If x = hAi, accept; else reject.”
Then L(A) = L(id(hAi)) = {hAi}.
(3) For w = w1 · · · wn ∈ {0, 1}? , let swap(w) = y = y1 · · · yn ∈ {0, 1}? with wi 6= yi for
each 1 ≤ i ≤ n. A language L ⊂ {0, 1}? is reflected if for every nonempty w, either
both or neither of w and swap(w) is in L. An elegant way to do this is to find an
invertible mapping reduction. But I will be more brute force in what follows. I
assume that all problems are encoded in binary.
1
2
DUE 16 FEBRUARY 2017, START OF CLASS
(a) Can a reflected language be decidable? Explain. Yes, {0, 1} is reflected and
decidable (because it is finite and hence regular).
(b) Can a reflected language be recognizable but not decidable? Explain. Yes, let
L = {0w, 1swap(w) : w ∈ ATM }.
(c) Can a reflected language be corecognizable but not decidable? Explain. Yes,
let L = {0w, 1swap(w) : w ∈ ATM }.
(d) Can a reflected language be neither recognizable nor corecognizable? Explain.
Yes, let L = {00w, 11swap(w) : w ∈ ATM } ∪ {01w, 10swap(w) : w ∈ ATM }.
(4) A language L ⊂ {0, 1}? is complemented if for every nonempty w, exactly one of
w and swap(w) is in L. I will be brute force in what follows. I assume that all
problems are encoded in binary.
(a) Can a complemented language be decidable? Explain. Yes, 0(0 ∪ 1)? is complemented and regular.
(b) Can a complemented language be recognizable but not decidable? Explain.
No! Suppose to the contrary that L is a complemented recognizable language
and let T recognize it. Then to decide L,
“On input w:
1. Run T on w and swap(w) in parallel.
2. If T accepts w, accept; if T accepts swap(w), reject.”
(c) Can a complemented language be corecognizable but not decidable? Explain.
No! Suppose to the contrary that L is a complemented corecognizable language
and let T recognize its complement. Then to decide L,
“On input w:
1. Run T on w and swap(w) in parallel.
2. If T accepts w, reject; if T accepts swap(w), accept.”
(d) Can a complemented language be neither recognizable nor corecognizable?
Explain. Yes, let L = {0w : w ∈ ATM } ∪ {1w : w ∈ ATM }.
(5) When x, y ∈ N, the proper subtraction x y is 0 if x ≤ y, and x − y otherwise.
Show that the relation OM = {(x, y, w) : x y = w} can be defined in the model
(N, +). Use only the PLUS (+) provided; if you need other operators or constants,
you must show how to define them as well. Use only the logical operations and
quantifiers given in a well-formed formula; if you use others, show how to convert
them. We make a formula with free variables x, y, w as follows.
∃a∃z[P LU S(z, z, z) ∧ (P LU S(w, y, x) ∨ (P LU S(x, a, y) ∧ P LU S(z, z, w)))]
This defines z to be 0 and then says that w + y = x or (x ≤ y and w = 0).