A cirq.Qid supporting Rigetti QCS Aspen device topology.
cirq_rigetti.aspen_device.RigettiQCSAspenDevice(
isa: Union[InstructionSetArchitecture, Dict[str, Any]]
) -> None
Args |
isa
|
The InstructionSetArchitecture retrieved from the QCS api.
|
Raises |
UnsupportedRigettiQCSQuantumProcessor
|
If the isa does not define
an Aspen device.
|
Attributes |
metadata
|
Returns the associated Metadata with the device if applicable.
|
qubit_topology
|
Return qubit topology indices with nx.Graph.
|
Methods
qubits
View source
qubits() -> List['AspenQubit']
Return list of AspenQubit
s within device topology.
Returns |
List of AspenQubit s within device topology.
|
validate_circuit
validate_circuit(
circuit: 'cirq.AbstractCircuit'
) -> None
Raises an exception if a circuit is not valid.
Args |
circuit
|
The circuit to validate.
|
Raises |
ValueError
|
The circuit isn't valid for this device.
|
validate_moment
validate_moment(
moment: 'cirq.Moment'
) -> None
Raises an exception if a moment is not valid.
Args |
moment
|
The moment to validate.
|
Raises |
ValueError
|
The moment isn't valid for this device.
|
validate_operation
View source
validate_operation(
operation: 'cirq.Operation'
) -> None
Raises an exception if an operation does not satisfy the topological constraints of the device.
Note, in case the operation is invalid, you can still use the Quil
compiler to rewire qubits and decompose the operation to this device's
topology.
Additionally, this method will not attempt to decompose the operation into this
device's native gate set. This integration, by default, uses the Quil
compiler to do so.
Please see the Quil Compiler
documentation
for more information.
Args |
operation
|
The operation to validate.
|
Raises |
UnsupportedRigettiQCSOperation
|
The operation isn't valid for this device.
|
validate_qubit
View source
validate_qubit(
qubit: 'cirq.Qid'
) -> None
Raises an exception if the qubit does not satisfy the topological constraints of the RigettiQCSAspenDevice.
Args |
qubit
|
The qubit to validate.
|
Raises |
UnsupportedQubit
|
The operation isn't valid for this device.
|
__eq__
__eq__(
other: _SupportsValueEquality
) -> bool
__ne__
__ne__(
other: _SupportsValueEquality
) -> bool