(or back flipped) by applying Y gates in the corresponding circuit wires, to obtain the Y-corrected state (24.46) The final step consists of passing each qubit in the above state through a Hadamard gate, i.e., to obtain the stateHnHI(x+C2)*)xy.Here, there is no point in going through the detailed calculation of such an operation, because as a useful property, H and Hon are self-inverse operators (HH = I, Hon H = I If we let ey = 0 in Eq. (24.44), Quantum error correction we obtain (24.47) which is precisely the same state as also the H transform of the error-free state |x+C2)! Thus, a second application of Hon on the states defined in either Eq. (24.46) or Eq. (24.47) yields = Ix+C2> (24.48) which yields our initial CSS-encoded state |x+C2). Thus, the second round of correc- tion concerning Z-errors has successfully restored the CSS codeword in its full integrity. The next section concerning the Steane code provides an applied illustration of the CSS(C1, C2) codes. Hadamard-Steane code The Hadamard-Steame code, also sometimes called the Steane code, belongs to the CSS(C1, C2) family. It has the same bit-flip and phase-flip error correction capability as the earlier-described Shor code, namely, up to one error in either or both cases, but it uses 7-qubit codewords as opposed to nine qubits in the second case. It is based on the Hamming code C1=C= (7,4) which was described in Chapter 11, and its dual C2= C1. To recall, a possible parity-check matrix H for the (7,4) Hamming code, which we used in that chapter,4 is defined as: 1101100 (24.49) 0111001 4 Some other possible parity-check matrices H for the (7,4) Hamming code commonly used in the literature or the Internet are 1001011 1101001 1010101 24.4 Hadamard-Steane code Table 24.4 Block codewords Y of the Hamming code C1 = (7,4), as pro- duced from the generator matrix G = AT, according to Y= XG. The parity bits are shown in bold. Message word X Block code Y 0000 000 0001 111 0010 011 0011 100 0100 101 0101 010 0110110 0111 001 1000 110 1001 001 1010 101 1011 010 1