Skip to main content
IBM Quantum Platform
Esta página corresponde a una versión anterior de Qiskit SDK Ir a la última versión

TwoQubitWeylDecomposition

class qiskit.synthesis.TwoQubitWeylDecomposition(unitary_matrix, *, fidelity=0.999999999, _unpickling=False)

GitHub

Bases: object

Two-qubit Weyl decomposition.

Decompose two-qubit unitary

U=(K1lK1r)e(iaXX+ibYY+icZZ)(K2lK2r)U = ({K_1}^l \otimes {K_1}^r) e^{(i a XX + i b YY + i c ZZ)} ({K_2}^l \otimes {K_2}^r)

where

UU(4), K1l,K1r,K2l,K2rSU(2)U \in U(4),~ {K_1}^l, {K_1}^r, {K_2}^l, {K_2}^r \in SU(2)

and we stay in the “Weyl Chamber”

π/4abc\pi /4 \geq a \geq b \geq |c|

This is an abstract factory class that instantiates itself as specialized subclasses based on the fidelity, such that the approximation error from specialization has an average gate fidelity at least as high as requested. The specialized subclasses have unique canonical representations thus avoiding problems of numerical stability.

Passing non-None fidelity to specializations is treated as an assertion, raising QiskitError if forcing the specialization is more approximate than asserted.

References

  1. Cross, A. W., Bishop, L. S., Sheldon, S., Nation, P. D. & Gambetta, J. M., Validating quantum computers using randomized model circuits, arXiv:1811.12926 [quant-ph]
  2. B. Kraus, J. I. Cirac, Optimal Creation of Entanglement Using a Two-Qubit Gate, arXiv:0011050 [quant-ph]
  3. B. Drury, P. J. Love, Constructive Quantum Shannon Decomposition from Cartan Involutions, arXiv:0806.4015 [quant-ph]

Parameters

  • unitary_matrix (ndarray) – The unitary to decompose.
  • fidelity – The target fidelity of the decomposed operation.

Attributes

a

Tipo: float

b

Tipo: float

c

Tipo: float

global_phase

Tipo: float

K1l

Tipo: ndarray

K2l

Tipo: ndarray

K1r

Tipo: ndarray

K2r

Tipo: ndarray

unitary_matrix

Tipo: ndarray

requested_fidelity

Tipo: float | None

calculated_fidelity

Tipo: float


Methods

actual_fidelity

actual_fidelity(**kwargs)

GitHub

Calculates the actual fidelity of the decomposed circuit to the input unitary.

Return type

float

circuit

circuit(*, euler_basis=None, simplify=False, atol=1e-12)

GitHub

Returns Weyl decomposition in circuit form.

Return type

QuantumCircuit

from_bytes

classmethod from_bytes(bytes_in, *, requested_fidelity, **kwargs)

GitHub

Decode bytes into TwoQubitWeylDecomposition.

Return type

TwoQubitWeylDecomposition

specialize

specialize()

GitHub

Make changes to the decomposition to comply with any specialization.

¿Le ha resultado útil esta página?
Informe de un error, de una errata o solicite contenido en GitHub.