# Symmetrization and antisymmetrization of tensor products

How do I achieve something like

or

in LaTeX? The curved lines indicate symmetrization with respect to the indices they join, and the straight lines indicate antisymmetrization.

Here is a simpleminded proposal.

\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{tikzmark}
\begin{document}
$u^{\tikzmarknode{i1}{i}\tikzmarknode{j1}{j}} \tikzmarknode{v1}{v}^{\tikzmarknode{k1}{k}\tikzmarknode{l1}{\ell}}$
\begin{tikzpicture}[overlay,remember picture]
\draw[blue,thick] (i1.north east) to[out=30,in=150] (l1.north west);
\draw[blue,thick] (j1) -- ++(0,-1.5ex)  -| (k1);
\end{tikzpicture}
\end{document}


\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{tikzmark}
\begin{document}
$u^{\tikzmarknode{i1}{i}\tikzmarknode{j1}{j}} \tikzmarknode{v1}{v}^{\tikzmarknode{k1}{k}\tikzmarknode{l1}{\ell}}$
\begin{tikzpicture}[overlay,remember picture]
\draw[blue,thick] (i1.north east) to[out=30,in=150] (l1.north west);
\draw[blue,thick] (j1) -- ([yshift=-2pt]v1.south -| j1)  -| (k1);
\end{tikzpicture}
$u^{\tikzmarknode{i2}{i}\tikzmarknode{j2}{j}} \tikzmarknode{v2}{v}^{\tikzmarknode{k2}{k}\tikzmarknode{l2}{\ell}}$
\begin{tikzpicture}[overlay,remember picture]
\draw[blue,thick] (j2.north east) to[out=30,in=150] (k2.north west);
\draw[blue,thick] (i2) -- ([yshift=-2pt]v2.south -| i2)  -| (l2);
\end{tikzpicture}
$u^{\tikzmarknode{i3}{i}\tikzmarknode{j3}{j}} \tikzmarknode{v3}{v}^{\tikzmarknode{k3}{k}\tikzmarknode{l3}{\ell}}$
\begin{tikzpicture}[overlay,remember picture]
\draw[blue,thick,rounded corners=2pt] (j3) --
([yshift=-2pt]v3.south -| j3) -| (k3);
\draw[blue,thick] (i3.north) -- ++(0,3pt)  -| (l3);
\end{tikzpicture}
\end{document}


• Thanks! In your code, I suppose v1 isn’t being used. – leastaction Dec 10 '18 at 0:00
• Can you perhaps edit your answer to include the symmetrization below and antisymmetrization above as well? I couldn't get them to work in spite of using something like "\draw[red,thick] (j1.south west) to [out=300,in=225] (k1.south west);" – leastaction Dec 10 '18 at 2:35
• @leastaction Sorry, was hibernating. Added some more options. – marmot Dec 10 '18 at 6:07
• Thanks. I meant to ask if it is possible to swap the curve with the |__| (i.e. the curve below, and the |---| above). – leastaction Dec 10 '18 at 6:08
• @leastaction I added a proposal. If you want things to be like in the last example, one may actually use Wick contractions for that, i.e. one may modify the package commands to give you that as well. – marmot Dec 10 '18 at 6:20

Also with pstricks (compile with xelatex):

\documentclass{article}
\usepackage{pst-node}

\begin{document}

$u^{\rnode{i}{i}\rnode{j}{j}} v^{\rnode{k}{k}\rnode{l}{\ell}}$
\ncarc[linecolor=blue,nodesep=1pt,arcangle=60]{i}{l}
\ncbar[linecolor=blue,nodesep=1pt,arm=3pt,angle=-90]{j}{k}

\end{document}