Shor's 9-qubit Quantum Error-Correcting Code

5afab905-f433-4ee5-94bd-42408403d0e4
4.0
Description

This quantum circuit implements Shor's 9-qubit quantum error-correcting code, introducing an arbitrary error and then decoding the encoded data to correct single-qubit errors.

Qiskit Circuit Code
Python
Here is a quantum circuit that implements Shor's 9-qubit quantum error-correcting code to correct arbitrary single-qubit errors:

```python
from qiskit import QuantumCircuit

# Create a quantum circuit with 9 qubits and 9 classical bits
qc = QuantumCircuit(9, 9)

# Prepare an arbitrary state on qubit 0
qc.h(0)
qc.t(0)

# Bit-flip code encoding
qc.cx(0, 1)
qc.cx(0, 2)

# Phase-flip code encoding on the first trio
qc.h([0, 1, 2])
qc.cx(0, 3)
qc.cx(1, 4)
qc.cx(2, 5)

# Phase-flip code encoding on the second trio
qc.cx(0, 6)
qc.cx(1, 7)
qc.cx(2, 8)

# Introduce an arbitrary error on qubit 5
qc.x(5)
qc.z(5)

# Begin decoding process
# Undo phase-flip code encoding
qc.cx(0, 6)
qc.cx(1, 7)
qc.cx(2, 8)
qc.cx(0, 3)
qc.cx(1, 4)
qc.cx(2, 5)
qc.h([0, 1, 2])

# Undo bit-flip code encoding
qc.cx(0, 1)
qc.cx(0, 2)

# Measure all qubits to read out the corrected state
qc.measure(range(9), range(9))
```
Quantum Execution Results
ibm_kyiv
N/A
N/A shots
Execution Notice:

'Failed to run program: \'409 Client Error: Conflict for url: https://api.quantum.ibm.com/runtime/jobs. {"errors":[{"message":"You have reached the limit of 3 pending jobs. Please wait for a job to complete or cancel one before submitting anything new.","code":3458,"solution":"Wait until some previous jobs were finished. You can cancel pending jobs to run new jobs.","more_info":"https://docs.quantum-computing.ibm.com/errors"}]}\''

Raw Result Data
Download Results
Back to Home