API Reference¶
Gates¶
Two-Qubit Gates¶
FermionicSwapGate |
|
XXYYGate |
|
YXXYGate |
|
ZZGate |
|
FSWAP |
|
XXYY |
|
YXXY |
|
ZZ |
Three-Qubit Gates¶
ControlledXXYYGate |
|
ControlledYXXYGate |
|
Rot111Gate |
|
CXXYY |
|
CYXXY |
|
CCZ |
Fermionic Simulation Gates¶
QuadraticFermionicSimulationGate (weights, …) |
(w0 |10><01| + h.c.) + w1 * |11><11| interaction. |
CubicFermionicSimulationGate (weights, …) |
w0 * |110><101| + w1 * |110><011| + w2 * |101><011| + hc interaction. |
QuarticFermionicSimulationGate (weights, …) |
Rotates Hamming-weight 2 states into their bitwise complements. |
Primitives¶
bogoliubov_transform (transformation_matrix, …) |
Perform a Bogoliubov transformation. |
ffft () |
Performs fast fermionic Fourier transform. |
prepare_gaussian_state (…) |
Prepare a fermionic Gaussian state from a computational basis state. |
prepare_slater_determinant (…) |
Prepare a Slater determinant from a computational basis state. |
swap_network (operation, int, …) |
Apply operations to pairs of qubits or modes using a swap network. |
Hamiltonian Simulation¶
simulate_trotter (hamiltonian, …) |
Simulate Hamiltonian evolution using a Trotter-Suzuki product formula. |
trotter.TrotterStep (hamiltonian, …) |
A method for performing a Trotter step. |
trotter.TrotterAlgorithm |
An algorithm for performing a Trotter step. |
trotter.LINEAR_SWAP_NETWORK |
A Trotter algorithm using the “fermionic simulation gate”. |
trotter.SPLIT_OPERATOR |
A Trotter algorithm using a split-operator approach. |
trotter.LOW_RANK |
A Trotter algorithm using the low rank decomposition strategy. |
Trotter Algorithms¶
trotter.LinearSwapNetworkTrotterAlgorithm |
A Trotter algorithm using the “fermionic simulation gate”. |
trotter.SplitOperatorTrotterAlgorithm |
A Trotter algorithm using a split-operator approach. |
trotter.LowRankTrotterAlgorithm (…[, …]) |
A Trotter algorithm using the low rank decomposition strategy. |
Variational Algorithms¶
VariationalAnsatz (qubits) |
A variational ansatz. |
VariationalStudy (name, ansatz, objective, …) |
The results from optimizing a variational ansatz. |
HamiltonianVariationalStudy |
Variational Ansatzes¶
SwapNetworkTrotterAnsatz (hamiltonian, …) |
An ansatz based on the fermionic swap network. |
SplitOperatorTrotterAnsatz (hamiltonian, …) |
An ansatz based on a split-operator Trotter step. |
Optimization¶
optimization.OptimizationAlgorithm (options) |
An optimization algorithm for black-box objective functions. |
optimization.OptimizationParams (algorithm, …) |
Parameters for an optimization run. |
optimization.OptimizationResult (…) |
A result from optimizing a black-box objective function. |
optimization.OptimizationTrialResult (…) |
The results from multiple repetitions of an optimization run. |
optimization.ScipyOptimizationAlgorithm (…) |
An optimization algorithm from the scipy.optimize module. |
optimization.COBYLA |
An optimization algorithm from the scipy.optimize module. |
optimization.L_BFGS_B |
An optimization algorithm from the scipy.optimize module. |
optimization.NELDER_MEAD |
An optimization algorithm from the scipy.optimize module. |
optimization.SLSQP |
An optimization algorithm from the scipy.optimize module. |