
CUUS063 main CUUS063 Goldreich 978 0 521 88473 0 March 31, 2008 18:49
3.2. THE POLYNOMIAL-TIME HIERARCHY
(see Exercise 3.6 again). By using a suitable encoding of y and the z
i
’s (as strings
of length max(p(|x|), p
(|x|))) and a trivial modification of V
, we conclude that
S ∈
k+1
.
Determining the winner in k-move games. Definition 3.8 can be interpreted as capturing
the complexity of determining the winner in certain efficient two-party games. Specifically,
we refer to two-party games that satisfy the following three conditions:
1. The parties alternate in taking
moves that affect the game’s (global) position, where
each move has a description length that is bounded by a polynomial in the length of
the current position.
2. The current position can be updated in polynomial time based on the previous position
and the current party’s move.
5
3. The winner in each position can be determined in polynomial time.
Note that the set of initial positions for which the first party has a k-move winning strategy
with respect to the foregoing game is in
k
. Specifically, denoting this set by G, note
that an initial position x is in G if there exists a move y
1
for the first party, such that for
every response move y
2
of the second party, there exists a move y
3
for the first party, etc.,
such that after k moves the parties reach a position in which the first party wins, where
the final position is determined according to the foregoing Item 2 and the winner in it
is determined according to Item 3.
6
Thus, G ∈
k
. On the other hand, note that any set
S ∈
k
can be viewed as the set of initial positions (in a suitable game) for which the first
party has a k-move winning strategy. Specifically, x ∈S if starting at the initial position
x, there exists a move y
1
for the first party, such that for every response move y
2
of the
second party, there exists a move y
3
for the first party, etc., such that after k moves the
parties reach a position in which the first party wins, where the final position is defined as
(x, y
1
,...,y
k
) and the winner is determined by the predicate V (as in Definition 3.8).
PH and the P Versus NP Question. We highlight the fact that PH = P if and only if
P = NP. Indeed, the fact that PH = P implies P = NPis purely syntactic, whereas the
opposite implication follows from Proposition 3.9 (see also the second part of the proof
of Proposition 3.10).
7
The fact that P = NP implies PH = P suggests that P = NP
can be proved by proving that PH = P. Thus, a separation between two classes (i.e.,
P = NP) can be shown by separating the smaller class (i.e., P) from a class (i.e., PH)
that is believed to be a superset of the other class (i.e., NP).
5
Note that, since we consider a constant number of moves, the length of all possible final positions is bounded by
a polynomial in the length of the initial position, and thus all items have an equivalent form in which one refers to the
complexity as a function of the length of the initial position. The latter form allows for a smooth generalization to
games with a polynomial number of moves (as in Section 5.4), where it is essential to state all complexities in terms
of the length of the initial position.
6
Let U be the update algorithm of Item 2 and W be the algorithm that decides the winner as in Item 3. Then the final
position is given by computing x
i
← U (x
i−1
, y
i
), for i = 1,...,k (where x
0
= x), and the winner is W (x
k
). Note that,
by Item 1, there exists a polynomial p such that |y
i
|≤p(|x
i
|), for every i ∈ [k], and it follows that |y
i
|≤poly(|x|).
Using a suitable encoding, we obtain a polynomial-time algorithm V such that V (x, y
1
,...,y
k
) = W (x
k
), where
x
k
= U (···U (U (U (x, y
1
), y
2
), y
3
) ...,y
k
).
7
Advanced comment: We stress that the latter implication is not due to a Cook-reduction of PH to NP; in fact,
such Cook-reductions exist only for a subclass of PH (which is contained in
2
∩
2
).
115