2

Today I decided that I needed some practice in order to become more familiar with Young tableaux. I have the following piece of code -which returns the diagrams that I wanted-

\documentclass[11pt]{article}
%\usepackage{showkeys}
\usepackage{epsfig,amssymb,amsmath,psfrag,hyperref}
\usepackage{mathtools}
\usepackage[dvipsnames]{xcolor}
\usepackage[vcentermath]{youngtab} %Young boxes
\usepackage{ytableau} %Young diagrams
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{document}
Let's do a fun exercise with Young tableaux 

\ytableausetup
{mathmode, boxsize=1.75em}
\begin{align}
    \begin{aligned}
\begin{ytableau}
 \\
\end{ytableau}
&&&
%%%%%%%%%%%%
\begin{ytableau}
1 &    \\
2   \\
\none[\vdots] \\
\scriptstyle N-2 \\
\scriptstyle N-1
\end{ytableau}
&&&
%%%%%%%%%%%%
&\begin{ytableau}
1 & & \none[\cdots] & & n \\
\end{ytableau} 
&&&
%%%%%%%%%%%%
&\begin{ytableau}
1  \\
2  \\
\none[\vdots] \\
 \\
n
\end{ytableau} 
\\[30pt]
%%%%%%%%%%%%
\begin{ytableau}
 &    \\
 &  \\
\end{ytableau}
&&&
%%%%%%%%%%%%
\begin{ytableau}
 &    \\
   \\
\end{ytableau}
&&&
%%%%%%%%%%%%
&\begin{ytableau}
1 &   \\
2 \\
\none[\vdots] \\
\scriptstyle N-3 \\
\scriptstyle N-2
\end{ytableau}
&&&
%%%%%%%%%%%%
\begin{ytableau}
1 &   \\
2 &   \\
\none[\vdots] \\
\scriptstyle N-3 \\
\scriptstyle N-2
\end{ytableau}
    \end{aligned} 
\end{align}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\end{document}

What I would like to understand is how to create the above but in the following way:

Young diagram

I tried to do this by following some answers and suggestions that I found here, but I failed spectacularly. This is what I tried

\ytableausetup
{mathmode, boxsize=1.75em}
\begin{align}
    \begin{aligned}
\begin{ytableau}
 \\
