iqm.iqm_client.validation.validate_circuit_moves

iqm.iqm_client.validation.validate_circuit_moves#

iqm.iqm_client.validation.validate_circuit_moves(architecture: DynamicQuantumArchitecture, circuit: Circuit, qubit_mapping: dict[str, str] | None = None, validate_moves: MoveGateValidationMode = MoveGateValidationMode.STRICT, *, must_close_sandwiches: bool = True) None#

Raise an error if the MOVE gates in the circuit are not valid in the given architecture.

Parameters:
  • architecture (DynamicQuantumArchitecture) – Quantum architecture to check against.

  • circuit (Circuit) – Quantum circuit to validate.

  • qubit_mapping (dict[str, str] | None) – Mapping of logical qubit names to physical qubit names. Can be set to None if the circuit already uses physical qubit names.

  • validate_moves (MoveGateValidationMode) – Option for bypassing full or partial MOVE gate validation.

  • must_close_sandwiches (bool) – Iff True, MOVE sandwiches cannot be left open when the circuit ends.

Raises:

CircuitValidationError – validation failed

Return type:

None