qat.experimental.system_data.circuit.qubits module

Qubit level derived view assembled from canonical data.

class Interaction(source_position, target_position, gate_fidelities)

Bases: object

Resolved directed coupling between two qubits in a QubitView.

Positions refer to the ordinal index of each qubit in the QubitView.qubits mapping (0-based, in canonical order). They are view-local and have no meaning outside of the QubitView that produced them.

Variables:
  • source_position – Position of the source qubit in QubitView.qubits.

  • target_position – Position of the target qubit in QubitView.qubits.

  • gate_fidelities – Per-gate fidelity values keyed by gate name.

gate_fidelities: Mapping[str, float]
source_position: int
target_position: int
class OperationSet(operation_type, fidelity=None, duration=None)

Bases: object

Operations available on a qubit.

Variables:
  • operation_type – Identifiers of the operations supported on this qubit.

  • fidelity – Optional per-gate fidelity mapping. Stubbed as None until the schema exposes per-operation fidelity data.

  • duration – Optional per-gate duration mapping in picoseconds. Stubbed as None until the schema exposes per-operation duration data.

duration: Mapping[str, float | None] | None = None
fidelity: Mapping[str, float | None] | None = None
operation_type: tuple[str, ...]
class QubitProperties(index, supported_operations, measurement_fidelity)

Bases: object

Per-qubit properties within a derived view.

Variables:
  • index – Qubit index.

  • supported_operations – Operations available on this qubit.

  • measurement_fidelity – Scalar measurement fidelity, or None if unavailable.

index: int
measurement_fidelity: float | None
supported_operations: OperationSet
class QubitView(qubits, interactions)

Bases: DerivedViewInterface[CanonicalSystemData]

Derived qubit-level view for gate-level compilation.

By default all qubits in the canonical data are included. Pass qubit_ids to derive() to restrict the view to a specific subset; couplings are automatically filtered to pairs where both endpoints are within that subset.

Variables:
  • qubits – Per-qubit properties keyed by qubit identifier.

  • interactions – Directed interactions between qubits, with positions resolved against qubits iteration order and gate fidelities pre-extracted.

classmethod derive(parent, qubit_ids=None, **kwargs)

Constructs a qubit view over a subset of qubits in the canonical data.

When qubit_ids is None all qubits are included. Interactions are filtered to pairs where both endpoints are within the included set.

Parameters:
  • parent (CanonicalSystemData) – Canonical system data.

  • qubit_ids (Optional[set[str]]) – Optional set of qubit ids to include. Defaults to all qubits when None.

Return type:

QubitView

Returns:

QubitView restricted to the given qubit ids.

interactions: tuple[Interaction, ...]
qubits: Mapping[str, QubitProperties]