Due Wednesday August 28 0. Assume Alice and Bob follow some communication protocol that is overheard by that pesky eavesdropper Eve. Alice and Bob would like that their communication is "cryptographically secure" in that Eve doesn't learn anything from what she hears. Do you best to come up with a FORMAL definition of "cryptographically secure". You may NOT look in the text, or use any outside sources. The point of this exercise is not for you to find the "right" definition, but to understand the difficulties of coming up with such a definition by going through the thought process yourself. You proposed definition will not be graded on correctness. If you can't think of a definition, write a paragraph or two on things that you thought about. Everyone that turns in something will get full credit here. Due Friday August 30 1. Show from first principles that there is no finite state machine that accepts the language of formulas of the form x+y=z, where natural numbers x, y and z encoded in binary in the standard way, and where x plus y is indeed equal to z. So for example the input "10100+111=11011" is in the language. So intuitively this shows that finite state machines can not "add" in the most obvious interpretation of "add". 2. Show that there is a finite state machine that can accept the language over a string of 8 symbols, that intuitively mean [000] [001] [010] [011] [100] [101] [110] [111] where the first column plus the second column is equal to the third column. So to reuse our example from problem 1, the 5 symbol input [101][001][110][011][011] is in the language because 10100+111=11011. For simplicity, you may assume that you can read the input tape in either direction (though this assumption isn't strictly necessary). So intuitively this says that finite state machines can "add" for some reasonable intepretation of "add". Due Monday September 9 3. Problem 1.7 from the text. Basically you want to show how to simulate a Turing Machine with a 2 dimensional tape by a Turing machine with a one dimensional tape. The purpose of assigning this problem is to gain some some familiarity with simulation arguments. Suggestion: Use the proof of claim 1.6 in the back of the book both to get an idea of how to solve this problem, and as a model as to the level of detail that you should have in your write-up. Note: This is problem 1.11 in the online preliminary version of the book at http://www.cs.princeton.edu/theory/complexity/modelchap.pdf In general problem numberings will be from the final version of the text, not the online preliminary version Due Wednesday September 11 4. Consider a programming language mini-Java that only has one type of loop, and the number of iterations of the loop must be determined when the loop is first encountered. So a loop statement might look like "Repeat n times", and the variable n is evaluated when the statement is reached. You can assume that the program has a variable Size that is instantiated to the input size when the program starts running (otherwise, you couldn't even read the input). So all mini-Java programs must halt on all inputs. Show by diagonalization that there is a language accepted by a Java program that is not accepted by any mini-Java program. Use Diagonalization. Give a concrete example of a language that is not acceptable by any mini-Java program, but that is accepted by a Java program. The purpose of assigning this problem is to gain some familiarity with diagonalization arguments. Due Friday September 13 5. Consider the following decision problem. The input consists of a collection of types of unit squares, four special colors that we will call L, R, T, and B, and a collection of color rules. A UNIT SQUARE TYPE is an ordered 4-tuple of colors. There is no a priori bound on the number of possible colors, and you can use as many unit squares as you like that have these four colors in clockwise order around the outside. For example, a unit square type might be (red, red, blue, green). A color rule is a pair of colors meaning that square sides of these colors are allowed to touch. For example, a color rule might be (red, blue). Each of the four finite automata take as input a string of colors, and either reject or accept the string. The decision is to determine whether there is a rectangle filled with available types of unit squares, placed to obey the color rules, where the colors on the top are all T, the colors on the left are all L, the colors on the right are all R, and the colors on the bottom are all B. Show that there is no algorithm to solve this problem. Hint: Recall the proof that the term rewriting problem is not computable. Think of row i of the rectangle as being the configuration of a Turing machine after step i. Think of a sequence of rows as being a computation history. Think of many of the colors encoding either some small string of tape symbols, or a position of the tape head, the state in the finite state control, and some tape symbols. The only issue that is not straightforward is how to guarantee consistency when the tape head moves. To handle this, think about there being some overlap in information between consecutive colors on the bottom/top of a row. Further hint: Note that there is no algorithm to determine whether a Turing Machine halts when given the empty tape as input. You might prove this as a warmup, or just look in the class notes. The purpose of the problem is to get used to the concepts of configuration and computation history, and proving hardness via a reduction. Due Monday September 16 6. The goal of this problem is to finish up the proof in class of a version of Goedel's incompleteness theorem that there is no complete sound axiomatization of standard arithmetic. Consider an string S that represents the computation history of a particular Turing machine T, e.g. S = S1#S2# .... #SK for a computation that takes K steps. Here Si is the state on the ith step. The number of symbols J in each Si is the number of states in T plus the size of the tape alphabet for T plus one symbol to represent the position of the tape head. Consider S as a base J integer. Explain how to express the informal sentence "S represents a valid computation for T" as a first order logical sentence using standard arithmetic operators such as plus, minus, times, division, mod, floor, ceiling, equals, less than, etc and standard logical operators: and, or, not, etc. Note that this is required for the proof of that there is no complete axiomatization of standard arithmetic. The purpose of this problem is to reinforce the proof of Godel's incompleteness theorem, and get comfortable with the arithmetization of computation. Due Wednesday September 25 (email to mpn1@pitt.edu by noon) 7. Consider first order logical sentences of arithmetic where your are allowed to use = and +. Without loss of generality we may assume that the only logical operators are AND and NOT, and that all quantifiers appear first. So you might have a formula like: THEREEXISTS x FORALL y FORALL z THEREEXISTS w such that (x+y=z) AND NOT (y+z=w+x) Our goal here is to show that there is an algorithm to accept exactly the language of true formula using the following strategy. Recall from problem 2 that we know how to build a finite state machine that accept tuples (x,y,z,w) properly encoded that satisfy (x+y=z) and a finite state machine that accepts tuples (x, y, z, w) properly encode that satisfy (y+z=w+x). Explain why if you have finite state machines for (x+y=z) and (y+z=w+x), you can get a finite state machine to tuples (x, y, z, w) properly encode that satisfy (x+y=z) AND NOT (y+z=w+x). Now consider the quantifiers from the inside out. Explain how to construct a finite state machine that accepts tuples (x, y, z) properly encoded with the property that THEREEXISTS w such that (x+y=z) AND NOT (y+z=w+x) Explain how to construct a finite state machine that accepts tuples (x, y) properly encoded with the property that FORALL z THEREEXISTS w such that (x+y=z) AND NOT (y+z=w+x) Extend this to the whole formula. Then explain how to use the final finite state machine to get your final answer. It is OK for your write up to use this example, but it should also explain how the algorithm would work on a generic instance. Concentrate on high level ideas, not low level details. The purpose of the problem is to increase your comfort with first order logic. Due Friday September 27 (email to mpn1@pitt.edu by noon) 8. Recall the definition of entropy of a probability distribution X over a set U: H(X) = Sum_{x in U} prob(x) lg (1/prob(x)) Now define the conditional entropy of not necessarily independent probability distributions X and Y to be: H(X|Y) = Sum_{y} prob(y) Sum_{x} prob(x|y) lg 1/prob(x|y) Subproblem A) Prove that H(X|Y) = Sum_{x,y} prob(x,y) lg 1/ prob(x|y) Subproblem B)) Explain why intuitively H(X|Y) tells you how much information one gains from seeing the outcome of X, given that one has already seen the outcome of Y. Subproblem C) Prove that H(X) - H(X|Y )= H(Y)-H(Y|X). Subproblem D) Consider the process of drawing cards without replacement from a deck, and then looking at the cards in some order. What does the above statement say about how the order that you look at the cards affects the amount of information that you receive after each time you look at the cards? The purpose of this problem is to get more confortable with both the intuition and formal definitions of entropy. Due Monday September 30 9. Assume a log-space reduction from a language A to a language B. So more precisely, there is a Turing machine T with three tapes, a read only input tape, a read/write work tape, and a write-only output tape. T only uses log of the input size many cells on the read/write work tape. Further T never backs up the tape head on the write only output tape, so the tape head on the write only tape either stays in position or moves to the right. The machine T has the property that a string x in in A iff the contents of the write tape when T ends computation on input x is in B. Now show that if there is a log space Turing machine S that accepts B, then there is a log space Turing Machine U that accepts A. Note that this is not trivial because U will have enough work tape to write down the output of T. This is a good problem to show how to make use of the fact that space is reusable. Due Wednesday October 2 10. Consider the following game played by two players A and B on a directed graph G with a designated start vertex s. On the first move, player A picks an edge (s, v) leaving s. Then s and v are designated as visited. On each even numbered move, player B picks an edge (v, w) from the current vertex v to a vertex w hasn't been visited before. If no such vertex w exists, then player B loses. Vertex w then is designated as visited and becomes the current vertex. On each odd numbered move, player A picks an edge (v, w) from the current vertex v to a vertex w hasn't been visited before. If no such vertex w exists, then player A loses. Vertex w then is designated as visited and becomes the current vertex. So the players A and B taking turns picking edges in a directed path P starting at s, with a player losing if he/she can't extend the path. Prove that determining for a particular G and s, whether the first player has a winning strategy is PSPACE-complete under polynomial time reductions. You can prove hardness by reduction from the problem of determining whether a quantified Boolean formula F is true. Hint: Conceptually the graph G will have two parts, G_1 and G_2, that P will traverse in that order. In some sense G_1 represents the quantifiers in F. So there will one vertex in G_1 for each quantifier in F. And for each such vertex, there will be two exiting edges corresponding to true and false. Then G_2 needs to verify that there are choices for the first player (corresponding to the existential quantifications in F) in G_1, such that for all choices of the second player (corresponding to the universal quantifications) in G_1, the first player will win iff F is true. Due Friday October 4 11. Show that if SAT is polynomial-time many-to-one reducible to the complement of SAT that the polynomial time hierarchy is equal to NP. This is problem 5.3 from the text. The purpose of the problem is to get comfortable with the definition of the polynomial time hierarchy. The problem is almost trivial if one was comfortable with this definition. Due Monday October 7 (email to Michael mpn1@pitt.edu by noon) 12. The time hierarchy theorem leaves open the possibility that Time(n) = Time(n log log n). Show that it is unlikely that one can show that Time(n) = Time(n log log n) by simulation by showing that there is an language B such that Time(n)^B is not equal Time(n log log n)^B. Hint: Try to mimic the proof that there is a language B such that P^B is not equal NP^B. First ask yourself what question about B can a Time(n log log n) machine can easily answer that a TIME(n) machine can not answer. Obviously the purpose of this problem is to get more comfortable with the Baker, Gill and Soloway result. Due Friday October 11 (email to Michael mpn1@pitt.edu by noon) 13. Show that VC-Dimension is Sigma_3^p-complete. This is exercise 5.13 in the hard copy fo the book. And exercise 11 in the online preliminary copy. Hint: The online copy of the text has a suggestion. I'm not sure how hard this problem is (so it may be hard). The purpose of the problem is to gain comfort with the concept of completeness and the definition of the polynomial time hierarchy. Due Monday October 14 14. Show that NC^1 is a subset of LOGSPACE. Hint: This of the NC^1 computation as a circuit. Show how to compute the value of the circuit using log space. DFS. Due Wednesday October 16 15. Problems 6.6 and 6.7 from the text. They are related and quite easy. 6.6: Show that for every k>0 that Sigma_2^p has languages whose circuit complexity is Omega(n^k). The circuit complexity is the size of the minimum sized circuit that decides the language. 6.7: Show that if P=NP, then there is a language in exponential time that requires circuits of size Omega(2^n/n). Hint: The answer for 6.6 should be useful. Duw Friday October 18 16. Prove that ZPP = RP intersect co-RP Due Monday October 21 17. Problem 7.7 from the text. This is problem 5 in chapter 7 in the onnline preliminary version of the text. Due Wednesday October 23 18. This homework is to be done idividually, not in your group. Read the history of the IP=PSPACE result given in http://www.cs.pitt.edu/~kirk/cs2110/BabaiIPStory.pdf Write a paragraph explaining what you think was the right way to handle the publication issue. That is, "what papers should have come out of this"? and "who should the authors have been"? Due Monday October 28 19. Problem 8.1 from the text. This is the same as problem 1, minus part c, in Chapter 8 in the online preliminary version of the text. Due Wednesday October 30 20. Show that MAM is a subset of AM. Note that this is a special case of 8.7 in the text, and that there is a hint in the book. Due Monday November 4 (email to the TA by noon) 21. Problem 9.4 from the text. I strongly encourage you to first do the proof for when n=1. Due Friday Nobember 8 (email to the TA by noon) 22. 9.5 from the text. Due Wednesday November 13 23. Problem 9.15 from the text Due Friday November 15 24. Read and understand the protocol in problem exercise 9.17 part b from the text. Write a one paragraph summary of the protocol in your own words. Then write a paragraph explaining intuitively what it means for an interactive proof to be computationally zero knowledge. Then write a paragraph to explain why it is intuitively believable why this protocol is computationally zero knowledge. 25. Recall the 1/2 silvered mirror experiment, which was essentially a Hadamard gate, followed by a "not", followed by a Hadamard gate. In this experiment the state of the bit coming out of the Hadamard gate was the same as the state of the bit entering if the entering bit was not in superposition. Show by basic calculations that this remains true if the entering bit is in superposition. Due Monday November 18 26. part a) Show that if you have a 2-bit system in state a|00> + b | 01> + c |10> + d |11>. Consider two experiments, in one you measure the first qubit, and then measure the second qubit, and in the other, you measure the second qubit, and then measure the first qubit. Show that the probability distributions that the classical bits that you observe in the end is independent the order that you look at the bits. This is very easy, but and is just a warm up problem to get your brain flowing. part b)Work out in detail the probability that Alice and Bob observe a=b in the case that x=y=1 in the EPR experiment in the book. Show every step of your calculations, and give lots of explanation. Due Wednesday November 20 27. Consider the same set up as the parity game. Alice and Bob split two entangled bits. Alice and Bob are then split up. Alice is then given 2 classical bits x and y. Depending on the value of x, and y, Alice sends Bob 1 qubit. From this single qubit, Bob determines with certainty the two classical bits x and y from his entangled bit and the sent qubit. Explain how to accomplish this. You need to explain Alice's encoding strategy, Bob's decoding strategy, and why these strategies work. Note that you can extend this to allow for the transmission of 2n classical bits using only n quantum bits. Hint: The 4 possible states of the sent qubit will be + 1/sqrt(2) |0> + 1/sqrt(2) |1> + 1/sqrt(2) |0> - 1/sqrt(2) |1> - 1/sqrt(2) |0> + 1/sqrt(2) |1> - 1/sqrt(2) |0> - 1/sqrt(2) |1> Due Friday November 22 28. The goal of this problem is to find a way to transmit information about a qubit by sending two classical bits. Alice and Bob split up entangled bits |ab| in state |00> + |11>. Assume that now Alice is given qubit x. So x is in some unknown superposition between states |0> and |1>. Alice now performs the following reversible operation on x, if a=1 then negate x. Alice then runs qubit a through a Hadamard gate. Alice now measures the current values of a and x, and sends these two classical bits to Bob. Explain what the state of all the particles a, b, and x is after each of Alice's operations. Then explain how Bob can use the two classical particles to change the state of b to the original state of x. Note that when Alice measures a and x, then she can no longer recover the original state of qubit x. Due Monday November 25 29. Problem 11.2 from the text. This is very easy. 30. Problem 11.7 from the text. This should be pretty straightforward. Just convert the interactive proof for the permanent from chapter 8 as the interactive proof for graph non-isomorphism was converted in example 11.7. Due Wednesday November 27 (There is no class on this day. Email to the TA by 10AM) 31. Problem 11.16 from the text. Note that the problem allows for rational solutions. Hint: There is a simple reduction from MAXSAT. Due Monday Monday December 2 (There is no class on this day. Email to the TA by 10AM) 32. Problem 13.19 from the text