qiskit icon indicating copy to clipboard operation
qiskit copied to clipboard

Transpilation Failure at Optimization Level 3

Open p51lee opened this issue 10 months ago • 2 comments

Environment

  • Qiskit version: 1.0.2
  • Python version: 3.10.9
  • Operating system: MacOS 14.4

What is happening?

qiskit.transpile with optimization_level=3 fails to transpile this circuit:

circ = qiskit.QuantumCircuit(3, 1)
circ.swap(1, 2)
circ.measure(1, 0)
circ.measure(0, 0)

How can we reproduce the issue?

To reproduce the issue, execute the following code:

import qiskit

circ = qiskit.QuantumCircuit(3, 1)
circ.swap(1, 2)
circ.measure(1, 0)
circ.measure(0, 0)

print(qiskit.transpile(circ, optimization_level=3))

Running this code results in ValueError:

File "qiskit/transpiler/passes/optimization/optimize_swap_before_measure.py", line 65, in run
    new_measure_qarg = swap_qargs[swap_qargs.index(old_measure_qarg) - 1]
ValueError: tuple.index(x): x not in tuple

What should happen?

The circuit should be transpiled without any errors.

Any suggestions?

No response

p51lee avatar Apr 03 '24 08:04 p51lee