Qiskit / qiskit-aer

Aer is a high performance simulator for quantum circuits that includes noise models
https://qiskit.github.io/qiskit-aer/
Apache License 2.0
506 stars 364 forks source link

Make AerSimulator own backend target object #2116

Open doichanj opened 7 months ago

doichanj commented 7 months ago

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:

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.

ljcamargo commented 6 months ago

Hi @doichanj so, is the goal here to create a totally new Target object just for Aer with this coupling maps, etc..? or just a new function such as "convert_to_enriched_target" to improve instatiation from BackendV1 with new new data. If a new Target class is needed I guess it should be sublclass of Target. Thanks

doichanj commented 6 months ago

I believe there is not large issue by using default target made from convert_to_target So I think it is OK to study or evaluate if there is critical issues by using default target, or if there are good applications if there are customized targets specified for the simulator

ljcamargo commented 5 months ago

hi @doichanj I making progress in this, but I wonder if you have a test case for this because I'm not sure if the current tests or what I have tested so far cover everything. Thanks

doichanj commented 5 months ago

It is helpful for us if you can make good test cases