Answer Key for Exam 2 in CPSC 468/568 - Zoo

6 downloads 394 Views 62KB Size Report
Answer Key for Exam 2 in CPSC 468/568. December 3, 2009. All references (e.g. , to definitions or page numbers) in what follows are to the 2009 edition of.
Answer Key for Exam 2 in CPSC 468/568 December 3, 2009 All references (e.g., to definitions or page numbers) in what follows are to the 2009 edition of Computational Complexity: A Modern Approach, by Arora and Barak. Question 1: In the definitions below, f is a polynomial-time computable function, and q is a polynomial. (a) L ∈ RP if there exist f and q such that, for all n and all x ∈ {0, 1}n , if x ∈ L, then f (x, w) = 1 for at least 2/3 of all w ∈ {0, 1}q(n) , and, if x 6∈ L, then f (x, w) = 0, for all w ∈ {0, 1}q(n) . (b) L ∈ ZPP if there exists a probabilistic Turing Machine M (see Definition 7.1) such that, for all x ∈ {0, 1}∗ , M (x) = L(x) (i.e., M always outputs the correct answer), and the expected running time of M is a polynomially bounded function of |x|. (c) L ∈ BPP if there exist f and q such that, for all n and all x ∈ {0, 1}n , if x ∈ L, then f (x, w) = 1 for at least 2/3 of all w ∈ {0, 1}q(n) , and, if x 6∈ L, then f (x, w) = 0 for at least 2/3 of all w ∈ {0, 1}q(n) . (d) L ∈ ⊕P if there exist f and q such that, for all n and all x ∈ {0, 1}n , x ∈ L if and only if the number of w ∈ {0, 1}q(n) for which f (x, w) = 1 is odd. (e) L ∈ PP if there exist f and q such that, for all n and all x ∈ {0, 1}n , x ∈ L if and only if f (x, w) = 1 for at least 1/2 of all w ∈ {0, 1}q(n) . (f) g ∈ #P if there exist f and q such that, for all n and all x ∈ {0, 1}n , g(x) is the number of w ∈ {0, 1}q(n) for which f (x, w) = 1. Question 2: (a) Unknown. We know that P ⊆ ZPP ⊆ BPP ⊆ PSPACE but not whether any of these inclusions is proper. (b) True. This follows from the second part of the proof of Toda’s Theorem. (That is all you would need to say by way of “justification,” but here are a few more details. First note that, if L ∈ BPP⊕P , then one ⊕SAT query suffices. Represent the BPP algorithm as a polynomial-sized circuit family (taking two inputs, one a random string) that uses ANDs, ORs, and NOTs; the formulas in 4(c), 4(d), and 4(e) below then allow us to interpret the circuit as a method of combining polynomially many oracle queries into one. Second, observe that the argument in Section 17.4.4 does not depend on the original input’s being a quantified boolean formula ψ; it could be any string x for which we want to determine membership in a language L ∈ BPP⊕P .) (c) False. Babai, Fortnow, and Lund proved that MIP = NEXP, and the nondeterministic time hierarchy theorem tells us that NP 6= NEXP. (d) True. A polynomial-space machine can enumerate all possible computations of an NP machine and count how many of them are accepting computations; the input is in the corresponding ⊕P language if and only if this number is odd.

Question 3: In the following proof system, (G1 , G2 ) is the input (i.e., the prover’s claim is that G1 6≈ G2 ), n is the number of vertices in G1 (and in G2 ), and Sn is the group of all permutations of {1, . . . , n}. If G is a graph on n vertices {v1 , . . . , vn }, and π ∈ Sn , then π(G) denotes a graph on n vertices {w1 , . . . , wn } in which (vi , vj ) ∈ E(G) if and only if (wπ(i) , wπ(j) ) ∈ E(π(G)). The acronym “uar” stands for “uniformly at random.” V : Choose i uar from {1, 2} and π uar from Sn . Let H = π(Gi ). V → P: H P : Find j ∈ {0, 1} such that H ≈ Gj . P →V: j V : Repeat the previous four steps. Accept if and only if j = i in both iterations. This proof system is not a checker, because the prover is not answering questions of the form “is G1 isomorphic to G2 ?” There are other interactive proof systems for Graph Non-Isomorphism, some of which are checkers. (Partial) credit was given for any (partially) correct answer. Question 4: (a) If φ is a formula on n boolean variables x ∈ {0, 1}n , and τ is a formula on m boolean variables y ∈ {0, 1}m , then ψ(x, y) = φ(x) ∧ τ (y) is a formula on m + n boolean variables with the desired property. (b) If φ is a formula on n boolean variables x ∈ {0, 1}n , τ is a formula on m boolean variables y ∈ {0, 1}m , and m ≤ n, then ψ(z) = ((z0 = 0) ∧ φ(z1 , . . . , zn )) ∨ ((z0 = 1) ∧ (zm+1 = 0) ∧ · · · ∧ (zn = 0) ∧ τ (z1 , . . . , zm )) is a formula on n + 1 boolean variables with the desired property. If m > n, there is a similar formula on m + 1 boolean variables with the desired property. (c) See formula 17.5 on page 355. (d) See formula 17.7 on page 356. (e) See formula 17.6 on page 355. Question 5: See page 160.

2