- #1
jimmycricket
- 116
- 2
I am trying to derive a quantum circuit that will implement an arbitrary unitary operation using single qubit gates and C-NOT gates only. I have already shown how to construct a controlled U operation where U is a single qubit unitary operation. Furthermore I have proven the universality of two-level unitary matrices. Now I wish to show that any two level unitary operation can be performed using C-NOT and controlled U operations. To do this I must introduce gray codes. I understand that a gray code is a sequence of binary strings [itex]\{x_1,x_2,...,x_n\}[/itex] where neighbouring members differ in one bit only. I can understand when looking at circuit diagrams how the use of Gray codes can be used to implement U however I am struggling to explain the motivation behind using Gray codes in the first place. I can also construct some examples of circuits that execute U that I would show here but it appears qcircuit isn't supported on the forum. Sorry this isn't a very direct question: essentially I'm asking why Gray codes are used in circuits that enact arbitrary two-level unitary operations.