summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/latex/dynkin-diagrams
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2018-02-11 22:49:52 +0000
committerKarl Berry <karl@freefriends.org>2018-02-11 22:49:52 +0000
commit4f8d8a303ae1f3c7a2a6b1eb4624a4c6a3b31d07 (patch)
tree56b5144f0c924f54113eb22f3ac0321ea1cecedf /Master/texmf-dist/doc/latex/dynkin-diagrams
parent0809c1dc616f1408e77f3ba4d87205a20cc98154 (diff)
dynkin-diagrams (11feb18)
git-svn-id: svn://tug.org/texlive/trunk@46600 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc/latex/dynkin-diagrams')
-rw-r--r--Master/texmf-dist/doc/latex/dynkin-diagrams/README8
-rw-r--r--Master/texmf-dist/doc/latex/dynkin-diagrams/dynkin-diagrams.bib171
-rw-r--r--Master/texmf-dist/doc/latex/dynkin-diagrams/dynkin-diagrams.pdfbin233754 -> 516988 bytes
-rw-r--r--Master/texmf-dist/doc/latex/dynkin-diagrams/dynkin-diagrams.tex1711
4 files changed, 1326 insertions, 564 deletions
diff --git a/Master/texmf-dist/doc/latex/dynkin-diagrams/README b/Master/texmf-dist/doc/latex/dynkin-diagrams/README
index 26cba041b7c..e7c2e42116b 100644
--- a/Master/texmf-dist/doc/latex/dynkin-diagrams/README
+++ b/Master/texmf-dist/doc/latex/dynkin-diagrams/README
@@ -2,9 +2,9 @@ ___________________________________
Dynkin diagrams
- v2.0
+ v3.1
- 18 November 2017
+ 11 February 2018
___________________________________
Authors : Ben McKay
@@ -15,5 +15,5 @@ Licence : Released under the LaTeX Project Public License v1.3c or
----------------------------------------------------------------------
-Provides Dynkin diagrams drawn in TikZ.
-
+Draws Dynkin di­a­grams in LaTeX doc­u­ments, us­ing the TikZ pack­age.
+Version 3.1 improves the documentation to give code for all examples. \ No newline at end of file
diff --git a/Master/texmf-dist/doc/latex/dynkin-diagrams/dynkin-diagrams.bib b/Master/texmf-dist/doc/latex/dynkin-diagrams/dynkin-diagrams.bib
index a72cb1dade1..30fc8b08f5c 100644
--- a/Master/texmf-dist/doc/latex/dynkin-diagrams/dynkin-diagrams.bib
+++ b/Master/texmf-dist/doc/latex/dynkin-diagrams/dynkin-diagrams.bib
@@ -2,6 +2,25 @@
% Encoding: ISO8859_1
+@Article{Baba:2009,
+ Title = {Satake diagrams and restricted root systems of semisimple pseudo-{R}iemannian symmetric spaces},
+ Author = {Baba, Kurando},
+ Journal = {Tokyo J. Math.},
+ Year = {2009},
+ Number = {1},
+ Pages = {127--158},
+ Volume = {32},
+
+ Fjournal = {Tokyo Journal of Mathematics},
+ ISSN = {0387-3870},
+ Mrclass = {17B20 (17B22 53C35)},
+ Mrnumber = {2541161},
+ Mrreviewer = {Oksana S. Yakimova},
+ Owner = {user},
+ Timestamp = {2017.12.04},
+ Url = {https://doi.org/10.3836/tjm/1249648414}
+}
+
@Book{Bourbaki:2002,
Title = {Lie groups and {L}ie algebras. {C}hapters 4--6},
Author = {Bourbaki, Nicolas},
@@ -37,20 +56,23 @@
Url = {https://doi.org/10.1017/CBO9780511614910}
}
-@Book{Dynkin:2000,
- Title = {Selected papers of {E}. {B}. {D}ynkin with commentary},
- Author = {Dynkin, E. B.},
- Publisher = {American Mathematical Society, Providence, RI; International Press, Cambridge, MA},
- Year = {2000},
- Note = {Edited by A. A. Yushkevich, G. M. Seitz and A. L. Onishchik},
+@Article{Chuah:2013,
+ Title = {Cartan automorphisms and {V}ogan superdiagrams},
+ Author = {Chuah, Meng-Kiat},
+ Journal = {Math. Z.},
+ Year = {2013},
+ Number = {3-4},
+ Pages = {793--800},
+ Volume = {273},
- ISBN = {0-8218-1065-0},
- Mrclass = {01A75 (60Jxx)},
- Mrnumber = {1757976},
- Mrreviewer = {William M. McGovern},
+ Fjournal = {Mathematische Zeitschrift},
+ ISSN = {0025-5874},
+ Mrclass = {17B20 (17B40)},
+ Mrnumber = {3030677},
+ Mrreviewer = {Zi-Xin Hou},
Owner = {user},
- Pages = {xxviii+796},
- Timestamp = {2017.11.15}
+ Timestamp = {2017.12.04},
+ Url = {https://doi.org/10.1007/s00209-012-1030-z}
}
@Article{Dynkin:1952,
@@ -69,6 +91,41 @@
Timestamp = {2017.11.15}
}
+@Book{Dynkin:2000,
+ Title = {Selected papers of {E}. {B}. {D}ynkin with commentary},
+ Author = {Dynkin, E. B.},
+ Publisher = {American Mathematical Society, Providence, RI; International Press, Cambridge, MA},
+ Year = {2000},
+ Note = {Edited by A. A. Yushkevich, G. M. Seitz and A. L. Onishchik},
+
+ ISBN = {0-8218-1065-0},
+ Mrclass = {01A75 (60Jxx)},
+ Mrnumber = {1757976},
+ Mrreviewer = {William M. McGovern},
+ Owner = {user},
+ Pages = {xxviii+796},
+ Timestamp = {2017.11.15}
+}
+
+@Article{Frappat/Sciarrino/Sorba:1989,
+ Title = {Structure of basic {L}ie superalgebras and of their affine extensions},
+ Author = {Frappat, L. and Sciarrino, A. and Sorba, P.},
+ Journal = {Comm. Math. Phys.},
+ Year = {1989},
+ Number = {3},
+ Pages = {457--500},
+ Volume = {121},
+
+ Fjournal = {Communications in Mathematical Physics},
+ ISSN = {0010-3616},
+ Mrclass = {17B70 (17A70 17B40)},
+ Mrnumber = {990776},
+ Mrreviewer = {A. Pianzola},
+ Owner = {user},
+ Timestamp = {2017.12.18},
+ Url = {http://0-projecteuclid.org.library.ucc.ie/euclid.cmp/1104178142}
+}
+
@Book{Grove/Benson:1985,
Title = {Finite reflection groups},
Author = {Grove, L. C. and Benson, C. T.},
@@ -139,6 +196,25 @@
Url = {https://doi.org/10.1017/CBO9780511626234}
}
+@Article{Khastgir/Sasaki:1996,
+ Title = {Non-canonical folding of {D}ynkin diagrams and reduction of affine {T}oda theories},
+ Author = {Khastgir, S. Pratik and Sasaki, Ryu},
+ Journal = {Progr. Theoret. Phys.},
+ Year = {1996},
+ Number = {3},
+ Pages = {503--518},
+ Volume = {95},
+
+ Fjournal = {Progress of Theoretical Physics},
+ ISSN = {0033-068X},
+ Mrclass = {81T10 (17B81 58F07 81R10)},
+ Mrnumber = {1388245},
+ Mrreviewer = {Mehmet Koca},
+ Owner = {user},
+ Timestamp = {2017.12.18},
+ Url = {https://doi.org/10.1143/PTP.95.503}
+}
+
@Book{OnishchikVinberg:1990,
Title = {Lie groups and algebraic groups},
Author = {Onishchik, A. L. and Vinberg, {\`E}. B.},
@@ -176,6 +252,60 @@
Url = {https://doi.org/10.1007/978-3-642-74334-4}
}
+@Article{Ransingh:2013,
+ Title = {Vogan diagrams of untwisted affine {K}ac-{M}oody superalgebras},
+ Author = {Ransingh, Biswajit},
+ Journal = {Asian-Eur. J. Math.},
+ Year = {2013},
+ Number = {4},
+ Pages = {1350062, 10},
+ Volume = {6},
+
+ Fjournal = {Asian-European Journal of Mathematics},
+ ISSN = {1793-5571},
+ Mrclass = {17B67 (17B05 17B22 17B40)},
+ Mrnumber = {3149279},
+ Mrreviewer = {Xiangqian Guo},
+ Owner = {user},
+ Timestamp = {2018.01.11}
+}
+
+@Article{Ransingh:unpub,
+ Title = {{Vogan diagrams of affine twisted Lie superalgebras}},
+ Author = {Ransingh, B.},
+ Journal = {ArXiv e-prints},
+ Year = {2013},
+
+ Month = mar,
+
+ Adsnote = {Provided by the SAO/NASA Astrophysics Data System},
+ Adsurl = {http://adsabs.harvard.edu/abs/2013arXiv1303.0092R},
+ Archiveprefix = {arXiv},
+ Eprint = {1303.0092},
+ Keywords = {Mathematical Physics, Mathematics - Representation Theory},
+ Owner = {user},
+ Primaryclass = {math-ph},
+ Timestamp = {2018.01.11}
+}
+
+@Article{Regelskis/Vlaar:2016,
+ Title = {{Reflection matrices, coideal subalgebras and generalized Satake diagrams of affine type}},
+ Author = {{Regelskis}, V. and {Vlaar}, B.},
+ Journal = {ArXiv e-prints},
+ Year = {2016},
+
+ Month = feb,
+
+ Adsnote = {Provided by the SAO/NASA Astrophysics Data System},
+ Adsurl = {http://adsabs.harvard.edu/abs/2016arXiv160208471R},
+ Archiveprefix = {arXiv},
+ Eprint = {1602.08471},
+ Keywords = {Mathematical Physics, Mathematics - Quantum Algebra, Mathematics - Representation Theory, Nonlinear Sciences - Exactly Solvable and Integrable Systems},
+ Owner = {user},
+ Primaryclass = {math-ph},
+ Timestamp = {2017.12.04}
+}
+
@Book{Satake:1980,
Title = {Algebraic structures of symmetric domains},
Author = {Satake, Ichir\^o},
@@ -192,6 +322,23 @@
Timestamp = {2017.11.15}
}
+@InCollection{Zuber:1998,
+ Title = {Generalized {D}ynkin diagrams and root systems and their folding},
+ Author = {Zuber, Jean-Bernard},
+ Booktitle = {Topological field theory, primitive forms and related topics ({K}yoto, 1996)},
+ Publisher = {Birkh\"auser Boston, Boston, MA},
+ Year = {1998},
+ Pages = {453--493},
+ Series = {Progr. Math.},
+ Volume = {160},
+
+ Mrclass = {17B20 (05C25 20F55)},
+ Mrnumber = {1653035},
+ Mrreviewer = {Saeid Azam},
+ Owner = {user},
+ Timestamp = {2017.12.18}
+}
+
@Book{Vinberg:1994,
Title = {Lie groups and {L}ie algebras, {III}},
Editor = {Vinberg, \`E. B.},
diff --git a/Master/texmf-dist/doc/latex/dynkin-diagrams/dynkin-diagrams.pdf b/Master/texmf-dist/doc/latex/dynkin-diagrams/dynkin-diagrams.pdf
index 851c6ae2200..90af26049f5 100644
--- a/Master/texmf-dist/doc/latex/dynkin-diagrams/dynkin-diagrams.pdf
+++ b/Master/texmf-dist/doc/latex/dynkin-diagrams/dynkin-diagrams.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/dynkin-diagrams/dynkin-diagrams.tex b/Master/texmf-dist/doc/latex/dynkin-diagrams/dynkin-diagrams.tex
index f6566c0be0e..afe3a99eea5 100644
--- a/Master/texmf-dist/doc/latex/dynkin-diagrams/dynkin-diagrams.tex
+++ b/Master/texmf-dist/doc/latex/dynkin-diagrams/dynkin-diagrams.tex
@@ -1,688 +1,1303 @@
\documentclass{amsart}
-\title{The Dynkin diagrams package}
+\title{The Dynkin diagrams package \\ Version 3.1}
\author{Ben McKay}
-\date{\today}
+\date{11 February 2018}
+\usepackage{etex}
+\usepackage[T1]{fontenc}
+\usepackage[utf8]{inputenx}
+\usepackage{etoolbox}
+\usepackage{lmodern}
+\usepackage[kerning=true,tracking=true]{microtype}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{array}
\usepackage{xstring}
-\usepackage{etoolbox}
\usepackage{longtable}
-\usepackage{showexpl}
+\usepackage[listings]{tcolorbox}
+\tcbuselibrary{breakable}
+\tcbuselibrary{skins}
+\usepackage[pdftex]{hyperref}
+\hypersetup{
+ colorlinks = true, %Colours links instead of ugly boxes
+ urlcolor = black, %Colour for external hyperlinks
+ linkcolor = black, %Colour of internal links
+ citecolor = black %Colour of citations
+}
\usepackage{booktabs}
+\usepackage{colortbl}
+\usepackage{varwidth}
\usepackage{dynkin-diagrams}
+\usepackage{fancyvrb}
+\usepackage{xspace}
+\newcommand{\TikZ}{Ti\textit{k}Z\xspace}
+\usepackage{filecontents}
\usetikzlibrary{backgrounds}
\usetikzlibrary{decorations.markings}
+\arrayrulecolor{white}
+\makeatletter
+ \def\rulecolor#1#{\CT@arc{#1}}
+ \def\CT@arc#1#2{%
+ \ifdim\baselineskip=\z@\noalign\fi
+ {\gdef\CT@arc@{\color#1{#2}}}}
+ \let\CT@arc@\relax
+\rulecolor{white}
+\makeatother
\newcommand{\C}[1]{\mathbb{C}^{#1}}
\renewcommand*{\arraystretch}{1.5}
-\renewcommand\ResultBox{\fcolorbox{gray!50}{gray!30}}
+\NewDocumentCommand\wdtA{}{.7cm}
+\NewDocumentCommand\wdtD{}{3cm}
+\NewDocumentCommand\wdtL{}{3cm}
+\newcolumntype{A}{@{}>{\columncolor[gray]{.9}$}m{\wdtA}<{$}}
+\newcolumntype{D}{>{\columncolor[gray]{.9}}m{\wdtD}}
+\newcolumntype{L}{>{\columncolor[gray]{.9}}p{\wdtL}}
+\newcolumntype{P}{>{\columncolor[gray]{.9}}p{10cm}}
+\NewDocumentCommand\textleftcurly{}{\texttt{\char'173}}%
+\NewDocumentCommand\textrightcurly{}{\texttt{\char'175}}%
+\NewDocumentCommand\csDynkin{omom}%
+{%
+ \texttt{\detokenize{\dynkin}\!\!\!%
+ \IfNoValueTF{#1}{}{[#1]}%
+ \textleftcurly#2\textrightcurly%
+ \IfNoValueTF{#3}{}{[#3]}%
+ \textleftcurly#4\textrightcurly%
+ }%
+}%
+
+\NewDocumentCommand\dynk{omom}%
+{%
+ \dynkin[#1]{#2}[#3]{#4}&\csDynkin[#1]{#2}[#3]{#4}\\
+}%
+
+\NewDocumentCommand\typesetSubseries{m}%
+{%
+ \IfInteger{#1}{#1}{\IfStrEq{#1}{}{n}{#1}}
+}%
+
+\NewDocumentCommand\dyn{omom}%
+{%
+ {#2}_{\typesetSubseries{#4}}^{\IfInteger{#3}{#3}{}} & \dynk[#1]{#2}[#3]{#4}%
+}%
+
+\NewDocumentEnvironment{dynkinTable}{mmm}%
+{%
+\RenewDocumentCommand\wdtD{}{#2}
+\RenewDocumentCommand\wdtL{}{#3}
+\begin{longtable}{ADL}
+\caption{#1}\\
+\endfirsthead
+\caption{\dots continued}\\
+\endhead
+\multicolumn{2}{c}{continued \dots}\\
+\endfoot
+\endlastfoot
+}%
+{%
+\end{longtable}
+}%
+
+
+\definecolor{example-color}{gray}{1}
+\definecolor{example-border-color}{gray}{.7}
+
+\tcbset{coltitle=black,colback=example-color,colframe=example-border-color,enhanced,breakable,pad at break*=1mm,
+toprule=1.2mm,bottomrule=1.2mm,leftrule=1mm,rightrule=1mm,toprule at break=-1mm,bottomrule at break=-1mm,
+before upper={\widowpenalties=3 10000 10000 150}}
+
+\makeatletter
+\def\@tocline#1#2#3#4#5#6#7{\relax
+ \ifnum #1>\c@tocdepth%
+ \else
+ \par \addpenalty\@secpenalty\addvspace{#2}%
+ \begingroup \hyphenpenalty\@M
+ \@ifempty{#4}{%
+ \@tempdima\csname r@tocindent\number#1\endcsname\relax
+ }{%
+ \@tempdima#4\relax
+ }%
+ \parindent\z@ \leftskip#3\relax \advance\leftskip\@tempdima\relax
+ #5\leavevmode\hskip-\@tempdima #6\nobreak\relax
+ ,~#7\par
+ \endgroup
+ \fi}
+\makeatother
\begin{document}
\maketitle
+\begin{center}
+\begin{varwidth}{\textwidth}
\tableofcontents
+\end{varwidth}
+\end{center}
+
+
+\setlength{\arrayrulewidth}{1.5pt}
+
\section{Quick introduction}
-This is a test of the Dynkin diagram package.
-Load the package via
+
+
+\begin{tcolorbox}[title={Load the Dynkin diagram package (see options below)}]
\begin{verbatim}
\usepackage{dynkin-diagrams}
\end{verbatim}
-(see below for options) and invoke it directly:
+\end{tcolorbox}
+\begin{tcblisting}{title={Invoke it}}
+The Dynkin diagram of \(B_3\) is \dynkin{B}{3}.
+\end{tcblisting}
+\begin{tcblisting}{title={Inside a \TikZ statement}}
+\tikz \dynkin{B}{3};
+\end{tcblisting}
+\begin{tcblisting}{title={Inside a \TikZ environment}}
+\begin{tikzpicture}
+ \dynkin{B}{3}
+\end{tikzpicture}
+\end{tcblisting}
+\begin{tcblisting}{title={Indefinite rank Dynkin diagrams}}
+\dynkin{B}{}
+\end{tcblisting}
+
+\begin{dynkinTable}{The Dynkin diagrams of the reduced simple root systems \cite{Bourbaki:2002} pp. 265--290, plates I--IX}{2.25cm}{2.5cm}
+\dyn{A}{}
+\dyn{C}{}
+\dyn{D}{}
+\dyn{E}{6}
+\dyn{E}{7}
+\dyn{E}{8}
+\dyn{F}{4}
+\dyn{G}{2}
+\end{dynkinTable}
+
+
+\section{Set options globally}
+
+\begin{tcolorbox}[title={Most options set globally \dots}]
+\begin{verbatim}
+\pgfkeys{/Dynkin diagram,edgeLength=.5cm,foldradius=.5cm}
+\end{verbatim}
+\end{tcolorbox}
+\begin{tcolorbox}[title={\dots or pass to the package}]
+\begin{verbatim}
+\usepackage[
+ ordering=Kac,
+ edge/.style=blue,
+ mark=o,
+ radius=.06cm]
+ {dynkin-diagrams}
+\end{verbatim}
+\end{tcolorbox}
-\begin{LTXexample}
-The flag variety of pointed lines in
-projective 3-space is associated to
-the Dynkin diagram \dynkin[parabolic=3]{A}{3}.
-\end{LTXexample}
-or use the long form inside a \verb!\tikz! statement:
-\begin{LTXexample}
-\tikz \dynkin[parabolic=3]{A}{3};
-\end{LTXexample}
+\section{Coxeter diagrams}
-or a TikZ environment:
-\begin{LTXexample}
-\begin{tikzpicture}
-\dynkin[parabolic=3,label]{A}{3}
-\end{tikzpicture}
-\end{LTXexample}
-With labels for the roots:
-\begin{LTXexample}
-\dynkin[parabolic=3,label]{A}{3}
-\end{LTXexample}
-\newpage\noindent%
-Make up your own labels for the roots:
-\begin{LTXexample}
-\begin{tikzpicture}
-\dynkin[parabolic=3]{A}{3}
-\rootlabel{2}{\alpha_2}
-\end{tikzpicture}
-\end{LTXexample}
-Use any text scale you like:
-\begin{LTXexample}
+\begin{tcblisting}{title={Coxeter diagram option}}
+\dynkin[Coxeter]{F}{4}
+\end{tcblisting}
+
+\begin{tcblisting}{title={gonality option for \(G_2\) and \(I_n\) Coxeter diagrams}}
+\(G_2=\dynkin[Coxeter,gonality=n]{G}{2}\), \
+\(I_n=\dynkin[Coxeter,gonality=n]{I}{}\)
+\end{tcblisting}
+
+\begin{dynkinTable}{The Coxeter diagrams of the simple reflection groups}{2.25cm}{6cm}
+\dyn[Coxeter]{A}{}
+\dyn[Coxeter]{B}{}
+\dyn[Coxeter]{C}{}
+\dyn[Coxeter]{E}{6}
+\dyn[Coxeter]{E}{7}
+\dyn[Coxeter]{E}{8}
+\dyn[Coxeter]{F}{4}
+\dyn[Coxeter,gonality=n]{G}{2}
+\dyn[Coxeter]{H}{3}
+\dyn[Coxeter]{H}{4}
+\dyn[Coxeter,gonality=n]{I}{}
+\end{dynkinTable}
+
+\section{Satake diagrams}\label{section:Satake}
+
+\begin{tcblisting}{title={Satake diagrams use the standard name instead of a rank}}
+\(A_{IIIb}=\dynkin{A}{IIIb}\)
+\end{tcblisting}
+
+We use a solid gray bar to denote the folding of a Dynkin diagram, rather than the usual double arrow, since the diagrams turn out simpler and easier to read.
+
+\begin{dynkinTable}{The Satake diagrams of the real simple Lie algebras \cite{Helgason:2001} p. 532--534}{2.75cm}{3cm}
+\dyn{A}{I}
+\dyn{A}{II}
+\dyn{A}{IIIa}
+\dyn{A}{IIIb}
+\dyn{A}{IV}
+\dyn{B}{I}
+\dyn{B}{II}
+\dyn{C}{I}
+\dyn{C}{IIa}
+\dyn{C}{IIb}
+\dyn{D}{Ia}
+\dyn{D}{Ib}
+\dyn{D}{Ic}
+\dyn{D}{II}
+\dyn{D}{IIIa}
+\dyn{D}{IIIb}
+\dyn{E}{I}
+\dyn{E}{II}
+\dyn{E}{III}
+\dyn{E}{IV}
+\dyn{E}{V}
+\dyn{E}{VI}
+\dyn{E}{VII}
+\dyn{E}{VIII}
+\dyn{E}{IX}
+\dyn{F}{I}
+\dyn{F}{II}
+\dyn{G}{I}
+\end{dynkinTable}
+
+\section{Labels for the roots}
+
+\begin{tcblisting}{title={Label the roots by root number}}
+\dynkin[label]{B}{3}
+\end{tcblisting}
+\begin{tcblisting}{title={Make a macro to assign labels to roots}}
+\dynkin[label,labelMacro/.code={\alpha_{#1}}]{D}{5}
+\end{tcblisting}
+\begin{tcblisting}{title={Label a single root}}
\begin{tikzpicture}
-\dynkin[parabolic=3,textscale=1.2]{A}{3};
-\rootlabel{2}{\alpha_2}
+ \dynkin{B}{3}
+ \dynkinLabelRoot{2}{\alpha_2}
\end{tikzpicture}
-\end{LTXexample}
-and access root labels via TikZ:
-\begin{LTXexample}
+\end{tcblisting}
+\begin{tcblisting}{title={Use a text style}}
\begin{tikzpicture}
-\dynkin[parabolic=3]{A}{3};
-\node at (root label 2) {\(\alpha_2\)};
+ \dynkin[text/.style={scale=1.2}]{B}{3};
+ \dynkinLabelRoot{2}{\alpha_2}
\end{tikzpicture}
-\end{LTXexample}
-The labels have default locations:
-\begin{LTXexample}
+\end{tcblisting}
+\begin{tcblisting}{title={Access root labels via TikZ}}
\begin{tikzpicture}
-\dynkin{E}{8};
-\rootlabel{1}{\alpha_1}
-\rootlabel{2}{\alpha_2}
-\rootlabel{3}{\alpha_3}
+ \dynkin{B}{3};
+ \node[below] at (root 2) {\(\alpha_2\)};
\end{tikzpicture}
-\end{LTXexample}
-You can use a starred form to flip labels to alternate locations:
-\begin{LTXexample}
+\end{tcblisting}
+\begin{tcblisting}{title={The labels have default locations}}
\begin{tikzpicture}
-\dynkin{E}{8};
-\rootlabel*{1}{\alpha_1}
-\rootlabel*{2}{\alpha_2}
-\rootlabel*{3}{\alpha_3}
+ \dynkin{E}{8};
+ \dynkinLabelRoot{1}{\alpha_1}
+ \dynkinLabelRoot{2}{\alpha_2}
+ \dynkinLabelRoot{3}{\alpha_3}
\end{tikzpicture}
-\end{LTXexample}
-TikZ can access the roots themselves:
-\typeout{AAAAAAA}
-\begin{LTXexample}
+\end{tcblisting}
+\begin{tcblisting}{title={The starred form flips labels to alternate locations}}
\begin{tikzpicture}
-\dynkin{A}{4};
-\fill[white,draw=black] (root 2) circle (.1cm);
-\draw[black] (root 2) circle (.05cm);
+ \dynkin{E}{8};
+ \dynkinLabelRoot*{1}{\alpha_1}
+ \dynkinLabelRoot*{2}{\alpha_2}
+ \dynkinLabelRoot*{3}{\alpha_3}
\end{tikzpicture}
-\end{LTXexample}
-Some diagrams will have double edges:
-\begin{LTXexample}
+\end{tcblisting}
+
+\section{Style}
+
+\begin{tcblisting}{title={Colours}}
+\dynkin[edge/.style={blue!50,thick},*/.style=blue!50!red]{F}{4}
+\end{tcblisting}
+\begin{tcblisting}{title={Edge lengths}}
+\dynkin[edgeLength=1.2,parabolic=3]{A}{3}
+\end{tcblisting}
+\begin{tcblisting}{title={Root marks}}
+\dynkin{E}{8}
+\dynkin[mark=*]{E}{8}
+\dynkin[mark=o]{E}{8}
+\dynkin[mark=O]{E}{8}
+\dynkin[mark=t]{E}{8}
+\dynkin[mark=x]{E}{8}
+\dynkin[mark=X]{E}{8}
+\end{tcblisting}
+At the moment, you can only use:
+\par\noindent\begin{tabular}{>{\ttfamily}cl}
+* & solid dot \\
+o & hollow circle \\
+O & double hollow circle \\
+t & tensor root \\
+x & crossed root \\
+X & thickly crossed root
+\end{tabular}
+\begin{tcblisting}{title={Mark styles}}
+\dynkin[parabolic=124,x/.style={brown,very thick}]{E}{8}
+\end{tcblisting}
+\begin{tcblisting}{title={Sizes of root marks}}
+\dynkin[radius=.08cm,parabolic=3]{A}{3}
+\end{tcblisting}
+
+
+\section{Suppress or reverse arrows}
+
+\begin{tcblisting}{title={Some diagrams have double or triple edges}}
\dynkin{F}{4}
-\end{LTXexample}
-or triple edges:
-\begin{LTXexample}
\dynkin{G}{2}
-\end{LTXexample}
-\newpage\noindent%
-Draw curves between the roots:
-\begin{LTXexample}
+\end{tcblisting}
+\begin{tcblisting}{title={Suppress arrows}}
+\dynkin[arrows=false]{F}{4}
+\dynkin[arrows=false]{G}{2}
+\end{tcblisting}
+\begin{tcblisting}{title={Reverse arrows}}
+\dynkin[reverseArrows]{F}{4}
+\dynkin[reverseArrows]{G}{2}
+\end{tcblisting}
+
+
+\section{Drawing on top of a Dynkin diagram}
+
+\begin{tcblisting}{title={TikZ can access the roots themselves}}
\begin{tikzpicture}
-\dynkin[parabolic=429]{E}{8}
-\draw[very thick, black!50,-latex] (root 3.south) to [out=-45, in=-135] (root 6.south);
+ \dynkin{A}{4};
+ \fill[white,draw=black] (root 2) circle (.15cm);
+ \fill[white,draw=black] (root 2) circle (.1cm);
+ \draw[black] (root 2) circle (.05cm);
\end{tikzpicture}
-\end{LTXexample}
-Draw dots on the roots:
-\begin{LTXexample}
+\end{tcblisting}
+\begin{tcblisting}{title={Draw curves between the roots}}
\begin{tikzpicture}
-\dynkin[label]{C}{8}
-\dynkinopendot{3}
-\dynkinopendot{7}
+ \dynkin[label]{E}{8}
+ \draw[very thick, black!50,-latex]
+ (root 3.south) to [out=-45, in=-135] (root 6.south);
\end{tikzpicture}
-\end{LTXexample}
-Colours:
-\begin{LTXexample}
-\dynkin[color=blue!50,backgroundcolor=red!20]{G}{2}
-\end{LTXexample}
-Edge lengths:
-\begin{LTXexample}
-\dynkin[edgelength=1.2,parabolic=3]{A}{3}
-\end{LTXexample}
-Sizes of dots and crosses:
-\begin{LTXexample}
-\dynkin[dotradius=.08cm,parabolic=3]{A}{3}
-\end{LTXexample}
-Edge styles:
-\begin{LTXexample}
-\dynkin[edge=very thick,parabolic=3]{A}{3}
-\end{LTXexample}
-Open circles instead of closed dots:
-\begin{LTXexample}
-\dynkin[open]{E}{8}
-\end{LTXexample}
-Add closed dots to the open circles, at roots in the current ordering:
-\begin{LTXexample}
+\end{tcblisting}
+\begin{tcblisting}{title={Change marks}}
\begin{tikzpicture}
-\dynkin[open]{E}{8};
-\dynkincloseddot{5}
-\dynkincloseddot{8}
-\end{tikzpicture}
-\end{LTXexample}
-More colouring:
-\begin{LTXexample}
-\begin{tikzpicture}[show background rectangle,
- background rectangle/.style={fill=red!10}]
-\dynkin[parabolic=1,backgroundcolor=blue!20]{G}{2}
+ \dynkin[mark=o,label]{E}{8};
+ \dynkinRootMark{*}{5}
+ \dynkinRootMark{*}{8}
\end{tikzpicture}
-\end{LTXexample}
-Cross styles:
-\begin{LTXexample}
-\dynkin[parabolic=124,cross=thin]{E}{8}
-\end{LTXexample}
-\newpage\noindent{}
-Suppress arrows:
-\begin{LTXexample}
-\dynkin[arrows=false]{F}{4}
-\end{LTXexample}
-\begin{LTXexample}
-\dynkin[arrows=false]{G}{2}
-\end{LTXexample}
-
-\section{Syntax}
-
-The syntax is \verb!\dynkin[<options>]{<letter>}{<rank>}! where \verb!<letter>! is \(A,B,C,D,E,F\) or \(G\), the family of root system for the Dynkin diagram, and \verb!<rank>! is an integer representing the rank, or is the symbol \verb!*! to represent an indefinite rank:
-\begin{LTXexample}
-\dynkin[edge=thick,edgelength=.5cm]{A}{*}
-\end{LTXexample}
-\begin{LTXexample}
-\dynkin[edge=thick,edgelength=.5cm]{B}{*}
-\end{LTXexample}
-\begin{LTXexample}
-\dynkin[edge=thick,edgelength=.5cm]{C}{*}
-\end{LTXexample}
-\begin{LTXexample}
-\dynkin[edge=thick,edgelength=.5cm]{D}{*}
-\end{LTXexample}
-Outside a TikZ environment, the command builds its own TikZ environment.
-
+\end{tcblisting}
-\newcommand*{\typ}[1]{\(\left<\texttt{#1}\right>\)}
-\newcommand*{\optionLabel}[3]{%%
-\multicolumn{2}{l}{\(\texttt{#1}=\texttt{#2}, \texttt{default}=\texttt{#3}\)} \\
-}%%
-\section{Options}
-\par\noindent{}All \verb!\dynkin! options (except \texttt{affine}, \texttt{folded}, \texttt{label} and \texttt{parabolic} ) can also be passed to the package to force a global default option:
-\par\noindent%
-\begin{verbatim}
-\usepackage[
- ordering=Kac,
- color=blue,
- open,
- dotradius=.06cm,
- backgroundcolor=red]
- {dynkin-diagrams}
-\end{verbatim}
-\par\noindent%
-\begin{tabular}{p{1cm}p{10cm}}
-\optionLabel{parabolic}{\typ{integer}}{0}
-& A parabolic subgroup with specified integer, where the integer
-is computed as \(n=\sum 2^i a_i\), \(a_i=0\) or \(1\), to say that root \(i\) is crossed, i.e. a noncompact root. \\
-\optionLabel{color}{\typ{color name}}{black} \\
-\optionLabel{backgroundcolor}{\typ{color name}}{white}
-& This only says what color you have already set for the background rectangle. It is needed precisely for the \(G_2\) root system, to draw the triple line correctly, and only when your background color is not white. \\
-\optionLabel{dotradius}{\typ{number}cm}{.05cm}
-& size of the dots and of the crosses in the Dynkin diagram \\
-\optionLabel{edgelength}{\typ{number}cm}{.35cm}
-& distance between nodes in the Dynkin diagram \\
-\optionLabel{edge}{\typ{TikZ style data}}{thin}
-& style of edges in the Dynkin diagram \\
-\optionLabel{open}{\typ{true or false}}{false}
-& use open circles rather than solid dots as default \\
-\optionLabel{label}{true or false}{false}
-& whether to label the roots by their root numbers. \\
-\optionLabel{arrows}{\typ{true or false}}{true}
-& whether to draw the arrows that arise along the edges. \\
-\optionLabel{folded}{\typ{true or false}}{true}
-& whether, when drawing \(A\), \(D\) or \(E_6\) diagrams, to draw them folded. \\
-\optionLabel{foldarrowstyle}{\typ{TikZ style}}{stealth-stealth}
-& when drawing folded diagrams, style for the fold arrows. \\
-\optionLabel{foldarrowcolor}{\typ{colour}}{black!50}
-& when drawing folded diagrams, colour for the fold arrows. \\
-\optionLabel{Coxeter}{\typ{true or false}}{false}
-& whether to draw a Coxeter diagram, rather than a Dynkin diagram. \\
+\section{Mark lists}
-\optionLabel{ordering}{\typ{Adams, Bourbaki, Carter, Dynkin, Kac}}{Bourbaki}
-& which ordering of the roots to use in exceptional root systems as follows:
-\end{tabular}
+The package allows a list of root marks instead of a rank:
-\newpage
+\begin{tcblisting}{title={A mark list}}
+\dynkin{E}{oo**ttxx}
+\end{tcblisting}
+The mark list \verb!oo**ttxx! has one mark for each root: \verb!o!, \verb!o!, \dots, \verb!x!.
+Roots are listed in the current default ordering.
+(Careful: in an affine root system, a mark list will \emph{not} contain a mark for root zero.)
-\NewDocumentCommand\tablerow{mm}%
+\NewDocumentCommand\ClassicalLieSuperalgebras{m}%
{%
-\(#1_{#2}\)
-&
-\dynkin[label,ordering=Adams]{#1}{#2}
-&
-\dynkin[label]{#1}{#2}
-&
-\dynkin[label,ordering=Carter]{#1}{#2}
-&
-\dynkin[label,ordering=Dynkin]{#1}{#2}
-&
-\dynkin[label,ordering=Kac]{#1}{#2}
-\\
+\begin{dynkinTable}{Classical Lie superalgebras \cite{Frappat/Sciarrino/Sorba:1989}. #1}{3.5cm}{6.5cm}
+A_{mn} & \dynk{A}{ooo.oto.oo}
+B_{mn} & \dynk{B}{ooo.oto.oo}
+B_{0n} & \dynk{B}{ooo.ooo.o*}
+C_{n} & \dynk{C}{too.oto.oo}
+D_{mn} & \dynk{D}{ooo.oto.oooo}
+D_{21\alpha} & \dynk{A}{oto}
+F_4 & \dynk{F}{ooot}
+G_3 & \dynk[extended,affineMark=t]{G}{2}
+\end{dynkinTable}
}%
-\begin{center}
-\begin{longtable}{@{}llllll@{}}
-\toprule
-& Adams & Bourbaki & Carter & Dynkin & Kac \\ \midrule
-\endfirsthead
-\toprule
-Adams & Bourbaki & Carter & Dynkin & Kac \\ \midrule
-\endhead
-\bottomrule
-\endfoot
-\bottomrule
-\endlastfoot
-\tablerow{E}{6}
-\tablerow{E}{7}
-\tablerow{E}{8}
-\tablerow{F}{4}
-\tablerow{G}{2}
-\end{longtable}
-\end{center}
+\begingroup
+\tikzset{/Dynkin diagram,radius=.07cm}
+\ClassicalLieSuperalgebras{We need a slightly larger radius parameter to distinguish the tensor product symbols from the solid dots.}
+\endgroup
+\ClassicalLieSuperalgebras{Here we see the problem with using the default radius parameter, which is too small for tensor product symbols.}
-\par\noindent{}All other options are passed to TikZ.
-\section{Finding the roots}
-The roots are labelled from \(1\) to \(r\), where \(r\) is the rank.
-The command sets up TikZ nodes \texttt{(root 1)}, \texttt{(root 2)}, and so on.
-Affine extended Dynkin diagrams have affine root are at \texttt{(root 0)}.
-Use these tikz nodes to draw on the Dynkin diagram, as above.
-It also sets up TikZ nodes \texttt{(root label 0)}, \texttt{(root label 1)}, and so on for the labels, and TikZ nodes \texttt{(root label swap 0)}, \texttt{(root label swap 1)}, and so on as alternative label locations, in case you want two labels on the same root, or the default choice doesn't look the way you like.
-\begin{LTXexample}
-\begin{tikzpicture}
-\dynkin{E}{6};
-\rootlabel{2}{\alpha_2}
-\rootlabel{5}{\alpha_5}
-\end{tikzpicture}
-\end{LTXexample}
+\section{Indefinite edges}
-\section{Example: some parabolic subgroups}
+An \emph{indefinite edge} is a dashed edge between two roots, \dynkin{A}{*.*} indicating that an indefinite number of roots have been omitted from the Dynkin diagram.
+In between any two entries in a mark list, place a period to indicate an indefinite edge:
+\begin{tcblisting}{title={Indefinite edges}}
+\dynkin{D}{o.o*.*.t.to.t}
+\end{tcblisting}
-\newcommand{\drawparabolic}[3]{#1_{#2,#3} & \tikz \dynkin[parabolic=#3]{#1}{#2}; \\}
+In certain diagrams, roots may have an edge between them even though they are not subsequent in the ordering.
+For such rare situations, there is an option:
+\begin{tcblisting}{title={Indefinite edge option}}
+\dynkin[makeIndefiniteEdge={3-5},label]{D}{5}
+\end{tcblisting}
+\begin{tcblisting}{title={Give a list of edges to become indefinite}}
+\dynkin[makeIndefiniteEdge/.list={1-2,3-5},label]{D}{5}
+\end{tcblisting}
-\begin{center}
-\begin{longtable}{@{}>{$}r<{$}m{2cm}m{2cm}@{}}
-\endfirsthead
-\endhead
-\endfoot
-\endlastfoot
-\drawparabolic{A}{1}{0}
-\drawparabolic{A}{1}{2}
-\drawparabolic{A}{2}{0}
-\drawparabolic{A}{2}{2}
-\drawparabolic{A}{2}{4}
-\drawparabolic{A}{2}{6}
-\drawparabolic{B}{2}{6}
-\drawparabolic{C}{3}{10}
-\drawparabolic{D}{5}{8}
-\drawparabolic{E}{6}{10}
-\drawparabolic{E}{7}{202}
-\drawparabolic{E}{8}{246}
-\drawparabolic{F}{4}{26}
-\drawparabolic{G}{2}{0}
-\drawparabolic{G}{2}{2}
-\drawparabolic{G}{2}{4}
-\drawparabolic{G}{2}{6}
-\end{longtable}
-\end{center}
+\begin{tcblisting}{title={Indefinite edge style}}
+\dynkin[indefiniteEdge/.style={draw=black,fill=white,thin,densely dashed},%
+ edgeLength=1cm,%
+ makeIndefiniteEdge={3-5}]
+ {D}{5}
+\end{tcblisting}
+\begin{tcblisting}{title={The ratio of the lengths of indefinite edges to those of other edges}}
+\dynkin[edgeLength = .5cm,%
+ indefiniteEdgeRatio=3,%
+ makeIndefiniteEdge={3-5}]
+ {D}{5}
+\end{tcblisting}
-\section{Example: the Hermitian symmetric spaces}
+\section{Parabolic subgroups}
- \renewcommand*{\arraystretch}{1.5}
-\begin{center}
-\begin{longtable}{@{}>{$}r<{$}m{2.2cm}m{5cm}@{}}
+Each set of roots is assigned a number, with each binary digit zero or one to say whether the corresponding root is crossed or not:
+\begin{tcblisting}{}
+The flag variety of pointed lines in
+projective 3-space is associated to
+the Dynkin diagram \dynkin[parabolic=3]{A}{3}.
+\end{tcblisting}
+
+\NewDocumentCommand\HSS{mommm}%
+{%
+ \begingroup
+ \renewcommand*{\arraystretch}{1.2}
+ \begin{tabular}{@{}>{$}r<{$}@{}m{6cm}@{}}
+ \\
+ \IfNoValueTF{#2}%
+ {%
+ #1 & \dynkin{#3}{#4} \\
+ & \csDynkin{#3}{#4} \\
+ }%
+ {%
+ #1 & \dynkin[#2]{#3}{#4} \\
+ & \csDynkin[#2]{#3}{#4} \\
+ }%
+ & #5%
+ \\[.75em]
+ \end{tabular}
+ \endgroup
+ \\
+}%
+
+\renewcommand*{\arraystretch}{1}
+\begin{longtable}{>{\columncolor[gray]{.9}}p{7cm}}
+\caption{The Hermitian symmetric spaces}
\endfirsthead
+\caption{\dots continued}\\
\endhead
+\caption{continued \dots}\\
\endfoot
\endlastfoot
- A_n &
- \dynkin[parabolic=16]{A}{*} &
- Grassmannian of $k$-planes in $\C{n+1}$
- \\
- B_n &
- \dynkin[parabolic=2]{B}{*} &
- $(2n-1)$-dimensional hyperquadric, i.e. the variety of null lines in $\C{2n+1}$
- \\
- C_n &
- \dynkin[parabolic=32]{C}{*} &
- space of Lagrangian $n$-planes in $\C{2n}$
- \\
- D_n &
- \dynkin[parabolic=2]{D}{*} &
- $(2n-2)$-dimensional hyperquadric, i.e. the variety of null lines in $\C{2n}$
- \\
- D_n &
- \dynkin[parabolic=64]{D}{*} &
- one component of the variety of maximal dimension null subspaces of $\C{2n}$ \\
- D_n &
- \dynkin[parabolic=32]{D}{*} &
- the other component\\
- E_6 &
- \dynkin[parabolic=2]{E}{6} &
- complexified octave projective plane\\
- E_6 &
- \dynkin[parabolic=64]{E}{6}&its dual plane\\
- E_7 &
- \dynkin[parabolic=128]{E}{7}& the space of null octave 3-planes in octave 6-space
+\HSS{A_n}{A}{**.*x*.**}{Grassmannian of $k$-planes in $\C{n+1}$}
+\HSS{B_n}[parabolic=1]{B}{}{$(2n-1)$-dimensional hyperquadric, i.e. the variety of null lines in $\C{2n+1}$}
+\HSS{C_n}[parabolic=16]{C}{}{space of Lagrangian $n$-planes in $\C{2n}$}
+\HSS{D_n}[parabolic=1]{D}{}{$(2n-2)$-dimensional hyperquadric, i.e. the variety of null lines in $\C{2n}$}
+\HSS{D_n}[parabolic=32]{D}{}{one component of the variety of maximal dimension null subspaces of $\C{2n}$}
+\HSS{D_n}[parabolic=16]{D}{}{the other component}
+\HSS{E_6}[parabolic=1]{E}{6}{complexified octave projective plane}
+\HSS{E_6}[parabolic=32]{E}{6}{its dual plane}
+\HSS{E_7}[parabolic=64]{E}{7}{the space of null octave 3-planes in octave 6-space}
\end{longtable}
-\end{center}
-
-
-\section{Affine extended Dynkin diagrams}
-
-\begin{LTXexample}
-\dynkin[affine,edge=thick]{A}{*}
-\end{LTXexample}
-
-\begin{LTXexample}
-\dynkin[edgelength=1cm,edge=thick,affine]{A}{*}
-\end{LTXexample}
-
-\begin{LTXexample}
-\dynkin[scale=1.5,edge=thick,affine]{A}{*}
-\end{LTXexample}
-
-
-\begin{LTXexample}
-\begin{tikzpicture}
-\dynkin[affine,label]{A}{8};
-\end{tikzpicture}
-\end{LTXexample}
-
-
-\begin{LTXexample}
-\begin{tikzpicture}
-\dynkin[affine]{A}{*};
-\node at (root label 0) {\(\alpha_0\)};
-\end{tikzpicture}
-\end{LTXexample}
-\begin{LTXexample}
-\begin{tikzpicture}
-\dynkin[affine]{A}{9}
-\node at (root label 0) {\(\alpha_0\)};
-\end{tikzpicture}
-\end{LTXexample}
-You can use TikZ to put in labels:
-\begin{LTXexample}
-\begin{tikzpicture}
-\dynkin[affine]{A}{9};
-\node at (root label 0) {\(\alpha_0\)};
-\node at (root label 1) {\(\alpha_1\)};
-\node at (root label 2) {\(\alpha_2\)};
-\node at (root label 3) {\(\alpha_3\)};
-\end{tikzpicture}
-\end{LTXexample}
-\begin{LTXexample}
-\dynkin[affine,label]{A}{1}
-\end{LTXexample}
+\section{Extended Dynkin diagrams}
-\begin{LTXexample}
-\dynkin[affine,label]{B}{8}
-\end{LTXexample}
+\begin{tcblisting}{title={Extended Dynkin diagrams}}
+\dynkin[extended]{A}{7}
+\end{tcblisting}
-\begin{LTXexample}
-\dynkin[affine,label]{B}{*}
-\end{LTXexample}
-\begin{LTXexample}
-\dynkin[affine,label]{C}{8}
-\end{LTXexample}
+The extended Dynkin diagrams are also described in the notation of Kac \cite{Kac:1990} p. 55 as affine untwisted Dynkin diagrams: we extend \verb!\dynkin{A}{7}! to become \verb!\dynkin{A}[1]{7}!:
+\begin{tcblisting}{title={Extended Dynkin diagrams}}
+\dynkin{A}[1]{7}
+\end{tcblisting}
-\begin{LTXexample}
-\dynkin[affine,label]{C}{*}
-\end{LTXexample}
-\begin{LTXexample}
-\dynkin[affine,label]{D}{8}
-\end{LTXexample}
+\renewcommand*{\arraystretch}{1.5}
+\begin{dynkinTable}{The Dynkin diagrams of the extended simple root systems}{3cm}{5cm}
+\dyn[extended]{A}{1}
+\dyn[extended]{A}{}
+\dyn[extended]{B}{}
+\dyn[extended]{C}{}
+\dyn[extended]{D}{}
+\dyn[extended]{E}{6}
+\dyn[extended]{E}{7}
+\dyn[extended]{E}{8}
+\dyn[extended]{F}{4}
+\dyn[extended]{G}{2}
+\end{dynkinTable}
+
+
+\section{Affine twisted and untwisted Dynkin diagrams}
+
+The affine Dynkin diagrams are described in the notation of Kac \cite{Kac:1990} p. 55:
+\begin{tcblisting}{title={Affine Dynkin diagrams}}
+\(A^{(1)}_7=\dynkin{A}[1]{7}, \
+E^{(2)}_6=\dynkin{E}[2]{6}, \
+D^{(3)}_4=\dynkin{D}[3]{4}\)
+\end{tcblisting}
+
+
+
+\begin{dynkinTable}{The affine Dynkin diagrams}{3cm}{3.75cm}
+\dyn{A}[1]{1}
+\dyn{A}[1]{}
+\dyn{B}[1]{}
+\dyn{C}[1]{}
+\dyn{D}[1]{}
+\dyn{E}[1]{6}
+\dyn{E}[1]{7}
+\dyn{E}[1]{8}
+\dyn{F}[1]{4}
+\dyn{G}[1]{2}
+\dyn{A}[2]{2}
+\dyn{A}[2]{even}
+\dyn{A}[2]{odd}
+\dyn{D}[2]{}
+\dyn{E}[2]{6}
+\dyn{D}[3]{4}
+\end{dynkinTable}
+
+\begin{dynkinTable}{Some more affine Dynkin diagrams}{3cm}{3.25cm}
+\dyn{A}[2]{4}
+\dyn{A}[2]{5}
+\dyn{A}[2]{6}
+\dyn{A}[2]{7}
+\dyn{A}[2]{8}
+\dyn{D}[2]{3}
+\dyn{D}[2]{4}
+\dyn{D}[2]{5}
+\dyn{D}[2]{6}
+\dyn{D}[2]{7}
+\dyn{D}[2]{8}
+\dyn{D}[3]{4}
+\dyn{E}[2]{6}
+\end{dynkinTable}
+
+
+
+
+\section{Extended Coxeter diagrams}
+
+\begin{tcblisting}{title={Extended and Coxeter options together}}
+\dynkin[extended,Coxeter]{F}{4}
+\end{tcblisting}
+
+
+\begin{dynkinTable}{The extended (affine) Coxeter diagrams}{3cm}{6cm}
+\dyn[extended,Coxeter]{A}{}
+\dyn[extended,Coxeter]{B}{}
+\dyn[extended,Coxeter]{C}{}
+\dyn[extended,Coxeter]{D}{}
+\dyn[extended,Coxeter]{E}{6}
+\dyn[extended,Coxeter]{E}{7}
+\dyn[extended,Coxeter]{E}{8}
+\dyn[extended,Coxeter]{F}{4}
+\dyn[extended,Coxeter]{G}{2}
+\dyn[extended,Coxeter]{H}{3}
+\dyn[extended,Coxeter]{H}{4}
+\dyn[extended,Coxeter]{I}{1}
+\end{dynkinTable}
+
+
+\section{Kac style}
+
+We include a style called \verb!Kac! which tries to imitate the style of \cite{Kac:1990}.
+
+\begin{tcblisting}{title={Kac style}}
+\dynkin[Kac]{F}{4}
+\end{tcblisting}
+
+
+
+\begingroup
+\pgfkeys{/Dynkin diagram,Kac}
+\newcolumntype{D}{>{\columncolor[gray]{1}}m{\wdtD}}
+\begin{dynkinTable}{The Dynkin diagrams of the extended simple root systems in Kac style. At the moment, it only works on a white background.}{5cm}{4.5cm}
+\dyn[extended]{A}{1}
+\dyn[extended]{A}{}
+\dyn[extended]{B}{}
+\dyn[extended]{C}{}
+\dyn[extended]{D}{}
+\dyn[extended]{E}{6}
+\dyn[extended]{E}{7}
+\dyn[extended]{E}{8}
+\dyn[extended]{F}{4}
+\dyn[extended]{G}{2}
+\end{dynkinTable}
+\endgroup
-\begin{LTXexample}
-\dynkin[affine,label]{D}{*}
-\end{LTXexample}
-\begin{LTXexample}
-\dynkin[affine,label]{E}{6}
-\end{LTXexample}
-\begin{LTXexample}
-\dynkin[affine,label]{E}{7}
-\end{LTXexample}
+\section{Folded Dynkin diagrams}
-\begin{LTXexample}
-\dynkin[affine,label]{E}{8}
-\end{LTXexample}
+The Dynkin diagrams package has limited support for folding Dynkin diagrams.
-Open circles instead of closed dots:
-\begin{LTXexample}
-\dynkin[affine,open,label]{E}{8}
-\end{LTXexample}
+\begin{tcblisting}{title={Folding}}
+\dynkin[fold]{A}{13}
+\end{tcblisting}
-\begin{LTXexample}
-\dynkin[affine,label]{F}{4}
-\end{LTXexample}
+\begin{tcblisting}{title={Big fold radius}}
+\dynkin[fold,foldradius=1cm]{A}{13}
+\end{tcblisting}
-\begin{LTXexample}
-\dynkin[affine,label]{G}{2}
-\end{LTXexample}
+\begin{tcblisting}{title={Small fold radius}}
+\dynkin[fold,foldradius=.2cm]{A}{13}
+\end{tcblisting}
+Some Dynkin diagrams have multiple foldings, which we attempt to distinguish (not entirely successfully) by their \emph{ply}: the maximum number of roots folded together.
+Most diagrams can only allow a 2-ply folding, so \verb!fold! is a synonym form \verb!ply=2!.
-\section{Coxeter diagrams}
+\begin{tcblisting}{title={3-ply}}
+\dynkin[ply=3]{D}{4}
+\dynkin[ply=3]{D}[1]{4}
+\end{tcblisting}
-\begin{LTXexample}
-\dynkin[Coxeter]{B}{7}
-\end{LTXexample}
+\begin{tcblisting}{title={4-ply}}
+\dynkin[ply=4]{D}[1]{4}
+\end{tcblisting}
-\begin{LTXexample}
-\dynkin[Coxeter]{F}{4}
-\end{LTXexample}
+The \(D^{(1)}_{\ell}\) diagrams can be folded on their left end and separately on their right end:
+\begin{tcblisting}{title={Left, right and both}}
+\dynkin{D}[1]{} \
+\dynkin[foldleft]{D}[1]{} \
+\dynkin[foldright]{D}[1]{} \
+\dynkin[fold]{D}[1]{}
+\end{tcblisting}
-\begin{LTXexample}
-\dynkin[Coxeter]{G}{2}
-\end{LTXexample}
+We have to be careful about the 4-ply foldings of \(D^{(1)}_{2\ell}\), for which we can have two different patterns, so by default, the package only draws as much as it can without distinguishing the two:
+\begin{tcblisting}{title={Default \(D^{(1)}_{2\ell}\) and the two ways to finish it}}
+\begin{tikzpicture}
+ \dynkin[ply=4]{D}[1]{****.*****.*****}%
+\end{tikzpicture} \
+\begin{tikzpicture}
+ \dynkin[ply=4]{D}[1]{****.*****.*****}%
+ \dynkinFold[bend right=65]{1}{13}%
+ \dynkinFold[bend right=65]{0}{14}%
+\end{tikzpicture} \
+\begin{tikzpicture}
+ \dynkin[ply=4]{D}[1]{****.*****.*****}%
+ \dynkinFold{0}{1}%
+ \dynkinFold{1}{13}%
+ \dynkinFold{13}{14}%
+\end{tikzpicture}
+\end{tcblisting}
-\begin{LTXexample}
-\dynkin[Coxeter]{H}{7}
-\end{LTXexample}
-\begin{LTXexample}
-\dynkin[Coxeter]{I}{7}
-\end{LTXexample}
+\begingroup
+\RenewDocumentCommand\wdtD{}{3.5cm}
+\RenewDocumentCommand\wdtL{}{7cm}
+\NewDocumentCommand\seriesName{mmm}%
+{%
+ \IfStrEq{#2}{0}{#1_{#3}}{#1^{#2}_{#3}}%
+}%
-\section{Folded Dynkin diagrams}
+\NewDocumentCommand\foldingTable{smmmmmmmm}%
+{%
+\begin{tabular}{ADL}%
+\seriesName{#2}{#3}{#4}&#5
+\seriesName{#6}{#7}{#8}&\IfBooleanTF{#1}{\reflectbox{#9}}{#9}%
+\end{tabular}%
+\\ \hline
+}%
-\begin{LTXexample}
-\dynkin[folded]{E}{6}
-\end{LTXexample}
-\begin{LTXexample}
-\dynkin[folded,label]{E}{6}
-\end{LTXexample}
+\NewDocumentCommand\fold{smmmmmm}%
+{%
+ \IfBooleanTF{#1}%
+ {%
+ \foldingTable%
+ {#2}{#3}{#4}{\dynk[fold]{#2}[#3]{#4}}%
+ {#5}{#6}{#7}{\dynk[reverseArrows]{#5}[#6]{#7}}%
+ }%
+ {%
+ \foldingTable%
+ {#2}{#3}{#4}{\dynk[fold]{#2}[#3]{#4}}%
+ {#5}{#6}{#7}{\dynk{#5}[#6]{#7}}%
+ }%
+}%
-\begin{LTXexample}
-\dynkin[folded]{A}{*}
-\end{LTXexample}
+\begin{filecontents*}{DoneTwoElBendy.tex}
+\begin{tikzpicture}
+ \dynkin[ply=4]{D}[1]{****.*****.*****}
+ \dynkinFold[bend right=65]{1}{13}
+ \dynkinFold[bend right=65]{0}{14}
+\end{tikzpicture}
+\end{filecontents*}
-\begin{LTXexample}
-\dynkin[folded,label]{A}{1}
-\end{LTXexample}
-\begin{LTXexample}
-\dynkin[folded,label]{A}{2}
-\end{LTXexample}
+\begin{filecontents*}{DoneTwoElStraight.tex}
+\begin{tikzpicture}
+ \dynkin[ply=4]{D}[1]{****.*****.*****}
+ \dynkinFold{0}{1}
+ \dynkinFold{1}{13}
+ \dynkinFold{13}{14}
+\end{tikzpicture}
+\end{filecontents*}
-\begin{LTXexample}
-\dynkin[folded,label]{A}{3}
-\end{LTXexample}
+\pgfkeys{/Dynkin diagram,foldradius=.35cm}
+\begin{longtable}{@{}p{15cm}@{}}
+\caption{Some foldings of Dynkin diagrams}\\
+\endfirsthead
+\caption{\dots continued}\\
+\endhead
+\multicolumn{1}{c}{continued \dots}\\
+\endfoot
+\endlastfoot
+\fold{A}{0}{3}{C}{0}{2}
+\foldingTable{A}{0}{2\ell-1}{\dynk[fold]{A}{**.*****.**}}%
+{C}{0}{\ell}{\dynk{C}{}}
+\fold*{B}{0}{3}{G}{0}{2}
+\foldingTable{D}{0}{4}{\dynk[ply=3]{D}{4}}%
+{G}{0}{2}{\dynk{G}{2}}
+\foldingTable{D}{0}{\ell+1}{\dynk[fold]{D}{}}%
+{B}{0}{\ell}{\dynk{B}{}}
+\fold*{E}{0}{6}{F}{0}{4}
+\foldingTable{A}{1}{3}{\dynk[ply=4]{A}[1]{3}}%
+{A}{1}{1}{\dynk{A}[1]{1}}
+\foldingTable{A}{1}{2\ell-1}{\dynk[fold]{A}[1]{**.*****.**}}%
+{C}{1}{\ell}{\dynk{C}[1]{}}
+\foldingTable{B}{1}{3}{\dynk[ply=3]{B}[1]{3}}%
+{A}{2}{2}{\dynk{A}[2]{2}}
+\foldingTable{B}{1}{3}{\dynk[ply=2]{B}[1]{3}}%
+{G}{1}{2}{\dynk{G}[1]{2}}
+\foldingTable{B}{1}{\ell}{\dynk[fold]{B}[1]{}}{D}{2}{\ell}{\dynk{D}[2]{}}
+\foldingTable{D}{1}{4}{\dynk[ply=3]{D}[1]{4}}%
+{B}{1}{3}{\dynk{B}[1]{3}}
+\foldingTable{D}{1}{4}{\dynk[ply=3]{D}[1]{4}}%
+{G}{1}{2}{\dynk{G}[1]{2}}
+\foldingTable{D}{1}{\ell+1}{\dynk[fold]{D}[1]{}}%
+{D}{2}{\ell}{\dynk{D}[2]{}}
+\foldingTable{D}{1}{\ell+1}{%
+\dynk[foldright]{D}[1]{}}%
+{B}{1}{\ell}{\dynk{B}[1]{}}
+\foldingTable{D}{1}{2\ell}{%
+\input{DoneTwoElStraight.tex}
+&
+\VerbatimInput{DoneTwoElStraight.tex} \\
+}%
+{A}{2}{\text{odd}}{\dynk{A}[2]{odd}}
+\foldingTable{D}{1}{2\ell}{%
+\input{DoneTwoElBendy.tex}
+&
+\VerbatimInput{DoneTwoElBendy.tex} \\
+}%
+{A}{2}{\text{even}}{\dynk{A}[2]{even}}
+\fold*{E}{1}{6}{F}{1}{4}
+\foldingTable{E}{1}{6}{\dynk[ply=3]{E}[1]{6}}%
+{D}{3}{4}{\dynk{D}[3]{4}}
+\fold{E}{1}{7}{E}{2}{6}
+\fold{F}{1}{4}{G}{1}{2}
+\foldingTable{A}{2}{\text{odd}}{%
+\dynk[odd,fold]{A}[2]{****.***}
+}%
+{A}{2}{\text{even}}{\dynk{A}[2]{even}}
+\foldingTable{D}{2}{3}{\dynk[fold]{D}[2]{3}}%
+{A}{2}{2}{\dynk{A}[2]{2}}
+\end{longtable}
+\endgroup
-\begin{LTXexample}
-\dynkin[folded,label]{A}{4}
-\end{LTXexample}
-\begin{LTXexample}
-\dynkin[folded,label]{A}{10}
-\end{LTXexample}
-\begin{LTXexample}
-\dynkin[folded,label]{A}{11}
-\end{LTXexample}
+\section{Root ordering}\label{section:order}
-\begin{LTXexample}
-\dynkin[folded,label,arrows=false]{A}{11}
-\end{LTXexample}
+\begin{tcblisting}{title={Root ordering}}
+\dynkin[label,ordering=Adams]{E}{6}
+\dynkin[label,ordering=Bourbaki]{E}{6}
+\dynkin[label,ordering=Carter]{E}{6}
+\dynkin[label,ordering=Dynkin]{E}{6}
+\dynkin[label,ordering=Kac]{E}{6}
+\end{tcblisting}
+Default is Bourbaki.
-\begin{LTXexample}
-\dynkin[folded]{D}{*}
-\end{LTXexample}
+\NewDocumentCommand\tablerow{mm}%
+{%
+#1_{#2}
+&
+\dynkin[label,ordering=Adams]{#1}{#2}
+&
+\dynkin[label]{#1}{#2}
+&
+\dynkin[label,ordering=Carter]{#1}{#2}
+&
+\dynkin[label,ordering=Dynkin]{#1}{#2}
+&
+\dynkin[label,ordering=Kac]{#1}{#2}
+\\
+}%
-\begin{LTXexample}
-\dynkin[folded,label]{D}{1}
-\end{LTXexample}
+\begin{center}
+\RenewDocumentCommand\wdtA{}{.7cm}
+\RenewDocumentCommand\wdtL{}{2.2cm}
+\begin{longtable}{@{}ALLLLL@{}}
+\toprule
+& Adams & Bourbaki & Carter & Dynkin & Kac \\ \midrule
+\endfirsthead
+\toprule
+Adams & Bourbaki & Carter & Dynkin & Kac \\ \midrule
+\endhead
+\bottomrule
+\endfoot
+\bottomrule
+\endlastfoot
+\tablerow{E}{6}
+\tablerow{E}{7}
+\tablerow{E}{8}
+\tablerow{F}{4}
+\tablerow{G}{2}
+\end{longtable}
+\end{center}
-\begin{LTXexample}
-\dynkin[folded,label]{D}{2}
-\end{LTXexample}
-\begin{LTXexample}
-\dynkin[folded,label]{D}{3}
-\end{LTXexample}
+\section{Connecting Dynkin diagrams}\label{section:name}
-\begin{LTXexample}
-\dynkin[folded,label]{D}{4}
-\end{LTXexample}
+We can make some sophisticated folded diagrams by drawing multiple diagrams, each with a name:
+\begin{tcblisting}{title={Name a diagram}}
+\dynkin[name=Bob]{D}{6}
+\end{tcblisting}
+We can then connect the two with folding edges:
+\begin{tcblisting}{title={Connect diagrams}}
+\begin{tikzpicture}
+ \dynkin[name=upper]{A}{3}
+ \node (current) at ($(upper root 1)+(0,-.3cm)$) {};
+ \dynkin[at=(current),name=lower]{A}{3}
+ \begin{scope}[on background layer]
+ \foreach \i in {1,...,3}%
+ {%
+ \draw[/Dynkin diagram/foldStyle]
+ ($(upper root \i)$) -- ($(lower root \i)$);%
+ }%
+ \end{scope}
+\end{tikzpicture}
+\end{tcblisting}
-\begin{LTXexample}
-\dynkin[folded,label]{D}{10}
-\end{LTXexample}
+The following diagrams arise in the Satake diagrams of the pseudo-Riemannian symmetric spaces \cite{Baba:2009}.
-\begin{LTXexample}
-\dynkin[folded,label]{D}{11}
-\end{LTXexample}
+\begin{tcblisting}{}
+\pgfkeys{/Dynkin diagram,edgeLength=.5cm,foldradius=.5cm}
+\begin{tikzpicture}
+ \dynkin[name=1]{A}{IIIb}
+ \node (a) at (.3,.4){};
+ \dynkin[name=2,at=(a)]{A}{IIIb}
+ \begin{scope}[on background layer]
+ \foreach \i in {1,...,7}%
+ {%
+ \draw[/Dynkin diagram/foldStyle]
+ ($(1 root \i)$)
+ --
+ ($(2 root \i)$);%
+ }%
+ \end{scope}
+\end{tikzpicture}
+\end{tcblisting}
+\begin{tcblisting}{}
+\pgfkeys{/Dynkin diagram/edgeLength=.75cm,/Dynkin diagram/edge/.style={draw=white,double=black,very thick},
+}
+\begin{tikzpicture}
+ \foreach \d in {1,...,4}
+ {
+ \node (current) at ($(\d*.05,\d*.3)$){};
+ \dynkin[name=\d,at=(current)]{D}{oo.oooo}
+ }
+ \begin{scope}[on background layer]
+ \foreach \i in {1,...,6}%
+ {%
+ \draw[/Dynkin diagram/foldStyle] ($(1 root \i)$) -- ($(2 root \i)$);%
+ \draw[/Dynkin diagram/foldStyle] ($(2 root \i)$) -- ($(3 root \i)$);%
+ \draw[/Dynkin diagram/foldStyle] ($(3 root \i)$) -- ($(4 root \i)$);%
+ }%
+ \end{scope}
+\end{tikzpicture}
+\end{tcblisting}
-\section{Satake diagrams}
+\section{Other examples}
-We have incomplete support for Satake diagrams as yet, following the conventions of \cite{Helgason:2001}.
+Below we draw the Vogan diagrams of some affine Lie superalgebras \cite{Ransingh:2013,Ransingh:unpub}.
-\begin{LTXexample}
-\dynkin{A}{I}
-\end{LTXexample}
+\begingroup
-\begin{LTXexample}
-\dynkin{A}{II}
-\end{LTXexample}
+\NewDocumentCommand\labls{m}%
+{%
+ \ifcase#1%
+ {1}\or%
+ {1}\or%
+ {2}\or%
+ {2}\or%
+ {2}\or%
+ {2}\or%
+ {2}\or%
+ {1}\or%
+ {1}\or%
+ \else\typeout{What?}%
+ \fi%
+}%
+\NewDocumentCommand\lablIt{m}%
+{%
+ \ifnum#1=0\relax%
+ 1%
+ \else
+ 2%
+ \fi%
+}%
-\begin{LTXexample}
-\dynkin{E}{I}
-\end{LTXexample}
+\tikzset{/Dynkin diagram,labelMacro/.code=\labls{#1},label,radius=.06cm}
-\begin{LTXexample}
-\dynkin{E}{II}
-\end{LTXexample}
-\begin{LTXexample}
-\dynkin{E}{III}
-\end{LTXexample}
+\tcbset{text width=10cm}
+\RenewDocumentCommand\wdtA{}{2cm}
-\begin{LTXexample}
-\dynkin{E}{IV}
-\end{LTXexample}
+\NewDocumentEnvironment{Category}{m}%
+{%
+\begin{tcolorbox}[title={\(#1\)},breakable]{}
+}%
+{%
+\end{tcolorbox}
+}%
-\begin{LTXexample}
-\dynkin{E}{V}
-\end{LTXexample}
+\begin{Category}{\mathfrak{sl}\left(2m|2n\right)^{(2)}}
+\begin{tcblisting}{}
+\begin{tikzpicture}
+ \dynkin[ply=2,label]{B}[1]{oo.oto.oo}
+ \dynkinLabelRoot*{7}{1}
+\end{tikzpicture}
+\end{tcblisting}
+\begin{tcblisting}{}
+\dynkin[label]{B}[1]{oo.oto.oo}
+\end{tcblisting}
+\begin{tcblisting}{}
+\dynkin[ply=2,label]{B}[1]{oo.Oto.Oo}
+\end{tcblisting}
+\begin{tcblisting}{}
+\dynkin[label]{B}[1]{oo.Oto.Oo}
+\end{tcblisting}
+\begin{tcblisting}{}
+\dynkin[label]{D}[1]{oo.oto.ooo}
+\end{tcblisting}
+\begin{tcblisting}{}
+\dynkin[label]{D}[1]{oO.otO.ooo}
+\end{tcblisting}
+\begin{tcblisting}{}
+\dynkin[label,fold]{D}[1]{oo.oto.ooo}
+\end{tcblisting}
+\end{Category}
+
+\begin{Category}{\mathfrak{sl}\left(2m+1|2n\right)^2}
+\begin{tcblisting}{}
+\dynkin[label]{B}[1]{oo.oto.oo}
+\end{tcblisting}
+\begin{tcblisting}{}
+\dynkin[label]{B}[1]{oO.oto.oO}
+\end{tcblisting}
+\begin{tcblisting}{}
+\dynkin[label,fold]{B}[1]{oo.oto.oo}
+\end{tcblisting}
+\end{Category}
+
+\begin{Category}{\mathfrak{sl}\left(2m+1|2n+1\right)^2}
+\begin{tcblisting}{}
+\dynkin[label]{D}[2]{o.oto.oo}
+\end{tcblisting}
+\begin{tcblisting}{}
+\dynkin[label]{D}[2]{o.OtO.oo}
+\end{tcblisting}
+\end{Category}
+
+\begin{Category}{\mathfrak{sl}\left(2|2n+1\right)^{(2)}}
+\begin{tcblisting}{}
+\dynkin[ply=2,label,doubleEdges]{B}[1]{oo.Oto.Oo}
+\end{tcblisting}
+\begin{tcblisting}{}
+\dynkin[ply=2,label,doubleFold]{B}[1]{oo.Oto.Oo}
+\end{tcblisting}
+\begin{tcblisting}{}
+\dynkin[ply=2,label,doubleEdges]{B}[1]{oo.OtO.oo}
+\end{tcblisting}
+\begin{tcblisting}{}
+\dynkin[ply=2,label,doubleFold]{B}[1]{oo.OtO.oo}
+\end{tcblisting}
+\end{Category}
+
+\begin{Category}{\mathfrak{sl}\left(2|2n\right)^{(2)}}
+\begin{tcblisting}{}
+\dynkin[ply=2,label,doubleEdges]{D}[1]{oo.oto.ooo}
+\end{tcblisting}
+\begin{tcblisting}{}
+\dynkin[ply=2,label,doubleFoldLeft]{D}[1]{oo.oto.ooo}
+\end{tcblisting}
+\end{Category}
+
+\begin{Category}{\mathfrak{osp}\left(2m|2n\right)^{(2)}}
+\begin{tcblisting}{}
+\dynkin[label,labelMacro/.code={1}]{D}[2]{o.oto.oo}
+\end{tcblisting}
+\begin{tcblisting}{}
+\dynkin[label,labelMacro/.code={1}]{D}[2]{o.Oto.Oo}
+\end{tcblisting}
+\end{Category}
+
+\begin{Category}{\mathfrak{osp}\left(2|2n\right)^{(2)}}
+\begin{tcblisting}{}
+\dynkin[label,labelMacro/.code=\lablIt{#1},
+ affineMark=*]
+ {D}[2]{o.o.o.o*}
+\end{tcblisting}
+\begin{tcblisting}{}
+\dynkin[label,labelMacro/.code=\lablIt{#1},
+ affineMark=*]
+ {D}[2]{o.O.o.o*}
+\end{tcblisting}
+\end{Category}
+
+\begin{Category}{\mathfrak{sl}\left(1|2n+1\right)^{4}}
+\begin{tcblisting}{}
+\dynkin[label,labelMacro/.code={1}]{D}[2]{o.o.o.o*}
+\end{tcblisting}
+\begin{tcblisting}{}
+\dynkin[label,labelMacro/.code={1}]{D}[2]{o.o.O.o*}
+\end{tcblisting}
+\end{Category}
+
+
+\begin{Category}{A^1}
+\begin{tcblisting}{}
+\begin{tikzpicture}
+ \dynkin[name=upper]{A}{oo.t.oo}
+ \node (Dynkin current) at (upper root 1){};
+ \dynkinSouth
+ \dynkin[at=(Dynkin current),name=lower]{A}{oo.t.oo}
+ \begin{scope}[on background layer]
+ \foreach \i in {1,...,5}{
+ \draw[/Dynkin diagram/foldStyle]
+ ($(upper root \i)$) -- ($(lower root \i)$);
+ }
+ \end{scope}
+\end{tikzpicture}
+\end{tcblisting}
+\begin{tcblisting}{}
+\dynkin[fold]{A}[1]{oo.t.ooooo.t.oo}
+\end{tcblisting}
+\begin{tcblisting}{}
+\dynkin[fold,affineMark=t]{A}[1]{oo.o.ootoo.o.oo}
+\end{tcblisting}
+\begin{tcblisting}{}
+\dynkin[affineMark=t]{A}[1]{o*.t.*o}
+\end{tcblisting}
+\end{Category}
+
+\begin{Category}{B^1}
+\begin{tcblisting}{}
+\dynkin[affineMark=*]{A}[2]{o.oto.o*}
+\end{tcblisting}
+\begin{tcblisting}{}
+\dynkin[affineMark=*]{A}[2]{o.oto.o*}
+\end{tcblisting}
+\begin{tcblisting}{}
+\dynkin[affineMark=*]{A}[2]{o.ooo.oo}
+\end{tcblisting}
+\begin{tcblisting}{}
+\dynkin[odd]{A}[2]{oo.*to.*o}
+\end{tcblisting}
+\begin{tcblisting}{}
+\dynkin[odd,fold]{A}[2]{oo.oto.oo}
+\end{tcblisting}
+\begin{tcblisting}{}
+\dynkin[odd,fold]{A}[2]{o*.oto.o*}
+\end{tcblisting}
+\end{Category}
+
+\begin{Category}{D^1}
+\begin{tcblisting}{}
+\dynkin{D}{otoo}
+\end{tcblisting}
+\begin{tcblisting}{}
+\dynkin{D}{ot*o}
+\end{tcblisting}
+\begin{tcblisting}{}
+\dynkin[fold]{D}{otoo}
+\end{tcblisting}
+\end{Category}
+
+\begin{Category}{C^1}
+\begin{tcblisting}{}
+\dynkin[doubleEdges,fold,affineMark=t,odd]{A}[2]{to.o*}
+\end{tcblisting}
+\begin{tcblisting}{}
+\dynkin[doubleEdges,fold,affineMark=t,odd]{A}[2]{t*.oo}
+\end{tcblisting}
+\end{Category}
+
+\begin{Category}{F^1}
+\begin{tcblisting}{}
+\begin{tikzpicture}%
+ \dynkin{A}{oto*}%
+ \dynkinQuadrupleEdge{1}{2}%
+ \dynkinTripleEdge{4}{3}%
+\end{tikzpicture}%
+\end{tcblisting}
+\begin{tcblisting}{}
+\begin{tikzpicture}%
+ \dynkin{A}{*too}%
+ \dynkinQuadrupleEdge{1}{2}%
+ \dynkinTripleEdge{4}{3}%
+\end{tikzpicture}%
+\end{tcblisting}
+\end{Category}
+
+\begin{Category}{G^1}
+\begin{tcblisting}{}
+\begin{tikzpicture}%
+ \dynkin{A}{ot*oo}%
+ \dynkinQuadrupleEdge{1}{2}%
+ \dynkinDefiniteDoubleEdge{4}{3}%
+\end{tikzpicture}%
+\end{tcblisting}
+\begin{tcblisting}{}
+\begin{tikzpicture}%
+ \dynkin{A}{oto*o}%
+ \dynkinQuadrupleEdge{1}{2}%
+ \dynkinDefiniteDoubleEdge{4}{3}%
+\end{tikzpicture}%
+\end{tcblisting}
+\begin{tcblisting}{}
+\begin{tikzpicture}%
+ \dynkin{A}{*too*}%
+ \dynkinQuadrupleEdge{1}{2}%
+ \dynkinDefiniteDoubleEdge{4}{3}%
+\end{tikzpicture}%
+\end{tcblisting}
+\begin{tcblisting}{}
+\begin{tikzpicture}%
+ \dynkin{A}{*tooo}%
+ \dynkinQuadrupleEdge{1}{2}%
+ \dynkinDefiniteDoubleEdge{4}{3}%
+\end{tikzpicture}%
+\end{tcblisting}
+\end{Category}
-\begin{LTXexample}
-\dynkin{E}{VI}
-\end{LTXexample}
-\begin{LTXexample}
-\dynkin{E}{VII}
-\end{LTXexample}
-\begin{LTXexample}
-\dynkin{E}{VIII}
-\end{LTXexample}
-\begin{LTXexample}
-\dynkin{E}{XI}
-\end{LTXexample}
-\begin{LTXexample}
-\dynkin{F}{I}
-\end{LTXexample}
+\section{Syntax}
-\begin{LTXexample}
-\dynkin{F}{II}
-\end{LTXexample}
+The syntax is \verb!\dynkin[<options>]{<letter>}[<twisted rank>]{<rank>}! where \verb!<letter>! is \verb!A!, \verb!B!, \verb!C!, \verb!D!, \verb!E!, \verb!F! or \verb!G!, the family of root system for the Dynkin diagram, \verb!<twisted rank>! is \verb!0!, \verb!1!, \verb!2!, \verb!3! (default is \verb!0!) representing:
+\[
+\renewcommand*{\arraystretch}{1}
+\begin{array}{rp{8cm}}
+0 & finite root system \\ \hline
+1 & affine extended root system, i.e. of type \({}^{(1)}\) \\
+2 & affine twisted root system of type \({}^{(2)}\) \\
+3 & affine twisted root system of type \({}^{(3)}\) \\
+\end{array}
+\]
+and \verb!<rank>! is
+\begin{enumerate}
+\item
+an integer representing the rank or
+\item
+blank to represent an indefinite rank or
+\item
+the name of a Satake diagram as in section~\ref{section:Satake}.
+\end{enumerate}
-\begin{LTXexample}
-\dynkin{G}{I}
-\end{LTXexample}
-\begin{LTXexample}
-\begin{tikzpicture}
-\dynkin[open]{E}{6}
-\draw[\dynkinfoldarrowstyle,\dynkinfoldarrowcolor]
- (root 1.south) to [out=-45, in=-135] (root 6.south);
-\draw[\dynkinfoldarrowstyle,\dynkinfoldarrowcolor]
- (root 3.south) to [out=-45, in=-135] (root 5.south);
-\end{tikzpicture}
-\end{LTXexample}
-\begin{LTXexample}
-\begin{tikzpicture}
-\dynkin[open]{E}{6}
-\dynkincloseddot{3}
-\dynkincloseddot{4}
-\dynkincloseddot{5}
-\draw[\dynkinfoldarrowstyle,\dynkinfoldarrowcolor]
- (root 1.south) to [out=-45, in=-135] (root 6.south);
-\end{tikzpicture}
-\end{LTXexample}
+\section{Options}
-\section{Other stuff}
+\newcommand*{\typ}[1]{\(\left<\texttt{#1}\right>\)}
+\newcommand*{\optionLabel}[3]{%%
+\multicolumn{2}{l}{\(\texttt{#1}=\texttt{#2}\),} \\
+\multicolumn{2}{l}{\(\textrm{default}: \texttt{#3}\)} \\
+}%%
-Some sophisticated diagrams:
-\begin{center}
-\begin{tikzpicture}
-\dynkin[folded]{D}{9}
-\foreach \i in {2,6,8,9} {
- \dynkinopendot{\i}
-}
-\dynkinline[white]{4}{5}
-\dynkindots{4}{5}
-\dynkinopendot{4}
-\dynkincloseddot{5}
-\end{tikzpicture}
-\end{center}
-can be drawn using sending TikZ options to \verb!\dynkinline! to erase the old edge, \verb!\dynkindots! to make indefinite edges, and then redrawing the roots next to any edge we draw:
-\begin{LTXexample}
-\begin{tikzpicture}[show background rectangle,
- background rectangle/.style={fill=red!10}]
-\dynkin[folded]{D}{9};
-\foreach \i in {2,6,8,9} {
- \dynkinopendot{\i}
-}
-\dynkinline[red!10]{4}{5}
-\dynkindots{4}{5}
-\dynkinopendot{4}
-\dynkincloseddot{5}
-\end{tikzpicture}
-\end{LTXexample}
+\renewcommand*{\arraystretch}{1}
+\par\noindent%
+\begin{longtable}{p{1cm}p{10cm}}
+\endfirsthead
+\caption{\dots continued}\\
+\endhead
+\multicolumn{2}{c}{continued \dots}\\
+\endfoot
+\endlastfoot
+\optionLabel{text/.style}{\typ{TikZ style data}}{scale=.7}
+& Style for any labels on the roots. \\
+\optionLabel{name}{\typ{string}}{anonymous}
+& A name for the Dynkin diagram, with \texttt{anonymous} treated as a blank; see section~\ref{section:name}. \\
+\optionLabel{parabolic}{\typ{integer}}{0}
+& A parabolic subgroup with specified integer, where the integer
+is computed as \(n=\sum 2^{i-1} a_i\), \(a_i=0\) or \(1\), to say that root \(i\) is crossed, i.e. a noncompact root. \\
+\optionLabel{radius}{\typ{number}cm}{.05cm}
+& size of the dots and of the crosses in the Dynkin diagram \\
+\optionLabel{edgeLength}{\typ{number}cm}{.35cm}
+& distance between nodes in the Dynkin diagram \\
+\optionLabel{edge/.style}{TikZ style data}{thin}
+& style of edges in the Dynkin diagram \\
+\optionLabel{mark}{\typ{o,O,t,x,X,*}}{*}
+& default root mark \\
+\optionLabel{affineMark}{o,O,t,x,X,*}{*}
+& default root mark for root zero in an affine Dynkin diagram \\
+\optionLabel{label}{true or false}{false}
+& whether to label the roots according to the current labelling scheme. \\
+\optionLabel{labelMacro}{\typ{1-parameter \TeX{} macro}}{\texttt{\#1}}
+& the current labelling scheme. \\
+\optionLabel{makeIndefiniteEdge}{\typ{edge pair \(i\)-\(j\) or list of such}}{\{\}}
+& edge pair or list of edge pairs to treat as having indefinitely many roots on them. \\
+\optionLabel{indefiniteEdgeRatio}{\typ{float}}{1.6}
+& ratio of indefinite edge lengths to other edge lengths. \\
+\optionLabel{indefiniteEdge/.style}{\typ{TikZ style data}}{draw=black,fill=white,thin,densely dotted}
+& style of the dotted or dashed middle third of each indefinite edge. \\
+\optionLabel{arrows}{\typ{true or false}}{true}
+& whether to draw the arrows that arise along the edges. \\
+\optionLabel{reverseArrows}{\typ{true or false}}{true}
+& whether to reverse the direction of the arrows that arise along the edges. \\
+\optionLabel{fold}{\typ{true or false}}{true}
+& whether, when drawing Dynkin diagrams, to draw them 2-ply. \\
+\optionLabel{ply}{\typ{0,1,2,3,4}}{0}
+& how many roots get folded together, at most. \\
+\optionLabel{foldleft}{\typ{true or false}}{true}
+& whether to fold the roots on the left side of a Dynkin diagram. \\
+\optionLabel{foldright}{\typ{true or false}}{true}
+& whether to fold the roots on the right side of a Dynkin diagram. \\
+\optionLabel{foldradius}{\typ{length}}{.3cm}
+& the radius of circular arcs used in curved edges of folded Dynkin diagrams. \\
+\optionLabel{foldStyle}{\typ{TikZ style data}}{draw=black!40,fill=none,line width=radius}
+& when drawing folded diagrams, style for the fold indicators. \\
+\optionLabel{*/.style}{\typ{TikZ style data}}{draw=black,fill=black}
+& style for roots like \dynkin{A}{*} \\
+\optionLabel{o/.style}{\typ{TikZ style data}}{draw=black,fill=black}
+& style for roots like \dynkin{A}{o} \\
+\optionLabel{O/.style}{\typ{TikZ style data}}{draw=black,fill=black}
+& style for roots like \dynkin{A}{O} \\
+\optionLabel{t/.style}{\typ{TikZ style data}}{draw=black,fill=black}
+& style for roots like \dynkin{A}{t} \\
+\optionLabel{x/.style}{\typ{TikZ style data}}{draw=black}
+& style for roots like \dynkin{A}{x} \\
+\optionLabel{X/.style}{\typ{TikZ style data}}{draw=black,thick}
+& style for roots like \dynkin{A}{X} \\
+\optionLabel{leftFold/.style}{\typ{TikZ style data}}{}
+& style to override the \texttt{fold} style when folding roots together on the left half of a Dynkin diagram \\
+\optionLabel{rightFold/.style}{\typ{TikZ style data}}{}
+& style to override the \texttt{fold} style when folding roots together on the right half of a Dynkin diagram \\
+\optionLabel{doubleEdges}{\typ{}}{not set}
+& set to override the \texttt{fold} style when folding roots together in a Dynkin diagram, so that the foldings
+are indicated with double edges (like those of an \(F_4\) Dynkin diagram without arrows). \\
+\optionLabel{doubleFold}{\typ{}}{not set}
+& set to override the \texttt{fold} style when folding roots together in a Dynkin diagram, so that the foldings
+are indicated with double edges (like those of an \(F_4\) Dynkin diagram without arrows), but filled in solidly. \\
+\optionLabel{doubleLeft}{\typ{}}{not set}
+& set to override the \texttt{fold} style when folding roots together at the left side of a Dynkin diagram, so that the foldings are indicated with double edges (like those of an \(F_4\) Dynkin diagram without arrows). \\
+\optionLabel{doubleFoldLeft}{\typ{}}{not set}
+& set to override the \texttt{fold} style when folding roots together at the left side of a Dynkin diagram, so that the foldings are indicated with double edges (like those of an \(F_4\) Dynkin diagram without arrows), but filled in solidly. \\
+\optionLabel{doubleRight}{\typ{}}{not set}
+& set to override the \texttt{fold} style when folding roots together at the right side of a Dynkin diagram, so that the foldings are indicated with double edges (like those of an \(F_4\) Dynkin diagram without arrows). \\
+\optionLabel{doubleFoldRight}{\typ{}}{not set}
+& set to override the \texttt{fold} style when folding roots together at the right side of a Dynkin diagram, so that the foldings are indicated with double edges (like those of an \(F_4\) Dynkin diagram without arrows), but filled in solidly.
+\\
+\optionLabel{Coxeter}{\typ{true or false}}{false}
+& whether to draw a Coxeter diagram, rather than a Dynkin diagram. \\
+\optionLabel{ordering}{\typ{Adams, Bourbaki, Carter, Dynkin, Kac}}{Bourbaki}
+& which ordering of the roots to use in exceptional root systems as in section~\ref{section:order}. \\
+\end{longtable}
+\par\noindent{}All other options are passed to TikZ.
-Always draw roots after edges.
\nocite{*}
\bibliographystyle{amsplain}