qtcodes icon indicating copy to clipboard operation
qtcodes copied to clipboard

Transpile logical circuits to topological QEC code circuits

Open amirebrahimi opened this issue 2 years ago • 0 comments

Qiskit has a transpiler, which can transform and optimize circuits via various passes. Passes can be run individually if instantiated as such or can be included in different PassManagers as a default.

The idea here is that we can create a PassManager to make use of qtcodes to take a standard Qiskit circuit and transpile it to a qtcode circuit. Ideally, qtcodes could inject the Pass into Qiskit upon initialization, but if that is not possible, then perhaps we can define a custom PassManager on the qtcodes side that can be used when one wants to transpile a standard circuit to an error-correcting one.

One of the unique features of a pass is that it can consider the actual hardware when performing the pass operation. This feature can be used to transpile a standard circuit into a qtcode circuit that can run on actual hardware. An error could be thrown if that is not possible based on the coupling map or the number of qubits available.

There may be some overlap between this task and #63 or perhaps one can be used by the other.

amirebrahimi avatar Mar 07 '22 01:03 amirebrahimi