cirq.PhasedISwapPowGate

class cirq.PhasedISwapPowGate(*, phase_exponent: Union[float, sympy.core.symbol.Symbol] = 0.25, exponent: Union[float, sympy.core.symbol.Symbol] = 1.0)[source]

Fractional ISWAP conjugated by Z rotations.

PhasedISwapPowGate with phase_exponent p and exponent t is equivalent to
the composition
(Z^-p ⊗ Z^p) ISWAP^t (Z^p ⊗ Z^-p)

and is given by the matrix:

[[1, 0, 0, 0],
 [0, c, i·s·f, 0],
 [0, i·s·f*, c, 0],
 [0, 0, 0, 1]]

where:

c = cos(π·t/2)
s = sin(π·t/2)
f = exp(2πi·p)

and star indicates complex conjugate.

__init__(*, phase_exponent: Union[float, sympy.core.symbol.Symbol] = 0.25, exponent: Union[float, sympy.core.symbol.Symbol] = 1.0)[source]
Parameters
  • phase_exponent – The exponent on the Z gates. We conjugate by the T gate by default.

  • exponent – The exponent on the ISWAP gate, see EigenGate for details.

Methods

controlled([num_controls, control_values, …])

Returns a controlled version of this gate. If no arguments are

num_qubits()

The number of qubits this gate acts on.

on(*qubits)

Returns an application of this gate to the given qubits.

validate_args(qubits)

Checks if this gate can be applied to the given qubits.

wrap_in_linear_combination([coefficient])

Attributes

exponent

global_shift

phase_exponent