FixedCROTGateSet
- class FixedCROTGateSet(n_qubits, control_rotation_ansatz='u3', target_rotation_ansatz='u3', closing_rotation_ansatz='u3', spam_qubits=(0,), **properties)
Star-topology gate set with
rz/sxsingles and a fixedcrotxpi2.Single-qubit operations are the parameterized virtual
rzand the fixedsx, from which arbitrary single-qubit rotations are composed. The two-qubit native operation iscrotxpi2, the parameterless controlled X rotation at \(\theta = \pi/2\) the hardware implements, on every star edge(0, target).Every synthesis layer puts one rotation on the entangler’s control and one on its target.
control_rotation_ansatzandtarget_rotation_ansatzchoose each of them."u3"is a free rotation and lowers to twosx."u2"fixes \(\theta\) at \(\pi/2\) and lowers to onesx, at the cost of one free angle. The closing layer after the last entangler puts one rotation on every qubit, andclosing_rotation_ansatzchooses each of them. By default, synthesis rounds a rotation close to \(0\) onto \(0\), which takes nosx, and one close to \(\pi/2\) onto \(\pi/2\), which takes one.spam_qubitsnames the qubits whose state preparation and measurement (SPAM) the device performs together. Aresetof any of them resets all of them at once. One readout resolves their populations together, so it measures \(Z\) on each of them and every product of those from the same data. A qubit outside the group gets \(|0\rangle\) by an exchange with a reset qubit. The default,(0,), resets and reads the central qubit alone.- Parameters:
n_qubits (
int) – Number of qubits in the star register, including the central qubit0.control_rotation_ansatz (
str|Sequence[str]) – Rotation a synthesis layer puts on the entangler’s control. One name for every star edge, or one name per edge inplacementsorder.target_rotation_ansatz (
str|Sequence[str]) – Rotation a synthesis layer puts on the entangler’s target, in the same two forms.closing_rotation_ansatz (
str|Sequence[str]) – Rotation the closing layer puts on each qubit. One name for every qubit, or one name per qubit in qubit order.spam_qubits (
Sequence[int]) – Qubits the device resets and reads out together.
- Raises:
ValidationError – If a rotation ansatz names something other than
"u3"or"u2", a sequence does not have one name per edge or qubit, orspam_qubitsis empty, repeats a qubit or names one outside the register.
Note
Pulse-level compilation is provided by
XeedQBackend, which lowers this gate set’s native gates to a hardware pulse program, from the explicit device parameters bound to it viaPulseParameters.
Attributes
Return the duration of every native gate that has one. |
|
Return the error of every native gate that has one. |
|
Return the native gate families. |
|
Return the native gates supported by the gate set. |
|
Return where a native entangler sits, and which one. |
|
Return the qubits every native gate reserves while it runs. |
|
Return the |
|
Return the qubits the device resets and reads out together. |
|
Return the qubit set every native entangling gate can be built on. |
Methods
|
Return a native gate's duration, or |
|
Return a native gate's average gate infidelity on its own qubits, or |
|
Rewrite a circuit's resets as the resets the device performs. |
|
Return the native readout a requested Pauli string is realized through by default. |
Return every Pauli string the hardware reads out directly. |
|
|
Generate a random circuit drawn from the native gate set. |
|
Return the qubits a native gate reserves while it runs. |
|
Build the circuit resetting these qubits to \(|0\rangle\). |
|
Return a copy of this gate set with new errors, durations or reserved qubits. |