Errata in "Stabilizer Codes and Quantum Error Correction"

Below are known errata in my Ph.D. thesis.

Section 3.3: The classical [7,4,3] Hamming code is not self-dual. It contains its dual, which is the requirement to be able to make a CSS code from it.

Section 3.5: All of the code constructions in this section come with the caveat that the minimum distance of the new code could be greater than expected through design or coincidence.

Chapter 4: There is a subtle error in the encoding scheme which was pointed out by Markus Grassl. This error is also present in the original paper "Efficient computations of encoding for quantum error correction", although the example used in the paper is different.

For the qubits which act as controls during the circuit, we frequently require controlled-phase operations before the operations controlled on that qubit. This is incorrect. More precisely, the initial Hadamard operations should really be placed just before the black control dots. This is because the Hadamards are essentially part of the implementation of (I + Mi) for the generator Mi. But the earlier controlled-phases are part of Mj with j<i, and because the X in Mi acting on qubit i has been replaced with the control, the resulting operators no longer commute.

There is an additional error in this chapter which was not in the original paper: controlled-Y gates should instead be controlled-XZ. (The original paper used the real version of Y = XZ, whereas the thesis uses Y= iXZ.)

Putting these two corrections together, we can correct figure 4.2 (p. 35) as follows: the two controlled-Z's in the third and fourth columns should be absent. The two controlled-Y's with targets in the last row should be controlled-XZ's.

Also, the encoding method described in this chapter only works for codes for which all of the signs of the stabilizer generators (in standard form) are +1. Codes with other signs can be achieved via a tensor product Pauli operator.

Section 5.5: Q should be defined as Z times the current Q (i.e., Z P\dagger R P) so that X -> X, Z -> Y.

Section 5.7: The Toffoli gate construction is claimed to work for any code for which a fault-tolerant implementation of N(G) (and in particular the specific operation M3) exists, such as for any stabilizer code. For a general stabilizer code, the implementation of M3 is complicated, involving a series of transversal operations and measurements. Applying measurements conditioned on a cat state turns out to be fairly complicated. See the appendix of quant-ph/9908010 for details.

Section 5.8: U' should be multiplied by \sqrt{2} in order to be unitary.

Section 5.9: Steane's method of fault-tolerant error correction works fine for CSS codes, but needs a slight modification for general stabilizer codes. A number of generators of the ancilla state are of the form M1 \otimes M2, where both M1 and M2 are tensor products of Zs only. We perform two sets of CNOTs from the data to the ancilla. The first set will map these generators to M1 \otimes (M1 \otimes M2). Then the Hadamard transform on the data converts the first M1 to Xs, and the second set of CNOTs (and subsequent Hadamard) maps this state to

M1 (R M2 R\dagger) \otimes (M1 \otimes (R M1 R\dagger) M2).

The first factor is still an element of the stabilizer, so the ancilla is disentangled from the code block as required. However, we cannot simply measure each ancilla qubit to determine the errors (the syndrome being encoded now in the eigenvalues of the generators of the above form). Instead, we must perform some decoding step first. This does not diminish much the advantages of Steane error correction --- again, the extra work is on the ancilla qubits, and we only need to do a handful of interactions on the data qubits.

Section 7.1: The proof of the Gilbert-Varshamov bound is not quite correct. Completing it would require a proof that a solution exists for the relevant set of equations, which will probably introduce additional constraints on the matrix Cab (thanks to Eric Rains for pointing this out). See ref. [22] of the thesis for a complete proof that stabilizer codes exist satisfying the Gilbert-Varshamov bound for large parameters. (The proof can be adapted to apply for finite parameters as well, with a small correction to the bound.)

The proof of the Knill-Laflamme bound is incomplete. See, for instance, ref. [54] of the thesis for a complete version.

Sections 7.5 and 7.6: The proofs of the linear upper bounds (1-2p for the erasure channel and 1-4p for the depolarizing channel) depend on the assumption that there is no superadditive improvement to channel capacity when a second noiseless channel is used along with a zero-rate channel. Ref. [17] of the thesis shows that channel capacity of a finite rate channel plus a perfect channel is the sum of their capacities, but this result is still open for a general zero-rate channel.

Section 8.3: The sum in equation (8.19) should run from 0 to n-1.

Section 8.8: The stabilizer for the [11, 1, 5] code in figure 8.5 is wrong -- M10 should be

Y Z X I I I X X X Y Z


Back to Daniel Gottesman's home page

July 16, 2004