cirq.PauliInteractionGate

class cirq.PauliInteractionGate(pauli0: cirq.ops.pauli.Pauli, invert0: bool, pauli1: cirq.ops.pauli.Pauli, invert1: bool, *, exponent: Union[cirq.value.symbol.Symbol, float] = 1.0)[source]
__init__(pauli0: cirq.ops.pauli.Pauli, invert0: bool, pauli1: cirq.ops.pauli.Pauli, invert1: bool, *, exponent: Union[cirq.value.symbol.Symbol, float] = 1.0) → None[source]
Parameters:
  • pauli0 – The interaction axis for the first qubit.
  • invert0 – Whether to condition on the +1 or -1 eigenvector of the first qubit’s interaction axis.
  • pauli1 – The interaction axis for the second qubit.
  • invert1 – Whether to condition on the +1 or -1 eigenvector of the second qubit’s interaction axis.
  • exponent – Determines the amount of phasing to apply to the vector equal to the tensor product of the two conditions.

Methods

on(*qubits) Returns an application of this gate to the given qubits.
qubit_index_to_equivalence_group_key(index) Returns a key that differs between non-interchangeable qubits.
validate_args(qubits) Checks if this gate can be applied to the given qubits.

Attributes

CNOT
CZ
exponent