Posts Theorem PDF
Posts Theorem PDF
Contents
1 Introduction and Statement of Posts Theorem
18-19-1
2 Proof Strategy
18-19-2
18-19-3
18-19-4
4.1
4.2
4.3
We saw the class SD (semi-decidable), which is the set of all languages for which there is
a Turing machine accepting it. We also saw languages that are hard for SD (via many-one
(m ) reductions). By definition, languages that are hard for SD and lying in SD becomes
SD-complete.
We know of languages that are not SD-hard and not in SD (for example HP ). We also
know that Decidable SD-complete is empty.
So how does the landscape of SD languages look like ? Is it that class SD is a union of
Decidable and SD-complete languages (figure 1(a)) or is there something apart from these
two (figure 1(b))? In other words, we ask : is there a language L SD that is not SD-hard
and not decidable ? The answer turns out to be yes and it was shown by Emil Leon Post
in 1944. Following is the theorem by Post and we shall see a complete proof of it in this
lecture.
18-19-1
HP
HP
SD
SD
SD-hard
SD-hard
SD-complete
SD-complete
L?
Figure 1(b)
Figure 1(a)
Proof Strategy
18-19-2
viewed as a number
18-19-3
M1
M2
M3
M4
M5
M6
M1
M2
M3
M4
M5
M6
M1
M2
M3
M4
M5
M6
M1
M2
M3
M4
M5
M6
M1
M2
M3
M4
M5
M6
M1
M2
M3
M4
M5
M6
Claim 5. A is infinite.
Proof. (By contradiction) If A were finite, there exists a k N such that |A| = k. For any
x, let g(x) be the string output by the machine Mx that caused it to be removed from the
simulation list of N . Consider any set of size 2k + 4 with elements say, {0, 1, . . . , 2k + 3}.
Note that this set can contain only k + 2 elements {g(0), g(1), . . . , g(k), g(k + 1)}2 . Hence
only k + 2 elements will be enumerated. Hence k + 1 elements will not be enumerated and
they must be in A. But this contradicts |A| = k.
We apply a natural strategy : identify a property of the SD-complete sets and argue that
simple sets do not have that property. The property of any SD-complete set is simply that
2
18-19-4
A has a property P. We will argue that complements of simple sets cannot have property
P. To get to the property P formally in the next section, we need a few notations.
For every x , let Mx denote the Turing Machine whose description is x. Consider the
following languages,
Definition 6.
Wx = {y | Mx halts on x}
K = {x | Mx halts in x}
Recall that K is the diagonal language that we used in proving undecidability of halting
problem (HP ). By the same proof, K is undecidable. Indeed, K is semi-decidable too, as
the universal Turing machine can simply simulate the Turing machine Mx on x. We argue
that it is hard for SD too.
Homework 7. Argue that the language K is complete for SD.
Wx is interesting because of the following lemma.
Lemma 8. Every semi-decidable set is equal to Wx for some x .
Proof. Let L be a SD set. Hence, there exists a TM M such that L = L(M ) = {y
| M accepts y}. We construct a TM M 0 which on input y runs M and halts if and only
if M accepts. Hence, y ,
y L M accepts y
M 0 halts on y
Mx halts on y where x = code(M 0 )
y Wx
Hence L = Wx for x =code(M 0 ).
4.1
Prodcutive Sets
Now we are ready to state the property P. Consider the following definition,
Definition 9. A set C is said to be productive if there exists : such that
1. is total3 (also called effective)
2. x , Wx C (x) C Wx
18-19-5
C
(x) C Wx
Wx
4.2
We prove claim 10 which is the contrapositive of the title of this subsection. We argue that
the complements of productive sets cannot be simple.
3
18-19-6
Given a productive set L, to show that L is not simple, it suffices to argue that there exists
an L0 L such that,
1. L0 is infinite
2. L0 is semi-decidable
This is because, if L contains an infinite semi-decidable set L0 then L cannot intersect with
L0 and hence L cannot be simple.
To show that L contains an infinite semi-decidable subset L0 , we give an enumerator E for
L04 .
The enumerator E does the following. Start with , the empty language. Get the code of the
Turing machine that accepts and let it be i0 . Hence we have by definition, Wi0 = L.
Now since L is productive and Wi0 L, (i0 ) L Wi0 . Also since is total, (i0 ) can
be effectively computed by the enumerator. Observe that (i0 ) is a string that lies outside
Wi0 . Now, add it to Wi0 and look at the description of Turing machine, say i1 that accepts
Wi0 {(i0 )}. Hence Wi1 = Wi0 {(i0 }. Now that we have Wi1 which is a subset of L, we
can again apply to i1 and get (i1 ) LWi1 . Again there is a Turing machine description
i2 such that Wi2 = Wi1 {(i1 )} = {(i0 ), (i1 )}. In general Win = Win1 {(in1 )}.
This process isSrepeated indefinitely and enumerator E enumerates {(i0 ), (i1 ), . . .}. Hence
L0 = L(E) = k0 {(ik )}.
Clearly L0 is semi-decidable. In n 1th iteration, by productivity property, there is always
a string that lies outside Win1 which upon adding to Win1 gives a larger set. Hence each
iteration increases the size of the set by 1 and also E runs infinitely. Hence L0 is infinite.
Remark 12. Why do we need the third condition of simple sets to be : L intersecting every
infinite semi-decidable set? Note that the proof of Lemma 3 works even if L is defined
to intersect just every infinite decidable set. Then why do you need a stronger condition?
Notice that this stronger condition is crucially used in the above proof. We do not know if
L0 is decidable.
4.3
We prove claim 11. That is, complements of SD-hard sets are indeed productive. That is,
L is SD-hard L is productive
Before proceeding to prove this, let us try to gain some intuition by proving this for K (the
diagonal language) which is SD-hard (by homework 7).
4
Recall, any language L SD there exists an enumerating Turing machine which enumerates all
strings in L but none other.
18-19-7
18-19-8
= {y | (y) Wi }
[By definition of Wi ]
= 1 (Wi )
the task is to obtain (i) from i, or in other words, the task is to design the function . The idea is
simple, (i) is simply the code of the Turing machine which on input x applies first and runs the machine
Mi on input (x).
6
For any x , 0 (x) = ((x))
18-19-9
(i) K W(i)
(i)
(A)
[Since j = (i)]
1
(i) 1 (A Wi )
(Wi )
18-19-10