Qiskit/qiskit-aer

`AerState` uses instructions unsupported in `matrix_product_state` method

hhorii opened this issue · 1 comments

Informations

  • Qiskit Aer version: 0.11.1
  • Python version: 3.8
  • Operating system: MacOS

What is the current behavior?

AerState uses mc* instructions, which are not supported in matrix_product_state method

Steps to reproduce the problem

from qiskit_aer.quantum_info.states import AerStatevector
from qiskit_aer.quantum_info.states.aer_state import AerState
from qiskit.circuit.library import QFT

AerStatevector(QFT(4), method='statevector') #ok
AerStatevector(QFT(4), method='matrix_product_state') #ng

What is the expected behavior?

Pass the above code.

Suggested solutions

AerState supports apply_u and apply_cx and _aer_evolve_circuit checks basic gates of a method.

Note:
This bug is reported by @derwind.

#1643 resolved this.