<filename>tensors.tex
Ongoing work to provide the capabilities of tensor computer algebra has so far
produced the \verb|sympy.tensor| submodule.  It comprises three
submodules whose purposes are quite different: \texttt{sympy.\allowbreak{}tensor.\allowbreak{}indexed} and
\texttt{sympy.\allowbreak{}tensor.\allowbreak{}indexed\_methods} support indexed symbols,
\texttt{sympy.\allowbreak{}tensor.\allowbreak{}array} contains facilities to operate on symbolic $N$-dimensional
arrays, and finally \texttt{sympy.\allowbreak{}tensor.\allowbreak{}tensor} is used to define abstract tensors.
The abstract tensors submodule
is inspired by xAct~\cite{xAct} and Cadabra~\cite{Peeters2007cadabra}.
Canonicalization based on the Butler-Portugal~\cite{ManssurPortugal1999}
algorithm is supported in SymPy.  Tensor support in SymPy is currently limited to polynomial tensor
expressions.
