This is an archived page from the Fall 2019 version of the course. For the latest version, see https://uvatoc.github.io.

Problem Set 3 Update

There are a few important updates to Problem Set 3.

  • As originally stated, we believe Problem J2 is impossible. We have modified the problem to add the constant function ZERO to the gate set (which you can represent using 0 in Python. We believe it is impossible to solve without this. We have added an optional (double starred!) problem 5 to the PDF part of the assignment which asks you to prove that the question as originally asked (and in Exercise 3.6 in the book) is impossible.

  • One of the assertion tests for Problem J3 is incorrect. It should have been

assert(HADD2(1,1,0,1) == (0,0))
  • We added a note to the practice problems: one of these is impossible also! In this case, we asked you to prove something that is not true. Since these are practice problems, though, and it is good practice to be skeptical when you are asked to prove things, we haven’t changed the actual problem, but will leave it up to you to find it and modify it to a correct statement that you can prove.