Quantum operations¶
PennyLane supports a wide variety of quantum operations—such as gates, state preparations and measurements. These operations can be used exclusively in quantum functions, like shown in the following example:
import pennylane as qml
def my_quantum_function(x, y):
qml.RZ(x, wires=0)
qml.CNOT(wires=[0,1])
qml.RY(y, wires=1)
return qml.expval(qml.PauliZ(1))
This quantum function uses the RZ
,
CNOT
,
RY
gates as well as the
PauliZ
observable.
Below is a list of all quantum operations supported by PennyLane.
Qubit operations¶
Qubit gates¶
CNOT
The controlled-NOT operator
CRot
The controlled-Rot operator
CRX
The controlled-RX operator
CRY
The controlled-RY operator
CRZ
The controlled-RZ operator
CSWAP
The controlled-swap operator
CZ
The controlled-Z operator
Hadamard
The Hadamard operator
PauliX
The Pauli X operator
PauliY
The Pauli Y operator
PauliZ
The Pauli Z operator
PhaseShift
Arbitrary single qubit local phase shift
QubitUnitary
Apply an arbitrary fixed unitary matrix.
Rot
Arbitrary single qubit rotation
RX
The single qubit X rotation
RY
The single qubit Y rotation
RZ
The single qubit Z rotation
S
The single-qubit phase gate
SWAP
The swap operator
T
The single-qubit T gate
Qubit state preparation¶
BasisState
Prepares a single computational basis state.
QubitStateVector
Prepare subsystems using the given ket vector in the computational basis.
Continuous-variable (CV) operations¶
CV Gates¶
Beamsplitter
Beamsplitter interaction.
ControlledAddition
Controlled addition operation.
ControlledPhase
Controlled phase operation.
CrossKerr
Cross-Kerr interaction.
CubicPhase
Cubic phase shift.
Displacement
Phase space displacement.
Interferometer
A linear interferometer transforming the bosonic operators according to the unitary matrix \(U\).
Kerr
Kerr interaction.
QuadraticPhase
Quadratic phase shift.
Rotation
Phase space rotation.
Squeezing
Phase space squeezing.
TwoModeSqueezing
Phase space two-mode squeezing.
CV state preparation¶
CatState
Prepares a cat state.
CoherentState
Prepares a coherent state.
DisplacedSqueezedState
Prepares a displaced squeezed vacuum state.
FockDensityMatrix
Prepare subsystems using the given density matrix in the Fock basis.
FockState
Prepares a single Fock state.
FockStateVector
Prepare subsystems using the given ket vector in the Fock basis.
GaussianState
Prepare subsystems in a given Gaussian state.
SqueezedState
Prepares a squeezed vacuum state.
ThermalState
Prepares a thermal state.
CV observables¶
FockStateProjector
The number state observable \(\ket{n}\bra{n}\).
NumberOperator
The photon number observable \(\langle \hat{n}\rangle\).
P
The momentum quadrature observable \(\hat{p}\).
PolyXP
An arbitrary second-order polynomial observable.
QuadOperator
The generalized quadrature observable \(\x_\phi = \x cos\phi+\p\sin\phi\).
X
The position quadrature observable \(\hat{x}\).
Contents
Downloads