configuring backends

class qnexus.AerConfig(
*,
type: Literal['AerConfig'] = 'AerConfig',
noise_model: AerNoiseModel | None = None,
simulation_method: str = 'automatic',
crosstalk_params: CrosstalkParams | None = None,
n_qubits: Annotated[int, Gt(gt=0)] = 40,
seed: int | None = None,
)

Qiskit Aer QASM simulator.

class qnexus.AerStateConfig(
*,
type: Literal['AerStateConfig'] = 'AerStateConfig',
n_qubits: Annotated[int, Gt(gt=0)] = 40,
)

Qiskit Aer state vector simulator.

class qnexus.AerUnitaryConfig(
*,
type: Literal['AerUnitaryConfig'] = 'AerUnitaryConfig',
n_qubits: Annotated[int, Gt(gt=0)] = 40,
)

Qiskit Aer unitary simulator.

class qnexus.BraketConfig(
*,
type: Literal['BraketConfig'] = 'BraketConfig',
local: bool,
local_device: str = 'default',
device_type: str | None = None,
provider: str | None = None,
device: str | None = None,
s3_bucket: str | None = None,
s3_folder: str | None = None,
simplify_initial: bool = False,
)

Runs circuits on quantum devices and simulators using Amazon’s Braket service.

class qnexus.QuantinuumConfig(
*,
type: Literal['QuantinuumConfig'] = 'QuantinuumConfig',
device_name: str,
simulator: str = 'state-vector',
machine_debug: bool = False,
attempt_batching: bool = False,
allow_implicit_swaps: bool = True,
postprocess: bool = False,
noisy_simulation: bool = True,
target_2qb_gate: str | None = None,
user_group: str | None = None,
max_batch_cost: int = 2000,
compiler_options: QuantinuumCompilerOptions | None = None,
no_opt: bool = True,
allow_2q_gate_rebase: bool = False,
leakage_detection: bool = False,
simplify_initial: bool = False,
max_cost: int | None = None,
error_params: UserErrorParams | None = None,
)

Runs circuits on Quantinuum’s quantum devices and simulators.

Parameters:
  • device_name – The quantum computer or emulator to target.

  • simulator – If device_name is a simulator, the type of simulator to use.

  • machine_debug – Whether to run in machine debug mode.

  • attempt_batching – Whether to attempt batching of circuits.

  • allow_implicit_swaps – Whether to allow implicit swaps in the compilation process.

  • postprocess – Apply end-of-circuit simplifications and classical postprocessing to improve fidelity of results

  • noisy_simulation – Whether to use a noisy simulation with an error model.

  • target_2qb_gate – The target 2-qubit gate for the compilation process.

  • compiler_options – Additional options for the Quantinuum Systems compiler.

  • no_opt – Whether to disable optimization in the compilation process.

  • allow_2q_gate_rebase – Whether to allow 2-qubit gate rebase in the compilation process.

  • leakage_detection – If true, adds additional Qubit and Bit to Circuit to detect leakage errors. Run prune_shots_detected_as_leaky on returned BackendResult to get counts with leakage errors removed.

  • simplify_initial – Apply the pytket SimplifyInitial pass to improve fidelity of results assuming all qubits initialized to zero.

  • error_params – Additional error parameters for execution on an emulator.

  • user_group – The user group for the compilation jobs.

  • max_batch_cost – The maximum HQC cost for a batch of programs (total).

  • max_cost – The maximum HQC cost for a single programs.

class qnexus.IBMQConfig(
*,
type: Literal['IBMQConfig'] = 'IBMQConfig',
backend_name: str,
instance: str,
region: str | None = None,
monitor: bool = False,
postprocess: bool = False,
simplify_initial: bool = False,
)

Runs circuits on IBM’s quantum devices.

class qnexus.IBMQEmulatorConfig(
*,
type: Literal['IBMQEmulatorConfig'] = 'IBMQEmulatorConfig',
backend_name: str,
instance: str,
region: str | None = None,
seed: int | None = None,
postprocess: bool = False,
)

Runs circuits on a Nexus-hosted simulator which uses the noise model of a specific IBM quantum device.

class qnexus.ProjectQConfig(
*,
type: Literal['ProjectQConfig'] = 'ProjectQConfig',
)

ProjectQ state vector simulator.

class qnexus.QulacsConfig(
*,
type: Literal['QulacsConfig'] = 'QulacsConfig',
result_type: str = 'state_vector',
gpu_sim: bool = False,
seed: int | None = None,
)

Qulacs simulator.

enum qnexus.models.language.Language(
value,
)

Enumeration for the possible submission languages for remote submissions.

Member Type:

str

Valid values are as follows:

AUTO = <Language.AUTO: 'AUTO'>
QASM = <Language.QASM: 'OPENQASM 2.0'>
QIR = <Language.QIR: 'QIR 1.0'>