
Quantinuum Demonstrates Quantum Error Detection. But That’s Not What We Call Full Fault Tolerance
How many recently posted an interesting paper on arXiv titled Demonstrating Bayesian Quantum Phase Estimation with Quantum Error Detection which describes a simulation to calculate the ground state energy of a hydrogen molecule (H2) using a quantum phase estimation algorithm. Although H2 molecule simulations have been done before, what is unique about this project is that it also includes error detection as part of the algorithm. This study uses code (6, 4, 2) which means it uses 6 physical qubits to encode 4 logical qubits with a code spacing of 2. The code spacing 2 indicates how many bits need to be changed to change one valid code word to another valid code word. . If the distance is 2, it means the code can detects, but incorrectly single bit errors but may not even be able to detect double bit errors. Assuming that single-bit errors are the most prevalent, this algorithm can be used to provide the correct answer by repeatedly running the algorithm until the code indicates that no errors have occurred. This research has nothing to do with experiments previously published by Quantinuum to create and manipulate non-Abelian anyons leading to topological qubits. The two experiments are very different.
Although not well understood by the popular press, there is a big difference between error detection and error correction. Most of the code researchers are working on, such as surface code, color code, GKP code, LDPC code, etc. not only detect errors, but also fix them. This type of code is really the only path to a fully fault-tolerant machine capable of running algorithms with thousands of qubits and millions of gates required for most quantum applications. Even with the extraordinary qubit-quality capabilities of the Quantinuum ion trap engine, the chances of not hitting an error when running this enormous algorithm are close to zero. So the error detection algorithm needs to be rerun a million or billion times before it finally returns zero errors, if ever. Error correcting codes don’t have this problem, because they will fix the error as it occurs and then continue with the rest of the algorithm.
Nonetheless, this error detection approach may be useful in the future, particularly in low-depth algorithms where the possibility to run without throwing an error is reasonable. For additional information about this research you can see the preprint paper posted on arXiv which can be found Here.
July 15, 2023
dougfinke2023-07-15T11:22:50-07:00