Lecture 7

Today I first talked about quantum gates in general, and tensor products in particular. In the second part of the lecture I tried to prove the universality of quantum circuits. I believe I didn't present things very well this lecture, and I also presented things in the wrong order, so what I'm going to do is include that part of the lecture in the write-up for Lecture 8, and try to present everything in the proper order.

What I want to do here is talk about what it means to apply a CNOT gate on the first and third qubits of a three-qubit system, and leave the second qubit alone. What we have to do is take the tensor product of CNOT13 with the identity on qubit 2, or I2. I expect very few people have seen tensor products of qubits on the outside with a qubit on the middle before, so I'm going to go through it in some detail. If we just had two qubits, CNOT12 in matrix form would be

1 0 0 0
0 1 0 0
0 0 0 1
0 0 1 0
and CNOT with the control qubit being qubit 2 and the target qubit 1 would be
1 0 0 0
0 0 0 1
0 0 1 0
0 1 0 0
We can write CNOT a different way.
CNOT12 = | 0 ⟩1⟨ 0 | ⊗ id2 + | 1 ⟩1⟨ 1 | ⊗ σx2
This says that if the first qubit is | 0 ⟩, then CNOT applies the identity to the second qubit, and if the first qubit is 1, CNOT applies σx to the second qubit. so we can just change the index 2 to the index 3 to get CNOT13
CNOT13 = | 0 ⟩1⟨ 0 | ⊗ id3 + | 1 ⟩1⟨ 1 | ⊗ σx3
and tensoring this with the identity, we get
CNOT13 ⊗ id2 = | 0 ⟩1⟨ 0 | ⊗ id23 + | 1 ⟩1⟨ 1 | ⊗ id2 ⊗ σx3
Writing this out in matrix form gives
1 0 0 0 0000
0 1 0 0 0000
0 0 1 0 0000
0 0 0 1 0000
0000 0 1 0 0
0000 1 0 0 0
0000 0 0 0 1
0000 0 0 1 0
where I have colored the text to show which 1's in the original CNOT12 gave rise to the various 1's in the CNOT13. Here is the CNOT12 with the 1's colored similarly, and some space (which may depend on your browser; it seems to look good in both Explorer and Firefox) inserted between the appropriate blocks so that it's easier to see what's going on.
1 0   0 0
0 1   0 0
0 0   0 1
0 0   1 0
If you're careful, you can take the 4 × 4 matrix for CNOT12 and just duplicate every entry to obtain the 8 × 8 matrix for CNOT13. However, unless you've had some experience doing this, you should be quite careful. As you can probably guess from looking at the example above, it is fairly easy to make a mistake.

It's also useful to be able to figure out what these circuits do without writing out the matrices. Once the number of qubits gets large, the matrices grow big very fast. Since n qubits give rise to a 2n × 2n matrix, often writing out the matrix is not possible, and you should learn to use other methods of figuring out what quantum gates do.