# Why is the Boolean hierarchy contained in the class $P^{NP}$?

My textbook says: "The Boolean hierarchy is contained in the class $P^{NP}\subseteq\Sigma^P_2\cap\Pi^P_2$." However, it provides neither a proof nor a proof sketch nor some hint. How can I convince myself that the claim is true?

Every language in the Boolean hierarchy can be written as a "Boolean formula" whose "variables" are languages in NP, e.g. $$\overline{(L_1 \cap L_2) \cup L_3}.$$ Given an oracle to NP (i.e., an oracle to some NP-complete problem) and an input $x$, we can decide in polytime whether $x \in L_1$, $x \in L_2$, $x \in L_3$. We need polytime since NP-completeness is defined with respect to polynomial time reductions. Given the values of the "variables", it is easy to compute the "formula".
• If you can decide whether $x \in L$ then you can also decide whether $x \notin L$. – Yuval Filmus Apr 21 '14 at 18:17
• That means $coNP\subseteq P^{NP}$, and the inclusion is strict iff $NP\neq coNP$, right? – user1494080 Apr 21 '14 at 19:21