CSE596, Fall 2015 Problem Set 10 (the last) Due Thu. 12/10 This problem set is due Thursday by 4pm either under my office door at 326 Davis Hall or in my faculty mailbox—or to me personally. I will try to grade them all overnight so they can be used as study during the weekend (reading days). The Final Exam has been scheduled for Monday, Dec. 14, 3:30–6:30pm in Clemens 322, i.e., the regular classroom. It will have the same open-book, open-notes terms as the prelims. I have booked a Review Session on Monday, Dec. 14 from 11am–1pm in Davis 113A. It will go over this assignment and then the answers to the Fall 2014 final also given out in class, emphasizing the “Classify Languages” question (1). (A) Show that for any language B, if NPB = NP then B ∈ NP ∩ co-NP. This looks weird until you think of two particular polynomial-time oracle machines M1 , M2 —both of which are deterministic not just NOTMs—such that for any language B, L(M1B ) = B and L(M2B ) =? (you say it). (3 pts. checkoff credit—the subject of polynomial-time Turing reductions and oracles won’t be lectured on until Wednesday. The converse also holds and is just a bit trickier.) (1) Define 2SAT to be the language of satisfiable 2CNF formulas, i.e. satisfiable Boolean formulas in conjunctive normal form with at most two literals per clause. (a) Show that 2SAT belongs to P (15 pts.). log (b) Show that 2SAT is NL-hard under logspace many-one reductions (≤m ). (Hint: give a log-space reduction from the complement of GAP to 2SAT, and then argue on the basis of NL being closed under complementation 21 pts., for 36 total on the problem). (2) Suppose we have a Turing machine M that on any input x calls itself recursively on some shorter strings y1 , . . . , yk . Here k may depend on x and may even be zero—M (x) might give a yes/no answer without recursing (note M (λ) cannot recurse). Suppose that M runs in polynomial time p(n) apart from the recursive calls—which entails also that k ≤ p(n). Show that L(M ) belongs to PSPACE. (Note: this is a special case of Homework 7.4(a) since lengthdecreasing makes an “OK partial order” in the text’s terms. Although Turing reductions won’t be covered until Wednesday, you can do this problem directly by mapping out the recursion in the kind of space-economizing depth-first search strategy that was already seen in the proof of Theorem 5.10 given in class. Think of how a real-world OS implements recursion with an execution stack. 18 pts., for 57 total on the set)