Figure 1.6 Result of executing the circuit 1024 times on a quantum simulator, compared with executing the circuit 1024 times on a real IBM quantum computer.
The simulator gives the result expected from an error-free quantum processor. In contrast, the quantum processors available today are noisy and contain errors. As an illustration, Figure 1.6 also shows the result of executing 1024 shots on a real IBM Quantum processor. Although the states |00⟩ and |11⟩ do occur most frequently, the error states |01⟩ and |10⟩ occasionally occur as well. Fortunately there are techniques to reduce and partially mitigate such noise (Chapter 9), and these techniques represent an active area of research.
1.7 No Cloning, Revisited
With a better understanding of quantum states and operations, we are now ready to construct a proof of the no-cloning theorem. The proof relies on the fact that unitary operators are linear; when applied to a sum of states, the operator operates independently on each component:
Suppose we have an operator Uclone that takes two qubits, as shown in Figure 1.7. When the second qubit is |0⟩, it is replaced with an exact copy of the first qubit. The proof will show that such an operator cannot exist, because it is not compatible with the principle of linearity.
Figure 1.7 Hypothetical cloning operator, that creates an exact and independent copy of unknown quantum state |α⟩. The text will show that such an operator cannot be implemented.
Further suppose that we have two states:
By the definition of cloning:
Now consider a new state |δ⟩=(|α⟩+|β⟩)/2. By the definition of cloning:
However, by the linearity of unitary operators:
Since Eqs. (1.60) and (1.61) cannot both be true, there is no unitary Uclone that can perform the cloning operation for all states.
We stated earlier that we can clone a (computational) basis state. This can be done with the CNOT gate, with the first qubit as the control. (With our bottom-to-top ordering, this corresponds to the UCN′ operator from (1.52).) Suppose state |ψ⟩ is either |0⟩ or |1⟩, but we don’t know which.
If we apply the circuit from Figure 1.5 to an arbitrary state |ψ⟩ = α|0⟩ + β|1⟩, we get a result that looks sort of like cloning, but not quite: