**Abstract index notation** uses an upper Latin index to represent each contravariant vector component of a tensor, and a lower index to represent each covariant vector (1-form) component. We can see from the preceding figure that this notation is quite compact and clearly indicates the type of each tensor while re-using letters to indicate what “slots” are to be used in the mapping.

The tensor product of two tensors \({S^{a}{}_{b}\otimes T^{c}{}_{d}}\) is simply denoted \({S^{a}{}_{b}T^{c}{}_{d}}\), and in this form the operation is sometimes called the **tensor direct product**. We may also consider a **contraction** \({T^{ab}{}_{bc}=T^{a}{}_{c}}\), where two of the components of a tensor operate on each other to create a new tensor with a reduced number of indices. For example, if \({T^{ab}{}_{c}=v^{a}\otimes w^{b}\otimes\varphi_{c}}\), then \({T^{ab}{}_{b}=\varphi(w)\cdot v^{a}}\). Taking the tensor direct product of two tensors and then contracting all opposite indices is also called the contraction of the two tensors, i.e. the contraction of \({S^{ab}{}_{c}}\) and \({T_{def}}\) is \({C_{cf}=S^{ab}{}_{c}T{}_{abf}}\). It is easily seen that the contraction of any two symmetric indices with any two anti-symmetric indices yields zero.

A (pseudo) inner product on \({V}\) is a symmetric bilinear mapping, and thus corresponds to a symmetric tensor \({g_{ab}}\) called the **(pseudo) metric tensor**. The isomorphism \({v\in V\mapsto v^{\flat}\in V^{*}}\) induced by this pseudo inner product is then defined by \({v^{a}\mapsto v_{a}\equiv g_{ab}v^{b}}\), and is called **index lowering**. The corresponding pseudo inner product on \({V^{*}}\) is denoted \({g^{ab}}\), which provides a consistent **index raising** operation since we immediately obtain \({g^{ab}g_{ac}g_{bd}=g_{cd}}\). We also have the relation \({v^{a}=g^{ab}v_{b}=g^{ab}g_{bc}v^{c}\Rightarrow g^{ab}g_{bc}=g^{a}{}_{c}=\delta^{a}{}_{c}}\), the identity mapping. The inner product of two tensors of the same type is then the contraction of their tensor direct product after index lowering/raising, e.g. \({\left\langle T^{ab},S^{cd}\right\rangle =T^{ab}S_{ab}=T^{ab}g_{ac}g_{bd}S^{cd}}\).

Δ It is important to remember that if \({v}\) is a vector, the operation \({v_{a}v^{a}}\) implies index lowering, which requires an inner product. In contrast, if \({\varphi}\) is a 1-form, the operation \({\varphi_{a}v^{a}}\) is always valid regardless of the presence of an inner product. |

A symmetric or anti-symmetric tensor can be formed from a general tensor by adding or subtracting versions with permuted indices. For example, the combination \({\left(T_{ab}+T_{ba}\right)/2}\) is the **symmetrized tensor** of \({T}\), i.e. exchanging any two indices leaves it invariant. The **anti-symmetrized tensor** \({\left(T_{ab}-T_{ba}\right)/2}\) changes sign upon the exchange of any two indices, and yields the original tensor \({T_{ab}}\) when added to the symmetrized tensor. The following notation is common for tensors with \({n}\) indices, with the sums over all permutations of indices:

\(\displaystyle \textrm{Symmetrization:}\; T_{(a_{1}\dots a_{n})}\equiv\frac{1}{n!}\underset{\pi}{\sum}T_{a_{\pi(1)}\dots a_{\pi(n)}} \)

\(\displaystyle \textrm{Anti-symmetrization:}\; T_{[a_{1}\dots a_{n}]}\equiv\frac{1}{n!}\underset{\pi}{\sum}\textrm{sign}(\pi)T_{a_{\pi(1)}\dots a_{\pi(n)}} \)

This operation can be performed on any subset of indices in a tensor, as long as they are all covariant or all contravariant. Skipping indices is denoted with vertical bars, as in \({T_{\left(a|b|c\right)}=\left(T_{abc}+T_{cba}\right)/2}\); however, note that vertical bars alone are sometimes used to denote a sum of ordered permutations, as in \({T_{\left|abc\right|}=T_{abc}+T_{bca}+T_{cab}}\).