qiskit-aer
qiskit-aer copied to clipboard
Make AerSimulator own backend target object
What is the expected behavior?
From Qiskit 1.0, quantum computer backend goes to BackendV2 (https://docs.quantum.ibm.com/api/qiskit/qiskit.providers.BackendV2) that has target object containing information of basis gates, coupling map, instruction properties (gate name, qubits, durations, gate error rates, etc). These properties are used for transpilation.
Currently Aer returns AerSimulator's target by using convert_to_target
function (https://docs.quantum.ibm.com/api/qiskit/qiskit.providers.convert_to_target), but this target does not contain enough backend properties.
I think simulator backend should return these properties:
- coupling map with all-to-all qubits connectivity for given max number of qubits (MPS should return its connectivity ?)
- proper basis gates for each simulation method
- there is no error or error rates set from noise model (?)
One difficult thing to make target is most of users are initializing AerSimulator
without parameters and we can not know number of qubits and simulation method at initialization.
Aer's backend is consist of 2 classes, AerBackend (https://github.com/Qiskit/qiskit-aer/blob/main/qiskit_aer/backends/aerbackend.py) is based on BackendV2 that should return proper target and properties objects and AerSinulator (https://github.com/Qiskit/qiskit-aer/blob/main/qiskit_aer/backends/aer_simulator.py) is simulation interface to users.