qat.experimental.system_data.materialisers.operations.operation_builder module
Abstract operation-builder contract for canonical per-qubit operation sets.
- class AbstractOperationBuilder(qubit_id, coupled_qubit_ids=(), control_qubit_ids=(), has_x_pi=True)
Bases:
ABCContract for constructing qubit-owned canonical operation sets.
Subclasses implement the operation-construction methods and inherit the template
build_single_qubit_operationsandbuildassembly logic.- Parameters:
qubit_id¶ (
str) – Identifier of the qubit that will own these operations.coupled_qubit_ids¶ (
tuple[str,...]) – Identifiers of qubits this qubit drives.control_qubit_ids¶ (
tuple[str,...]) – Identifiers of qubits that drive this qubit.has_x_pi¶ (
bool) – Whether a calibrated X(π) pulse is available.
- build(extra_operations=())
Return the full operation set including topology-derived multi-qubit gates.
- Return type:
tuple[OperationData,...]
- build_single_qubit_operations(extra_operations=())
Return the single-qubit operation set for this builder’s qubit.
- Return type:
tuple[OperationData,...]
- abstract make_delay_operation()
- Return type:
- abstract make_had_operation()
- Return type:
- abstract make_id_gate()
- Return type:
- abstract make_initiate_operation()
- Return type:
- abstract make_measure_operation()
- Return type:
- make_private_single_qubit_operations()
Return implementation-specific private/support single-qubit operations.
The default implementation returns no private operations.
- Return type:
tuple[OperationData,...]
- abstract make_reset_operation()
- Return type:
- abstract make_rx_gate()
- Return type:
- abstract make_ry_gate()
- Return type:
- abstract make_rz_gate()
- Return type:
- abstract make_s_operation()
- Return type:
- abstract make_sdg_operation()
- Return type:
- abstract make_sx_operation()
- Return type:
- abstract make_sxdg_operation()
- Return type:
- abstract make_t_operation()
- Return type:
- abstract make_tdg_operation()
- Return type:
- abstract make_two_qubit_operations()
- Return type:
tuple[OperationData,...]
- abstract make_u1_gate()
- Return type:
- abstract make_u2_gate()
- Return type:
- abstract make_u_gate()
- Return type:
- abstract make_x_gate()
- Return type:
- abstract make_y_gate()
- Return type:
- abstract make_z_operation()
- Return type: