Multi-dimensional tensor contractions arise extensively in quantum chemistry, in
calculating the amplitudes and energy of the electron wave functions. According
to the Pauli Antisymmetry Principle, any many-electron wave function should be
antisymmetric (i.e. change sign) with respect to the interchange of the coordinates
of the any two electrons. Also due to the integral representation, many quantities
involved have vertex symmetry and other symmetry properties. In order to save
storage and enhance performance, it is important to utilize symmetry properties
when performing tensor contractions.
In this thesis, we address the problem of operation minimization of tensor contraction expressions with symmetry. We formulate an abstract definition of antisymmetry
and vertex symmetry. Given the symmetry property of the input tensors, we design
detailed algorithms of how to maintain symmetry and deduce any new symmetry
for intermediate tensors and result hand tensors. We derive a new operation count
model for symmetric tensors, and discuss an algorithm to implement factorization
and common subexpression elimination.
By taking symmetry into account, we examine equations derived from Coupled
Cluster Methods in computing electron structure, and demonstrate significant improvement over the best previous automatic methods for operation optimization of
tensor contractions.