iqm.iqm_client.transpile.ExistingMoveHandlingOptions#
- class iqm.iqm_client.transpile.ExistingMoveHandlingOptions(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None)#
-
Options for how
transpile_insert_moves()
should handle existing MOVE instructions in the circuit.Attributes
Strict mode.
Lenient mode.
Removes existing MOVE instructions from the circuit using
transpile_remove_moves()
, and then does the same as TRUST.Methods
_generate_next_value_
(name, start, count, ...)Generate the next value when not given.
_new_member_
(**kwargs)Create and return a new object.
_value_repr_
()Return repr(self).
__format__
(format_spec)Return a formatted version of the string as described by format_spec.
__new__
(value)__repr__
()Return repr(self).
__str__
()Return str(self).
- KEEP = 'keep'#
Strict mode. The circuit, including existing MOVE instructions in it, is validated first. Then, any fictional two-qubit gates in the circuit are implemented with qubit-resonator gates.
- TRUST = 'trust'#
Lenient mode. Same as KEEP, but does not validate the circuit first. Will attempt to fix any apparent user errors in the circuit by adding extra MOVE gates.
- REMOVE = 'remove'#
Removes existing MOVE instructions from the circuit using
transpile_remove_moves()
, and then does the same as TRUST. This may produce a more optimized end result.