This preview has intentionally blurred sections. Sign up to view the full version.
View Full Document
Unformatted text preview: CS 151 Complexity Theory Spring 2011 Midterm Solutions Posted: May 5 Chris Umans 1. Consider a language L ∈ coNEXP . On an input of length n , the advice will be an exact count of the number of inputs of length n not in the language. This is a number between 0 and 2 n , which can be represented using n + 1 bits. Our NEXP machine receives this count c ( n ) and an input x . It will then guess c ( n ) distinct strings x ( i ) together with a witness w ( i ) of length 2 n k for each. It will then verify that each of the x ( i ) are in L using the guessed witnesses. If not, then it will reject. Otherwise, it will accept if and only if x is not equal to x ( i ) for any i . Now, if x ∈ L , then on some computation path, the NEXP machine will correctly guess all of the strings in L , together with correct witnesses for them, and none of these will be equal to x so it will accept. If x ̸∈ L , then the only way the machine can guess c ( n ) distinct strings in L is if x is among these strings, so it will always reject. 2. Let L be a language in L/poly , and let M be a Turing Machine that decides L in c log n space with advice A ( n ), where A : N → { , 1 } N =( n k ) . For simplicity we assume that M receives the input x and the advice string A (  x  ) on a single readonly input tape, and that it has a single work tape. And, we assume that when M is going to accept or reject, it clears its work tape, resets both readheads to the first tape square, and enters the state q accept or q reject accordingly. We also assume that the input and the advice string are given over the binaryaccordingly....
View
Full
Document
 Fall '09

Click to edit the document details