qat.pbo.decompositions.u3_decomposition

qat.pbo.decompositions.u3_decomposition()

Returns KAKCompression parameters to compress gates as a single U3 gate (from IBM)

\[U3(\theta, \phi, \lambda) = R_Z(\phi)R_X(-\frac{\pi}{2})R_(\theta)R_X(\frac{\pi}{2})R_Z(\lambda)\]

This method is designed to be used directly in a KAKCompression plugin:

from qat.pbo.decompositions import u3_decomposition
from qat.plugins import KAKCompression

plugin = KAKCompression(**u3_decomposition())
Returns

the one qubit gate decomposition: result["variables"] is a list of VAR corresponding to the abstract matrix and result["pattern"] is a pattern function of this matrix

Return type

dict