I have been using the Ignis module for performing error mitigation but it accounts only for the measurement errors. For this reason, I want to know if there is some way to perform gate error mitigation using Qiskit.
2 Answers
One thing you can do is zero noise extrapolation. The idea of the technique is to deliberately add noise to your circuit (by stretching the duration of the pulses of your circuit: Extending the computational reach of a noisy superconducting quantum processor or by adding extra gates that do nothing: Option Pricing using Quantum Computers) and then extrapolate the results to the zero noise limit.
To implement this in Qiskit you may want to take a look at mitiq: a library that provides functions to add noise to circuits by adding gates and functions to extrapolate using different methods.
One naive way is based from this paper, Cloud Quantum Computing of an Atomic Nucleus, by adding odd number of CNOTs gate to the circuit and do extrapolation. It is kinda hand wavy and you hope that it will gives you something closer to the true result.
So let's say your original circuit is:
Here you have 1 CNOT gate. Then you would perform another execution using a longer but identical circuit:
Here you have 3 CNOT gates. At this point, you use the two results to do your extrapolation.