Table of Contents
Fetching ...

Using SimTeEx to simplify polynomial expressions with tensors

Renato M. Fonseca

TL;DR

The paper addresses the problem of simplifying polynomial expressions in tensors with dummy index contractions and complex permutation symmetries, which arise in areas like general relativity and SMEFT. It proposes a graph-based representation of tensor monomials and reduces simplification to graph isomorphism plus linear-algebra for multiterm symmetries, yielding a canonical form implemented in the SimTeEx Mathematica package (CanonicalForm). Key contributions include a flexible framework that handles arbitrary tensor symmetries, multiple input formats for symmetries, and support for anti-commuting tensors, along with auxiliary tools to analyze tensor symmetries. The approach enables robust, reproducible simplification of tensor expressions, with practical impact for high-energy theory and gravity computations, albeit with potential NP-hard worst-case behavior in graph isomorphism scenarios.

Abstract

Computations with tensors are ubiquitous in fundamental physics, and so is the usage of Einstein's dummy index convention for the contraction of indices. For instance, $T_{ia}U_{aj}$ is readily recognized as the same as $T_{ib}U_{bj}$, but a computer does not know that T[i,a]U[a,j] is equal to T[i,b]U[b,j]. Furthermore, tensors may have symmetries which can be used to simply expressions: if $U_{ij}$ is antisymmetric, then $αT_{ia}U_{aj}+βT_{ib}U_{jb}=\left(α-β\right)T_{ia}U_{aj}$. The fact that tensors can have elaborate symmetries, together with the problem of dummy indices, makes it complicated to simplify polynomial expressions with tensors. In this work I will present an algorithm for doing so, which was implemented in the Mathematica package SimTeEx (Simplify Tensor Expressions). It can handle any kind of tensor symmetry.

Using SimTeEx to simplify polynomial expressions with tensors

TL;DR

The paper addresses the problem of simplifying polynomial expressions in tensors with dummy index contractions and complex permutation symmetries, which arise in areas like general relativity and SMEFT. It proposes a graph-based representation of tensor monomials and reduces simplification to graph isomorphism plus linear-algebra for multiterm symmetries, yielding a canonical form implemented in the SimTeEx Mathematica package (CanonicalForm). Key contributions include a flexible framework that handles arbitrary tensor symmetries, multiple input formats for symmetries, and support for anti-commuting tensors, along with auxiliary tools to analyze tensor symmetries. The approach enables robust, reproducible simplification of tensor expressions, with practical impact for high-energy theory and gravity computations, albeit with potential NP-hard worst-case behavior in graph isomorphism scenarios.

Abstract

Computations with tensors are ubiquitous in fundamental physics, and so is the usage of Einstein's dummy index convention for the contraction of indices. For instance, is readily recognized as the same as , but a computer does not know that T[i,a]U[a,j] is equal to T[i,b]U[b,j]. Furthermore, tensors may have symmetries which can be used to simply expressions: if is antisymmetric, then . The fact that tensors can have elaborate symmetries, together with the problem of dummy indices, makes it complicated to simplify polynomial expressions with tensors. In this work I will present an algorithm for doing so, which was implemented in the Mathematica package SimTeEx (Simplify Tensor Expressions). It can handle any kind of tensor symmetry.

Paper Structure

This paper contains 17 sections, 52 equations, 3 figures.

Figures (3)

  • Figure 1: Potential graph representation of $R_{pqrs}R_{ptru}R_{tvqw}R_{uvsw}$, assuming that $R$ is completely symmetric. Edge labels are shown only to make it easier to compare this representation with the original expression.
  • Figure 2: Potential graph representation of $\kappa_{a b b m} \kappa_{a c d m} \kappa_{d p p n} \kappa_{q q c n}$, assuming that $\kappa$ is completely symmetric. As in figure \ref{['fig:1']}, the edges should remain unlabeled (they are only shown here for clarity).
  • Figure 3: Directed graph representation of $U_{ijk}U_{klm}T_{njlp}$. Edge labels $(n_{1},n_{2})$ indicate that the index in slot #$n_{1}$ of the departing tensor contracts with the index in slot #$n_{2}$ of the incident tensor. For example the (3,2) implies that the third index of $T$ contract with the second index of one of the $U$ tensors (the one with the external $m$ index). It is important to give a direction to the edges so that one can interpret the two numbers which label each edge.