IQMFacadeBackend

IQMFacadeBackend#

Module: iqm.qiskit_iqm.iqm_provider

class iqm.qiskit_iqm.iqm_provider.IQMFacadeBackend(client: IQMClient, *, name: str | None = None, **kwargs)#

Bases: IQMBackend

Simulates locally the execution of quantum circuits on a remote mock IQM quantum computer.

This backend is meant to be used to run circuits on a mock IQM Server that has no real quantum hardware, and if the mock execution is successful, simulate the circuits locally using an error model that is broadly representative of the mocked QPU. Finally it returns the simulated results.

If you just want to run a local simulation, use IQMFakeBackend directly.

Important

When using a facade backend, the IQM Server URL of IQMProvider should always point to a mock environment rather than a real quantum computer, as the execution results from the server will be discarded and replaced by a locally simulated result generated by Qiskit Aer. If you use a real quantum computer with a facade backend, you will just waste your credits and/or computation time.

Parameters:
  • client (IQMClient) – Client instance for communicating with an IQM Server.

  • name (str | None) – Name of the fake backend (simulator instance) to use. If None, will be determined automatically based on the static quantum architecture of the server.

  • kwargs – Optional arguments to be passed to the parent class.

Attributes

name

Name of the backend.

description

Optional human-readable description.

online_date

Date that the backend came online.

backend_version

Version of the backend being provided.

Methods

run

Simulate the execution of quantum circuit(s).

run(run_input: QuantumCircuit | list[QuantumCircuit], *, use_timeslot: bool = False, **options) JobV1#

Simulate the execution of quantum circuit(s).

Parameters:
Return type:

JobV1

Inheritance

Inheritance diagram of iqm.qiskit_iqm.iqm_provider.IQMFacadeBackend