\texttt{p$^\dagger$q}: A tool for prototyping many-body methods for quantum chemistry

Albert Eugene DePrince III


\texttt{p$^\dagger$q} is a C++ accelerated Python library designed to generate equations for many-body quantum chemistry methods and to realize proof-of-concept implementations of these equations for rapid prototyping. Central to this library is a simple interface to define strings of second-quantized creation and annihilation operators and to bring these strings to normal order with respect to either the true vacuum state or the Fermi vacuum. Tensor contractions over fully-contracted strings can then be evaluated using standard Python functions ({\em e.g.}, Numpy's einsum). Given one- and two-electron integrals these features allow for the rapid implementation and assessment of a wide array of many-body quantum quantum chemistry methods.