pyqonvert.noise.insert_parallel_noise_noise_mapping_program

pyqonvert.noise.insert_parallel_noise_noise_mapping_program(program, device, placement=None)

Parallelize a QuantumProgram and insert noise in a noise mapping compatible way.

The returned program is a parallelized program without decomposition blocks but with PragmaStopParallelBlock annotations.

Note that contrary to insert_parallel_noise_noise_mapping for a Circuit only one QuantumProgram containing PragmaStopParallelBlock annotations is returned. No QuantumProgram with modified PragmaDecompositionBlock statements is returned as that can only be used for noise mapping of Trotter step circuits.

Parameters:
  • program (QuantumProgram) -- The program that is parallelized.

  • device (Device) -- The Device containing noise information.

  • placement (str) -- Where the noise is inserted relative to the gates Available: after, before, symmetric. Default: after.

Returns:

The parallelized program.

Return type:

QuantumProgram

Raises:
  • RuntimeError -- Error occurred during parallelization or noise mapping.

  • ValueError -- Could not convert inputs from Python.