uniqc.simulator.qasm_simulator module#

OpenQASM 2.0 quantum program simulator.

This module provides simulators for OpenQASM 2.0 format quantum programs, supporting both ideal and noisy simulations.

Key exports:
  • QASM_Simulator: Ideal simulator for OpenQASM 2.0 programs.

  • QASM_Noisy_Simulator: Noisy simulator for OpenQASM 2.0 programs with error models.

class uniqc.simulator.qasm_simulator.QASM_Noisy_Simulator(backend_type='statevector', available_qubits=None, available_topology=None, error_loader=None, readout_error={})[source]#

Bases: BaseNoisySimulator

Noisy OpenQASM 2.0 quantum program simulator.

Simulator for OpenQASM 2.0 format quantum programs with noise model support.

Parameters:
  • backend_type – Backend type (“statevector” or “densitymatrix”).

  • available_qubits (List[int]) – List of available qubit indices (optional).

  • available_topology (List[List[int]]) – List of available qubit pairs (optional).

  • error_loader (ErrorLoader) – ErrorLoader instance for gate error injection (optional).

  • readout_error (Dict[int, List[float]]) – Dict mapping qubit index to [p0, p1] readout error rates (optional).

class uniqc.simulator.qasm_simulator.QASM_Simulator(backend_type='statevector', available_qubits=None, available_topology=None, least_qubit_remapping=False, **extra_kwargs)[source]#

Bases: BaseSimulator

OpenQASM 2.0 quantum program simulator.

Simulator for OpenQASM 2.0 format quantum programs.

Parameters:
  • backend_type – Backend type (“statevector” or “densitymatrix”).

  • available_qubits (List[int]) – List of available qubit indices (optional).

  • available_topology (List[List[int]]) – List of available qubit pairs (optional).

  • least_qubit_remapping – Whether to remap qubits to least-available indices (default False).

  • **extra_kwargs – Additional arguments passed to BaseSimulator.