The errors involved in quantum computing are the biggest limitation to achieving fault-tolerant quantum computers. There are 3 ways to handle these errors.
Quantum Error Correction
Quantum Error Mitigation
Quantum Error Suppression
Quantum Error Correction: QEC involves encoding quantum information redundantly to detect and correct errors that occur during a computation. Though this approach can provide robust protection against errors it requires a significant amount of additional qubits and operations to encode and decode the quantum information. This makes QEC challenging to implement on current near-term quantum devices which have a limited number of qubits.
Some techniques for Quantum Error Correction:
Repetition Code
Surface Code
Quantum Error Mitigation: QEM techniques do not necessarily aim to correct errors entirely but instead focus on reducing the impact on the final results of the computation which requires fewer additional resources than error correction. QEM helps reduce errors in quantum results by exploiting the structure of the errors and implementing corrections based on the statistical method. Error mitigation is the key to useful near-term quantum computers.
Some techniques for Quantum Error Mitigation:
Probabilistic Error Cancellation
Zero Noise Extrapolation(ZNE)
Matrix-free measurement error mitigation
Twirled Readout Error Extinction
Quantum Error Suppression: QES is more like a technique that reduces the likelihood of error popping up while the quantum program is being run.
- Dynamic Decoupling: A technique whereby a sequence of gates amounting to the identity is added to periods of idle time for qubits in a circuit. If we have an algorithm and some qubits are idle while others are performing some operations, we will add gate sequences to these idle qubits that will not change the overall quantum state of the idle qubits but will reinvigorate the quantum coherence of those qubits. Thus the idle qubits won't lose their quantum properties.
In the above circuit, a Hadamard(H) gate is being applied to qubit 0 and then it is idle till all the CNOT(CX) operations are executed. So the qubit 0 can lose its quantum properties before the circuit is executed completely.
To suppress this we use 2 'X' gates on qubit 0, so that a new microwave pulse is applied, energizing the qubit to maintain its quantum properties without changing its result.
Difference between QEM and QEC:
QEC:
The overhead is large due to several physical qubits requirements.
The level of error correction is high
Used to achieve fault-tolerant quantum computers which is a long-term goal.
QEM:
The overhead is medium.
The level of correction is low to medium
Used in near-term quantum computers, hence could be used now.
For a more detailed discussion on QES, QEM, and QEC read this amazing blog: https://research.ibm.com/blog/quantum-error-suppression-mitigation-correction
Thus QEC, QEM, and QES are 3 crucial areas of research for exploiting the full potential of a quantum computer.