\end{ytableau}
&&&
%%%%%%%%%%%%
\left\{
\begin{ytableau}
1 &    \\
2   \\
\none[\vdots] \\
\scriptstyle N-2 \\
\scriptstyle N-1
\end{ytableau}
\right.
&&&
%%%%%%%%%%%%
&\begin{ytableau}
1 & & \none[\cdots] & & n \\
\end{ytableau} 
&&&
%%%%%%%%%%%%
&\begin{ytableau}
1  \\
2  \\
\none[\vdots] \\
 \\
n
\end{ytableau} 
\\[30pt]
%%%%%%%%%%%%
\begin{ytableau}
 &    \\
 &  \\
\end{ytableau}
&&&
%%%%%%%%%%%%
\begin{ytableau}
 &    \\
   \\
\end{ytableau}
&&&
%%%%%%%%%%%%
&\begin{ytableau}
1 &   \\
2 \\
\none[\vdots] \\
\scriptstyle N-3 \\
\scriptstyle N-2
\end{ytableau}
&&&
%%%%%%%%%%%%
\begin{ytableau}
1 &   \\
2 &   \\
\none[\vdots] \\
\scriptstyle N-3 \\
\scriptstyle N-2
\end{ytableau}
    \end{aligned} 
\end{align}

Any ideas?

1 Answers1

2

Here is a possible way with TikZ. To make life easier, this answer comes with a style Young tableau and some additional keys like vdots and cdots for the dotted cells. The sizes of the cells and the dots are stored in pgf keys.

\documentclass[11pt]{article}
\usepackage{mathtools}
\usepackage{tikz}
\usetikzlibrary{calc,decorations.pathreplacing,calligraphy,matrix}
\usepackage{hyperref}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\tikzset{Dotted/.style={% https://tex.stackexchange.com/a/52856/194703
    line width=\pgfkeysvalueof{/tikz/Young/dot size},
    dash pattern=on 0.001\pgflinewidth off #1,line cap=round,
    shorten <=#1},Dotted/.default=3pt,
    vdots/.style={draw=none,path picture={
     \draw let \p1=(path picture bounding box.north),
        \p2=(path picture bounding box.south) in
        [Dotted={(\y1-\y2)/4}]
        (\p1) -- (\p2);
    }},
    cdots/.style={draw=none,path picture={
     \draw let \p1=(path picture bounding box.east),
        \p2=(path picture bounding box.west) in
        [Dotted={(\x1-\x2)/4}]
        (\p2) -- (\p1);
    }},
    Young tableau/.style={matrix of math nodes,nodes in empty cells,
    nodes={draw,minimum size=\pgfkeysvalueof{/tikz/Young/cell size},inner sep=0.5pt},
    column sep=-\pgflinewidth,row sep=-\pgflinewidth},
    Young/.cd,cell size/.initial=1.75em,
    dot size/.initial=1.2pt
    }
\begin{document}
\[\vcenter{\hbox{\begin{tikzpicture}
   \node[Young tableau](yt1){ \\};
 \end{tikzpicture}}}
 \qquad
 \vcenter{\hbox{\begin{tikzpicture}
   \node[Young tableau](yt2){ & \\
   \\
   \\
   |[vdots]| \\
   \\};
  \draw[thick,decoration={calligraphic brace, amplitude=6pt},decorate] 
  (yt2-5-1.south west) -- (yt2-2-1.north west)
  node[midway,above=1ex,sloped]{$N-2$};
 \end{tikzpicture}}}
 \qquad
 \vcenter{\hbox{\begin{tikzpicture}
   \node[Young tableau](yt3){ & & |[cdots]| & & \\};
  \draw[thick,decoration={calligraphic brace, amplitude=6pt},decorate] 
  (yt3-1-5.south east) -- (yt3-1-1.south west)
  node[midway,below=1ex]{$n$};
 \end{tikzpicture}}}
 \qquad
 \vcenter{\hbox{\begin{tikzpicture}
   \node[Young tableau](yt4){ \\ 
   \\ 
   |[vdots]| \\
   \\
   \\};
  \draw[thick,decoration={calligraphic brace, amplitude=6pt},decorate] 
  (yt4-1-1.north east) -- (yt4-5-1.south east)
  node[midway,right=1ex]{$n$};
 \end{tikzpicture}}}
\] 
\[\vcenter{\hbox{\begin{tikzpicture}
   \node[Young tableau](yt5){ & \\ & \\ };
 \end{tikzpicture}}}
 \qquad
 \vcenter{\hbox{\begin{tikzpicture}
   \node[Young tableau](yt6){ & \\  \\ };
 \end{tikzpicture}}}
 \qquad
 \vcenter{\hbox{\begin{tikzpicture}
   \node[Young tableau](yt7){ & \\
   \\
   \\
   |[vdots]| \\
   \\};
  \draw[thick,decoration={calligraphic brace, amplitude=6pt},decorate] 
  (yt7-5-1.south west) -- (yt7-2-1.north west)
  node[midway,above=1ex,sloped]{$N-3$};
 \end{tikzpicture}}}
 \qquad
 \vcenter{\hbox{\begin{tikzpicture}
   \node[Young tableau](yt8){ & \\
    & \\
   \\
   \\
   |[vdots]| \\
   \\};
  \draw[thick,decoration={calligraphic brace, amplitude=6pt},decorate] 
  (yt8-6-1.south west) -- (yt8-3-1.north west)
  node[midway,above=1ex,sloped]{$N-4$};
 \end{tikzpicture}}}
\] 
\end{document}

enter image description here

  • That's perfect. Thanks a lot! –  Apr 29 '20 at 09:28
  • I wanted to ask you the following: the project for which these Young diagrams I wanted seems to be going alright and might end up for a publication. Would you mind if we present the above diagrams to make the presentation nicer? If you are fine with that, would you like to give me your name to thank you in the acknowledgements or do you prefer to thank you with the nickname you have here? –  May 28 '20 at 13:03
  • 1
    @Konstantinos Thanks! No need acknowledge any of these, and please use the code as you like. –  May 28 '20 at 15:50
  • Thanks a lot! I really appreciate it! –  May 28 '20 at 16:12