Gates
BraketSimulators.jl
provides many pre-implemented gates which can be used to build up circuits. For gates with angle parameters, you can supply Irrational
s like π
as arguments.
BraketSimulator.Gate
— TypeGate <: QuantumOperator
Abstract type representing a quantum gate.
BraketSimulator.AngledGate
— TypeAngledGate{NA} <: Gate
Parametric type representing a quantum gate with NA
angle
parameters.
BraketSimulator.I
— TypeBraketSimulator.I <: Gate
BraketSimulator.I() -> BraketSimulator.I
BraketSimulator.I gate.
BraketSimulator.X
— TypeBraketSimulator.X <: Gate
BraketSimulator.X() -> BraketSimulator.X
BraketSimulator.X gate.
BraketSimulator.Y
— TypeBraketSimulator.Y <: Gate
BraketSimulator.Y() -> BraketSimulator.Y
BraketSimulator.Y gate.
BraketSimulator.Z
— TypeBraketSimulator.Z <: Gate
BraketSimulator.Z() -> BraketSimulator.Z
BraketSimulator.Z gate.
BraketSimulator.H
— TypeBraketSimulator.H <: Gate
BraketSimulator.H() -> BraketSimulator.H
BraketSimulator.H gate.
BraketSimulator.Rx
— TypeBraketSimulator.Rx <: AngledGate{1}
BraketSimulator.Rx(angles) -> BraketSimulator.Rx
BraketSimulator.Rx gate.
BraketSimulator.Ry
— TypeBraketSimulator.Ry <: AngledGate{1}
BraketSimulator.Ry(angles) -> BraketSimulator.Ry
BraketSimulator.Ry gate.
BraketSimulator.Rz
— TypeBraketSimulator.Rz <: AngledGate{1}
BraketSimulator.Rz(angles) -> BraketSimulator.Rz
BraketSimulator.Rz gate.
BraketSimulator.V
— TypeBraketSimulator.V <: Gate
BraketSimulator.V() -> BraketSimulator.V
BraketSimulator.V gate.
BraketSimulator.Vi
— TypeBraketSimulator.Vi <: Gate
BraketSimulator.Vi() -> BraketSimulator.Vi
BraketSimulator.Vi gate.
BraketSimulator.T
— TypeBraketSimulator.T <: Gate
BraketSimulator.T() -> BraketSimulator.T
BraketSimulator.T gate.
BraketSimulator.Ti
— TypeBraketSimulator.Ti <: Gate
BraketSimulator.Ti() -> BraketSimulator.Ti
BraketSimulator.Ti gate.
BraketSimulator.S
— TypeBraketSimulator.S <: Gate
BraketSimulator.S() -> BraketSimulator.S
BraketSimulator.S gate.
BraketSimulator.Si
— TypeBraketSimulator.Si <: Gate
BraketSimulator.Si() -> BraketSimulator.Si
BraketSimulator.Si gate.
BraketSimulator.U
— TypeBraketSimulator.U <: AngledGate{3}
BraketSimulator.U(angles) -> BraketSimulator.U
BraketSimulator.U gate.
BraketSimulator.Unitary
— TypeUnitary <: Gate
Unitary(matrix::Matrix{ComplexF64}) -> Unitary
Arbitrary unitary gate.
BraketSimulator.PhaseShift
— TypeBraketSimulator.PhaseShift <: AngledGate{1}
BraketSimulator.PhaseShift(angles) -> BraketSimulator.PhaseShift
BraketSimulator.PhaseShift gate.
BraketSimulator.MultiQubitPhaseShift
— TypeMultiQubitPhaseShift{N}(angle)
Global phase shift on N
qubits. Equivalent to the OpenQASM3 built-in gphase
gate. Controls/negative controls applied to this gate control which states are rotated, so that Control(g::MultiQubitPhaseShift{2})
will apply the rotation to the |11>
state.
BraketSimulator.PRx
— TypeBraketSimulator.PRx <: AngledGate{2}
BraketSimulator.PRx(angles) -> BraketSimulator.PRx
BraketSimulator.PRx gate.
BraketSimulator.GPi
— TypeBraketSimulator.GPi <: AngledGate{1}
BraketSimulator.GPi(angles) -> BraketSimulator.GPi
BraketSimulator.GPi gate.
BraketSimulator.GPi2
— TypeBraketSimulator.GPi2 <: AngledGate{1}
BraketSimulator.GPi2(angles) -> BraketSimulator.GPi2
BraketSimulator.GPi2 gate.
BraketSimulator.XX
— TypeBraketSimulator.XX <: AngledGate{1}
BraketSimulator.XX(angles) -> BraketSimulator.XX
BraketSimulator.XX gate.
BraketSimulator.XY
— TypeBraketSimulator.XY <: AngledGate{1}
BraketSimulator.XY(angles) -> BraketSimulator.XY
BraketSimulator.XY gate.
BraketSimulator.YY
— TypeBraketSimulator.YY <: AngledGate{1}
BraketSimulator.YY(angles) -> BraketSimulator.YY
BraketSimulator.YY gate.
BraketSimulator.ZZ
— TypeBraketSimulator.ZZ <: AngledGate{1}
BraketSimulator.ZZ(angles) -> BraketSimulator.ZZ
BraketSimulator.ZZ gate.
BraketSimulator.ECR
— TypeBraketSimulator.ECR <: Gate
BraketSimulator.ECR() -> BraketSimulator.ECR
BraketSimulator.ECR gate.
BraketSimulator.MS
— TypeBraketSimulator.MS <: AngledGate{3}
BraketSimulator.MS(angles) -> BraketSimulator.MS
BraketSimulator.MS gate.
BraketSimulator.CPhaseShift
— TypeBraketSimulator.CPhaseShift <: AngledGate{1}
BraketSimulator.CPhaseShift(angles) -> BraketSimulator.CPhaseShift
BraketSimulator.CPhaseShift gate.
BraketSimulator.CPhaseShift00
— TypeBraketSimulator.CPhaseShift00 <: AngledGate{1}
BraketSimulator.CPhaseShift00(angles) -> BraketSimulator.CPhaseShift00
BraketSimulator.CPhaseShift00 gate.
BraketSimulator.CPhaseShift01
— TypeBraketSimulator.CPhaseShift01 <: AngledGate{1}
BraketSimulator.CPhaseShift01(angles) -> BraketSimulator.CPhaseShift01
BraketSimulator.CPhaseShift01 gate.
BraketSimulator.CPhaseShift10
— TypeBraketSimulator.CPhaseShift10 <: AngledGate{1}
BraketSimulator.CPhaseShift10(angles) -> BraketSimulator.CPhaseShift10
BraketSimulator.CPhaseShift10 gate.
BraketSimulator.CNot
— TypeBraketSimulator.CNot <: Gate
BraketSimulator.CNot() -> BraketSimulator.CNot
BraketSimulator.CNot gate.
BraketSimulator.CY
— TypeBraketSimulator.CY <: Gate
BraketSimulator.CY() -> BraketSimulator.CY
BraketSimulator.CY gate.
BraketSimulator.CZ
— TypeBraketSimulator.CZ <: Gate
BraketSimulator.CZ() -> BraketSimulator.CZ
BraketSimulator.CZ gate.
BraketSimulator.CV
— TypeBraketSimulator.CV <: Gate
BraketSimulator.CV() -> BraketSimulator.CV
BraketSimulator.CV gate.
BraketSimulator.Swap
— TypeBraketSimulator.Swap <: Gate
BraketSimulator.Swap() -> BraketSimulator.Swap
BraketSimulator.Swap gate.
BraketSimulator.PSwap
— TypeBraketSimulator.PSwap <: AngledGate{1}
BraketSimulator.PSwap(angles) -> BraketSimulator.PSwap
BraketSimulator.PSwap gate.
BraketSimulator.ISwap
— TypeBraketSimulator.ISwap <: Gate
BraketSimulator.ISwap() -> BraketSimulator.ISwap
BraketSimulator.ISwap gate.
BraketSimulator.CCNot
— TypeBraketSimulator.CCNot <: Gate
BraketSimulator.CCNot() -> BraketSimulator.CCNot
BraketSimulator.CCNot gate.
BraketSimulator.CSwap
— TypeBraketSimulator.CSwap <: Gate
BraketSimulator.CSwap() -> BraketSimulator.CSwap
BraketSimulator.CSwap gate.