qat.interop.qiskit.BackendToQPU

class qat.interop.qiskit.BackendToQPU(backend=None, plugins=None, token=None, ibm_backend='ibm_brisbane', optimization_level=0)

Wrapper around any Qiskit simulator or quantum chip connection. Despite the asynchronous nature of Qiskit’s backends, this class defines a synchronous QPU. If you need an asynchronous QPU, please use AsyncBackendToQPU.

This QPU can be instantiated using:

  • A Qiskit backend: use the keyword argument backen

  • An IBM token and the name of the backend: please use the keyword arguments token and ibm_backend (default backend is "ibm_brisbane")

  • No argument: the "aer_simulator" is used if no argument is specified

Parameters:
  • backend – The Backend Qiskit object that is supposed to execute the circuit.

  • plugins (list) – Linked plugins.

  • token (str) – Qiskit IBM login token. If not supplied, it is loaded from the environment variable QISKIT_TOKEN.

  • ibm_backend (str, optional) – Name of the backend. Default to ‘ibm_brisbane’

  • optimization_level (int, optional) –

    Optimization level applied to the circuit.

    • 0: No optimization (default),

    • 1: Light optimization,

    • 2: Heavy optimization,

    • 3: Highest optimization.

submit(batch: Batch, meta_data: dict = None) BatchResult

Executes a batch of jobs and returns the corresponding list of Results.

Parameters:

batch (Batch) – A batch of jobs. If a single job is provided, the job is embedded into a Batch, executed, and the first result is returned.

Returns:

A batch result.

Return type:

BatchResult