bloqade.lanes.analysis.placement.lattice.ExecuteCZ
classExecuteCZ¶source
bloqade.lanes.analysis.placement.lattice.ExecuteCZ
Bases: ConcreteState
Defines the state representing the placement of atoms before/after executing CZ gate pulse.
Signature
class ExecuteCZ(occupied: frozenset[LocationAddress], layout: tuple[LocationAddress, ...], move_count: tuple[int, ...], active_cz_zones: frozenset[ZoneAddress], move_layers: tuple[tuple[LaneAddress, ...], ...] = ())NOTE: you can specify multiple entnangling zones to be active in a single ExecuteCZ state in cases where there are multiple entangling zones that can be used in parallel.
Parameters
| Name | Type | Default | Description |
|---|---|---|---|
occupied | frozenset[LocationAddress] | required | |
layout | tuple[LocationAddress, ...] | required | |
move_count | tuple[int, ...] | required | |
active_cz_zones | frozenset[ZoneAddress] | required | |
move_layers | tuple[tuple[LaneAddress, ...], ...] | () |
Attributes
| Name | Type | Default | Description |
|---|---|---|---|
active_cz_zones | frozenset[ZoneAddress] | required | The set of CZ zones that need to execute for this round of CZ gates. |
move_layers | tuple[tuple[LaneAddress, ...], ...] | () | The layers of moves that need to be executed to reach this state. |
methodget_move_layers¶source
bloqade.lanes.analysis.placement.lattice.ExecuteCZ.get_move_layers
def get_move_layers() -> tuple[tuple[LaneAddress, ...], ...]Returns
tuple[tuple[LaneAddress, ...], ...]
methodfrom_concrete_state¶source
bloqade.lanes.analysis.placement.lattice.ExecuteCZ.from_concrete_state
Signature
def from_concrete_state(state: ConcreteState, active_cz_zones: frozenset[ZoneAddress]) -> ExecuteCZParameters
| Name | Type | Description |
|---|---|---|
state | ConcreteState | |
active_cz_zones | frozenset[ZoneAddress] |
Returns
ExecuteCZ
methodis_subseteq¶source
bloqade.lanes.analysis.placement.lattice.ExecuteCZ.is_subseteq
def is_subseteq(other: AtomState) -> boolParameters
| Name | Type | Description |
|---|---|---|
other | AtomState |
Returns
bool
methodverify¶source
bloqade.lanes.analysis.placement.lattice.ExecuteCZ.verify
Signature
def verify(arch_spec: ArchSpec, controls: tuple[int, ...], targets: tuple[int, ...])Returns True if the current atom configuration will execute the provided entangled pairs.
Parameters
| Name | Type | Description |
|---|---|---|
arch_spec | ArchSpec | |
controls | tuple[int, ...] | |
targets | tuple[int, ...] |