Module: openfermion.ops

This module should contain objects that describe the algebra of various operators and representations which can be thought of as abstract instances that serve as storage of the operators.

The abstract instance objects derive from the PolynomialTensor. Here we differentiate between generic storage objects and particular instantiations.

Modules

operators module

representations module

Classes

class BinaryCode: The BinaryCode class provides a representation of an encoding-decoding pair for binary vectors of different lengths, where the decoding is allowed to be non-linear.

class BinaryCodeError: Common base class for all non-exit exceptions.

class BinaryPolynomial: The BinaryPolynomial class provides an analytic representation of non-linear binary functions.

class BinaryPolynomialError: Common base class for all non-exit exceptions.

class BosonOperator: BosonOperator stores a sum of products of bosonic ladder operators.

class DOCIHamiltonian: Class for storing DOCI hamiltonians which are defined to be restrictions of fermionic operators to doubly occupied configurations.

class DiagonalCoulombHamiltonian: Class for storing Hamiltonians of the form

class FermionOperator: FermionOperator stores a sum of products of fermionic ladder operators.

class InteractionOperator: Class for storing 'interaction operators' which are defined to be fermionic operators consisting of one-body and two-body terms which conserve particle number and spin.

class InteractionOperatorError: Common base class for all non-exit exceptions.

class InteractionRDM: Class for storing 1- and 2-body reduced density matrices.

class InteractionRDMError: Common base class for all non-exit exceptions.

class IsingOperator: The IsingOperator class provides an analytic representation of an Ising-type Hamiltonian, i.e.

class MajoranaOperator: A linear combination of products of Majorana operators.

class PolynomialTensor: Class for storing tensor representations of operators that correspond with multilinear polynomials in the fermionic ladder operators.

class PolynomialTensorError: Common base class for all non-exit exceptions.

class QuadOperator: QuadOperator stores a sum of products of canonical quadrature operators.

class QuadraticHamiltonian: Class for storing Hamiltonians that are quadratic in the fermionic ladder operators.

class QuadraticHamiltonianError: Common base class for all non-exit exceptions.

class QubitOperator: A sum of terms acting on qubits, e.g., 0.5 * 'X0 X5' + 0.3 * 'Z1 Z2'.

class SymbolicOperator: Base class for FermionOperator and QubitOperator.

Functions

antisymmetric_canonical_form(...): Compute the canonical form of an antisymmetric matrix.

double_decoding(...): Concatenates two decodings

general_basis_change(...): Change the basis of a general interaction tensor.

shift_decoder(...): Shifts the indices of a decoder by a constant.