\documentclass[final]{FPSAC2022}

\addbibresource{kreweras.bib}
\usepackage{tikz}
\usetikzlibrary{arrows}
\usetikzlibrary{decorations.markings}
\usetikzlibrary{decorations.pathmorphing}

\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{mathdots}
\usepackage{mathtools}

%\usepackage{hyperref}
%\usepackage{amsthm}
\usepackage[capitalize,noabbrev]{cleveref}

%\allowdisplaybreaks

%%%%%%%%%%%%%%%%%%%
\numberwithin{equation}{section}

\newtheorem{thm}{Theorem}[section]
\newtheorem{lemma}[thm]{Lemma}
\newtheorem{cor}[thm]{Corollary}
\newtheorem{prop}[thm]{Proposition}
\newtheorem{conj}[thm]{Conjecture}
\newtheorem{question}[thm]{Question}


\theoremstyle{definition}
\newtheorem{definition}[thm]{Definition}
\newtheorem{construction}{Construction}


\theoremstyle{remark}
\newtheorem{example}[thm]{Example}
\newtheorem{remark}[thm]{Remark}


%%%%%%%%%%%%%%%%%%%
\newcommand{\dfn}[1]{\textcolor{blue}{\emph{#1}}}

%%%%%%%%%%%%%%%%%%%%

\DeclareMathOperator{\pro}{{Pro}} %%%% promotion
\DeclareMathOperator{\evac}{{Evac}} %%%% evacuation

\DeclareMathOperator{\rot}{{Rot}} %%%% rotation of permutations/webs
\DeclareMathOperator{\rc}{{RevComp}} %%%% reverse-complementation of permutations
\DeclareMathOperator{\flip}{{Flip}} %%%% flip of webs

\newcommand{\Sym}{\mathfrak{S}} % the symmetric group

\newcommand{\M}{\mathcal{M}} % a noncrossing matching associated with a word
\newcommand{\N}{\mathcal{N}} % the matching obtained by rotation
\newcommand{\D}{\mathcal{D}} % a bump diagram associated with a word

\newcommand{\W}{\mathcal{W}} % a web

\newcommand{\A}{\mathrm{A}} % the letter A in a word
\newcommand{\B}{\mathrm{B}} % the letter B in a word
\newcommand{\C}{\mathrm{C}} % the letter C in a word

\makeatletter
% #1 is a multiplier of fontsize for the minimum diameter of the circle
% #2 is the symbol to be circled.
\newcommand*\circled[2][0.9]{\tikz[baseline=(char.base)]{
    \node[shape=circle, draw, inner sep=0pt,
        minimum height={\f@size*#1},] (char) {$\vphantom{WAH1g}#2$};}}
\makeatother

%%%%%%%%%%%%%%%%%%%


\title{Promotion of Kreweras Words}

\author[S.~Hopkins and M.~Rubey]{Sam Hopkins\thanks{\href{mailto:samuelfhopkins@gmail.com}{samuelfhopkins@gmail.com}. Supported by NSF grant \#1802920.}\addressmark{1} 
    \and
  Martin Rubey\thanks{\href{mailto:martin.rubey@tuwien.ac.at}{martin.rubey@tuwien.ac.at}. Supported by the the Austrian Science Fund (FWF): P 29275.}\addressmark{2}}

\address{\addressmark{1}Department of Mathematics, Howard University, Washington, DC, USA
\\\addressmark{2}Fakult\"{a}t f\"{u}r Mathematik und Geoinformation, TU Wien, Austria}

\keywords{Kreweras words/walks, promotion, evacuation, webs, plabic graphs}

\abstract{%
Kreweras words are words consisting of $n$ $\A$'s, $n$ $\B$'s, and $n$ $\C$'s in which every prefix has at least as many $\A$'s as $\B$'s and at least as many $\A$'s as~$\C$'s. Equivalently, a Kreweras word is a linear extension of the poset ${\sf V}\times [n]$. Kreweras words were introduced in 1965 by Kreweras, who gave a remarkable product formula for their enumeration. Subsequently they became a fundamental example in the theory of lattice walks in the quarter plane. We study Sch\"{u}tzenberger's promotion operator on the set of Kreweras words. In particular, we show that $3n$ applications of promotion on a Kreweras word merely swaps the $\B$'s and $\C$'s. Doing so, we provide the first answer to a question of Stanley from~2009, asking for posets with `good' behavior under promotion, other than the four families of shapes classified by Haiman in~1992. We also uncover a strikingly simple description of Kreweras words in terms of Kuperberg's $\mathfrak{sl}_3$-webs, and Postnikov's trip permutation associated with any plabic graph. In this description, Sch\"{u}tzenberger's promotion corresponds to rotation of the web.}

\begin{document}
\maketitle

\section{Introduction} \label{sec:intro}

In 1965, Kreweras~\cite{kreweras1965classe} considered the following version of a $3$-candidate ballot problem: in how many ways can we order the ballots of an election between three candidates~Alice, Bob, and Charlie, who each receive $n$ votes, so that during the counting Alice never trails Bob and Alice never trails Charlie -- although the relative position of Bob and Charlie may change during the counting?
These ballot orderings correspond to words of length~$3n$ in the letters~$\A$, $\B$, and~$\C$, with equally many~$\A$'s, $\B$'s, and $\C$'s, for which every prefix has at least as many~$\A$'s as~$\B$'s and also at least as many~$\A$'s as~$\C$'s.
We call such words \dfn{Kreweras words}. Kreweras proved that they are counted by the formula
\[ K_n  \coloneqq  \frac{4^n}{(n+1)(2n+1)}\binom{3n}{n}.\]

For many years Kreweras's formula seemed like an isolated enumerative curiosity, although simplified proofs were presented by Niederhausen~\cite{niederhausen1980sheffer, niederhausen1983ballot} and Kreweras--Niederhausen~\cite{kreweras1981solution} in the 1980s.
Gessel~\cite{gessel1986probabilistic} gave yet another proof which demonstrated that the generating function $\sum_{n=0}^{\infty}K_n \, x^n$ for this sequence of numbers is algebraic.
Interest in Kreweras's result was revived decades later in the context of lattice walk enumeration. Kreweras words evidently correspond to walks in $\mathbb{Z}^2$ with steps of the form $\A=(1,1)$, $\B=(-1,0)$, and $\C=(0,-1)$ from the origin to itself which always remain in the nonnegative orthant.
Such walks are called \dfn{Kreweras walks}.
Bousquet-M\'{e}lou~\cite{bousquetmelou2005walks} gave another proof of Kreweras's product formula counting Kreweras walks using the kernel method from analytic combinatorics.
Indeed, the Kreweras walks are nowadays a fundamental example in the study of ``walks with small step sizes in the quarter plane,'' a program successfully carried out over a number of years in the 2000s by Bousquet-M\'{e}lou and others (see, \textit{e.g.},~\cite{bousquetmelou2010walks}).
Finally, we note that Bernardi~\cite{bernardi2007bijective} gave a purely combinatorial proof of the product formula for the number of Kreweras walks via a bijection with (decorated) cubic maps.

We are interested in a certain cyclic group action on Kreweras words.  Let $w=(w_1,w_2,\ldots,w_{3n})$ be a Kreweras word of length $3n$. The \dfn{promotion} of~$w$, denoted $\pro(w)$, is obtained from $w$ as follows. Let $\iota(w)$ be the smallest index $\iota \geq 1$ for which the prefix $(w_1,w_2,\ldots,w_{\iota})$ has either the same number of $\A$'s as $\B$'s or the same number of $\A$'s as $\C$'s. Then
\[ \pro(w)  \coloneqq  (w_2,w_3,\ldots,w_{\iota(w)-1}, \A, w_{\iota(w)+1},  w_{\iota(w)+2}, \ldots, w_{3n}, w_{\iota(w)}).\]
It is easy to verify that $\pro(w)$ is also a Kreweras word, and that promotion is an invertible action on the set of Kreweras words.

\begin{example} \label{ex:kword_pro}
Let $w = \A \A \B \circled{\B} \C \A \C \C \B$. Here we circled the letter $w_{\iota(w)}$, and hence $\pro(w) = \A \B \A \C \A \C \C \B \B$. We can further compute that the first several iterates of promotion applied to $w$ are
\begin{align*}
\pro(w) &= \A \circled{\B} \A \C \A \C \C \B \B   & \pro^4(w) &= \A \A \C \A \B \B \circled{\B} \C \C & \pro^7(w) &= \A \circled{\B} \A \A \C \C \B \C \B \\
\pro^2(w) &= \A \A \C \A \C \circled{\C} \B \B \B & \pro^5(w) &= \A \circled{\C} \A \B \B \A \C \C \B & \pro^8(w) &= \A \A \A \C \C \B \circled{\C} \B \B \\
\pro^3(w) &= \A \circled{\C} \A \C \A \B \B \B \C & \pro^6(w) &= \A \A \B \circled{\B} \A \C \C \B \C & \pro^9(w) &= \A \A \C \C \B \A \B \B \C
\end{align*}
Note that $\pro^9(w)$ is obtained from $w$ by swapping all $\B$'s for~$\C$'s and vice-versa.
\end{example}

Our first result predicts the order of promotion on Kreweras words:

\begin{thm} \label{thm:main}
Let $w$ be a Kreweras word of length $3n$. Then $\pro^{3n}(w)$ is obtained from~$w$ by swapping all $\B$'s for $\C$'s and vice-versa. In particular, $\pro^{6n}(w)=w$.
\end{thm}

Promotion of Kreweras words comes from the theory of partially ordered sets. In a series of papers from the 60s and 70s, Sch\"{u}tzenberger~\cite{schutzenberger1963quelques, schutzenberger1972promotion, schutzenberger1973evacuations} introduced and developed the theory of a cyclic action called \dfn{promotion}, as well as a closely related involutive action called \dfn{evacuation}, on the \dfn{linear extensions} of any poset. Let $V(n)$ denote the Cartesian product of the $3$-element ``V''-shaped poset~$\begin{tikzpicture}[scale=0.3] \node[shape=circle,fill=black,inner sep=1] (B) at (-1,0) {}; \node[shape=circle,fill=black,inner sep=1] (C) at (1,0) {}; \node[shape=circle,fill=black,inner sep=1] (A) at (0,-1) {}; \draw (B)--(A); \draw (C)--(A); \end{tikzpicture}$ and the $n$-element chain $[n]$. Then, as observed by Kreweras--Niederhausen~\cite{kreweras1981solution}, there is a natural bijection between Kreweras words of length~$3n$ and linear extensions of $V(n)$, which maps promotion of Kreweras words to Sch\"{u}tzenberger's promotion of linear extensions.

Previously there were only four known (non-trivial) families of posets for which the order of promotion can be predicted: rectangles, staircases, shifted double staircases and shifted trapezoids. These were classified by Haiman in the 1990s~\cite{haiman1992dual, haiman1992characterization}. In a survey on promotion and evacuation, Stanley~\cite[Section~4, Question~3]{stanley2009promotion} asked whether there were any other families of posets for which the order of promotion is given by a simple formula. Our work shows that $V(n)$ is such an example.

\begin{figure}
\[
    \scalebox{0.72}{%
\begin{tikzpicture}[baseline=0pt]
\node (A) at (0,0) {\begin{tabular}{c c c c c c c c}$\A$ & $\A$ & $\B$ & $\A$ & $\B$ & $\circled{\B}$ & $\A$ & $\B$ \\ 1 & 2 & 3 & 4 & 5 & 6 & 7 & 8\end{tabular}};
\node (B) at (0,-5) {\begin{tabular}{c c c c c c c c}$\A$ & $\B$ & $\A$ & $\B$ & $\A$ & $\A$ & $\B$ & $\B$ \\ 1 & 2 & 3 & 4 & 5 & 6 & 7 & 8\end{tabular}};
\node at (-1,-2.5) {Promotion};
\draw [thick,->] (A)--(B);
\node (C) at (6,0) {\begin{tikzpicture}[scale=1.25]
\node (1) at (-0.3,0) {1};
\node (2) at (-0.75,-0.45) {2};
\node (3) at (-0.75,-1.05) {3};
\node (4) at (-0.3,-1.5) {4};
\node (5) at (0.3,-1.5) {5};
\node (6) at (0.75,-1.05) {6};
\node (7) at (0.75,-0.45) {7};
\node (8) at (0.3,0) {8};
\draw[ultra thick] (2) to [out=180-200, in=180-160] (3);
\draw[ultra thick] (4) to [out=180-110, in=180-70]  (5);
\draw[ultra thick] (1) to [out=180-250,in=180-20] (6);
\draw[ultra thick] (7) to [out=180-0, in=180-270] (8);
\end{tikzpicture}};
\node (D) at (6,-5) {\begin{tikzpicture}[scale=1.25]
\node (1) at (-0.3,0) {1};
\node (2) at (-0.75,-0.45) {2};
\node (3) at (-0.75,-1.05) {3};
\node (4) at (-0.3,-1.5) {4};
\node (5) at (0.3,-1.5) {5};
\node (6) at (0.75,-1.05) {6};
\node (7) at (0.75,-0.45) {7};
\node (8) at (0.3,0) {8};
\draw[ultra thick] (1) to [out=180-270,in=180-180] (2);
\draw[ultra thick] (3) to [out=180-180,in=180-90] (4);
\draw[ultra thick] (5) to [out=180-70,in=180--70] (8);
\draw[ultra thick] (6) to [out=180-20, in=180--20] (7);
\end{tikzpicture}};
\node at (7,-2.5) {Rotation};
\draw[thick,->] (C) -- (D);
\draw[thick,<->] (A) -- (C);
\draw[thick,<->] (B) -- (D);
\end{tikzpicture}%
%
%
\begin{tikzpicture}[baseline=0pt]
\node (Ax) at (0,0) {\begin{tabular}{c c c c c c c c c}$\A$ & $\A$ & $\B$ & $\circled{\B}$ & $\C$ & $\A$ & $\C$ & $\C$ & $\B$ \\ 1 & 2 & 3 & 4 & 5 & 6 & 7 & 8 & 9\end{tabular}};
\node (Bx) at (0,-5) {\begin{tabular}{c c c c c c c c c}$\A$ & $\B$ & $\A$ & $\C$ & $\A$ & $\C$ & $\C$ & $\B$ & $\B$ \\ 1 & 2 & 3 & 4 & 5 & 6 & 7 & 8 & 9\end{tabular}};
\node at (-1,-2.5) {Promotion};
\draw [thick,->] (Ax)--(Bx);
\node (Cx) at (6,0) {\begin{tikzpicture}[scale=0.4]
\draw (0,0) circle (3);
\node[label={above left:1},inner sep=0] (1) at (110:3) {};
\node[label={left:2},inner sep=0] (2) at (150:3) {};
\node[label={left:3},inner sep=0] (3) at (190:3) {};
\node[label={below left:4},inner sep=0] (4) at (230:3) {};
\node[label={below:5},inner sep=0] (5) at (270:3) {};
\node[label={below right:6},inner sep=0] (6) at (310:3) {};
\node[label={right:7},inner sep=0] (7) at (350:3) {};
\node[label={right:8},inner sep=0] (8) at (390:3) {};
\node[label={above right:9},inner sep=0] (9) at (430:3) {};
\node[inner sep=0] (A) at (170:2) {};
\node[inner sep=0] (B) at (250:2) {};
\node[inner sep=0] (C) at (330:2) {};
\node[inner sep=0] (D) at (410:2) {};
\node[inner sep=0] (E) at (110:2) {};
\node[inner sep=0] (F) at (210:0.75) {};
\node[inner sep=0] (G) at (370:0.75) {};
\draw[thick] (1)--(E)--(F)--(E)--(G);
\draw[thick] (2)--(A)--(F)--(A)--(3);
\draw[thick] (4)--(B)--(F)--(B)--(5);
\draw[thick] (6)--(C)--(G)--(C)--(7);
\draw[thick] (8)--(D)--(G)--(D)--(9);
\draw[thick,draw=black,fill=white]  (1) circle (4pt);
\draw[thick,draw=black,fill=white]  (2) circle (4pt);
\draw[thick,draw=black,fill=white]  (3) circle (4pt);
\draw[thick,draw=black,fill=white]  (4) circle (4pt);
\draw[thick,draw=black,fill=white]  (5) circle (4pt);
\draw[thick,draw=black,fill=white]  (6) circle (4pt);
\draw[thick,draw=black,fill=white]  (7) circle (4pt);
\draw[thick,draw=black,fill=white]  (8) circle (4pt);
\draw[thick,draw=black,fill=white]  (9) circle (4pt);
\draw[thick,draw=black,fill=black]  (A) circle (4pt);
\draw[thick,draw=black,fill=black]  (B) circle (4pt);
\draw[thick,draw=black,fill=black]  (C) circle (4pt);
\draw[thick,draw=black,fill=black]  (D) circle (4pt);
\draw[thick,draw=black,fill=black]  (E) circle (4pt);
\draw[thick,draw=black,fill=white]  (F) circle (4pt);
\draw[thick,draw=black,fill=white]  (G) circle (4pt);
\end{tikzpicture}};
\node (Dx) at (6,-5) {\begin{tikzpicture}[scale=0.4]
\draw (0,0) circle (3);
\node[label={above right:9},inner sep=0] (1) at (70:3) {};
\node[label={above left:1},inner sep=0] (2) at (110:3) {};
\node[label={left:2},inner sep=0] (3) at (150:3) {};
\node[label={left:3},inner sep=0] (4) at (190:3) {};
\node[label={below left:4},inner sep=0] (5) at (230:3) {};
\node[label={below:5},inner sep=0] (6) at (270:3) {};
\node[label={below right:6},inner sep=0] (7) at (310:3) {};
\node[label={right:7},inner sep=0] (8) at (350:3) {};
\node[label={right:8},inner sep=0] (9) at (390:3) {};
\node[inner sep=0] (A) at (130:2) {};
\node[inner sep=0] (B) at (210:2) {};
\node[inner sep=0] (C) at (290:2) {};
\node[inner sep=0] (D) at (370:2) {};
\node[inner sep=0] (E) at (70:2) {};
\node[inner sep=0] (F) at (170:0.75) {};
\node[inner sep=0] (G) at (330:0.75) {};
\draw[thick] (1)--(E)--(F)--(E)--(G);
\draw[thick] (2)--(A)--(F)--(A)--(3);
\draw[thick] (4)--(B)--(F)--(B)--(5);
\draw[thick] (6)--(C)--(G)--(C)--(7);
\draw[thick] (8)--(D)--(G)--(D)--(9);
\draw[thick,draw=black,fill=white]  (1) circle (4pt);
\draw[thick,draw=black,fill=white]  (2) circle (4pt);
\draw[thick,draw=black,fill=white]  (3) circle (4pt);
\draw[thick,draw=black,fill=white]  (4) circle (4pt);
\draw[thick,draw=black,fill=white]  (5) circle (4pt);
\draw[thick,draw=black,fill=white]  (6) circle (4pt);
\draw[thick,draw=black,fill=white]  (7) circle (4pt);
\draw[thick,draw=black,fill=white]  (8) circle (4pt);
\draw[thick,draw=black,fill=white]  (9) circle (4pt);
\draw[thick,draw=black,fill=black]  (A) circle (4pt);
\draw[thick,draw=black,fill=black]  (B) circle (4pt);
\draw[thick,draw=black,fill=black]  (C) circle (4pt);
\draw[thick,draw=black,fill=black]  (D) circle (4pt);
\draw[thick,draw=black,fill=black]  (E) circle (4pt);
\draw[thick,draw=black,fill=white]  (F) circle (4pt);
\draw[thick,draw=black,fill=white]  (G) circle (4pt);
\end{tikzpicture}};
\node at (7,-2.5) {Rotation};
\draw[thick,->] (Cx) -- (Dx);
\draw[thick,->] (Ax) -- (Cx);
\draw[thick,->] (Bx) -- (Dx);
\end{tikzpicture}
}
\]
\caption{Promotion of Dyck words as rotation of noncrossing matchings
  (top) and promotion of Kreweras words as rotation of webs
  (bottom).} \label{fig:web-rotation}
\end{figure}
Dyck words of length $2n$ correspond to linear extensions of $[2]\times [n]$, and hence carry an action of promotion. \Cref{fig:web-rotation} (top) depicts a well-known bijection between Dyck words of length~$2n$ and noncrossing matchings of~$[2n]  \coloneqq  \{1,2,\ldots,2n\}$, and shows how under this bijection promotion of Dyck words corresponds to rotation of noncrossing matchings (this was first observed by Dennis White: see~\cite[Section~8]{rhoades2010cyclic}). This observation immediately implies that $\pro^{2n}(w)=w$ for $w$ a Dyck word of length~$2n$.

Our proof of \cref{thm:main} is also essentially based on a diagrammatic representation of Kreweras words for which promotion corresponds to rotation; see~\cref{fig:web-rotation} (bottom). However, these diagrams are not coming from Bernardi's cubic map bijection. Instead, they are related to Kuperberg's webs.

\dfn{Webs} are certain trivalent bipartite planar graphs which Kuperberg~\cite{kuperberg1996spiders} introduced in order to study the invariant theory of Lie algebras. Khovanov and Kuperberg~\cite{khovanov1999web} showed that a particular class of webs (namely, irreducible $\mathfrak{sl}_3$-webs with $3n$ white boundary vertices) are in bijection with linear extensions of $[3]\times [n]$. Petersen, Pylyavskyy, and Rhoades~\cite{petersen2009promotion} (see also Tymoczko~\cite{tymoczko2012simple}) showed that, via the Khovanov-Kuperberg bijection, rotation of webs corresponds to promotion of linear extensions.

We say that $\W$ is a \dfn{Kreweras web} if $\W$ is an irreducible $\mathfrak{sl}_3$-web with all boundary vertices white and having no internal face with a multiple of four sides.  We define a surjective map $w \mapsto \W_w$ from Kreweras words to Kreweras webs.  This map behaves well with respect to  Sch\"{u}tzenberger's operators:

\begin{thm} \label{thm:intro_web}
Let $w$ be a Kreweras word. Then,
\[
  \W_{\pro(w)} = \rot(\W_{w})\quad\text{and}\quad\W_{\evac(w)} = \flip(\W_{w}),
\]
where $\rot$ denotes the rotation of a web and $\flip$ its reflection across a diameter.
\end{thm}

The map between Kreweras words and Kreweras webs can be made bijective by keeping track of a certain $3$-edge-coloring of the web. We then obtain the following enumerative corollaries.

\begin{thm} \label{thm:weighted_kreweras_web_count}
We have
\[ \sum_{\W} 2^{\kappa(\W)} = K_n = \frac{4^n}{(n+1)(2n+1)}\binom{3n}{n}  \qquad \text{\cite[A006335]{OEIS}},  \]
where the sum is over all Kreweras webs $\W$ with $3n$ boundary vertices, and $\kappa(\W)$ is the number of connected components of $\W$. Moreover, the number of \emph{connected} Kreweras webs $\W$ with $3n$ boundary vertices is
\[ 2^{n} \, \frac{(4n-3)!}{(3n-1)!n!}  \qquad \text{\cite[A000260]{OEIS}}.\]
\end{thm}

A curious feature of our work not present in any previous work we are aware of is the use of \dfn{trip permutations}, in the sense of Postnikov's theory of \dfn{plabic graphs}~\cite{postnikov2006total}, to study webs.

This is an extended abstract based on \cite{MR4346507}.

\acknowledgements{
S.H. thanks Ira Gessel, whose answer to a MathOverflow question of his~\cite{gessel2019MO} made him aware of the paper~\cite{kreweras1981solution} and the poset $V(n)$, and thus initiated this research.
}


\section{The order of promotion} \label{sec:proof}

In this section we indicate how to prove \cref{thm:main}.  Throughout, $w$ is a Kreweras word of length $3n$.  Moreover, we adopt the notational convention $-\B: = \C$ and $-\C  \coloneqq  \B$.

Our strategy is to associate to each Kreweras word a permutation, such that promotion of the Kreweras word corresponds to rotation of the permutation.

\begin{definition}
For a permutation $\sigma \in \Sym_{m}$, the \dfn{rotation} of $\sigma$, denoted $\rot(\sigma)$, is the (right) conjugation of $\sigma$ by the \dfn{long cycle} $(1,2,\ldots,m) \in \Sym_{m}$; \textit{i.e.},
\[\rot(\sigma)  \coloneqq  (1,2,\ldots,m)^{-1} \circ \sigma \circ (1,2,\ldots,m).\]
Rotation of a permutation as defined above can be visualized as the rotation of its functional digraph, placing its vertices on a circle in counterclockwise order.
\end{definition}

We first associate a diagram to a Kreweras word, which we will then use to obtain the desired permutation. 
\begin{definition}
  An \dfn{arc} is a pair $(i,j)$ of positive integers with $i < j$.  A~\dfn{crossing} is a set $\{(i,j),(k,\ell)\}$ of two arcs such that $i\leq k < j < \ell$.
\end{definition}

Note that this definition slightly deviates from the usual notion, in that the arcs~$(i,j)$ and~$(i,\ell)$ form a crossing for $j < \ell$. However, this modification is only relevant when considering Kreweras bump diagrams, defined below.

A Kreweras word can be thought of as two overlapping Dyck words, and hence has two noncrossing matchings naturally associated to it, see below. As we explain next, the diagram for a Kreweras word is essentially the union of these two noncrossing matchings.

\begin{definition}
Let $\varepsilon \in \{\textrm{$\B$},\textrm{$\C$}\}$. We use~$\M^\varepsilon_w$ to denote the noncrossing matching of $\{i\in [3n]\colon w_i\neq -\varepsilon\}$ whose set of openers is~$\{i\in [3n]\colon w_i=\textrm{$\A$}\}$ and whose set of closers is~$\{i\in [3n]\colon w_i=\varepsilon\}$.

The \dfn{Kreweras bump diagram} $\D_w$ of $w$ is obtained by placing the numbers $1,\ldots,3n$ in this order on a line, and drawing a semicircle above the line connecting $i$ and $j$ for each arc~$(i, j)\in \M^{B}_w \cup \M^{C}_w$.  The arc is solid {\bf b}lue if~$(i,j)\in\M^{B}_w$ and dashed {\bf c}rimson (\textit{i.e.},~red) if~$(i,j) \in \M^{C}_w$. The arcs are drawn in such a fashion that only pairs of arcs which form a crossing intersect, and any two arcs intersect at most once.
\end{definition}

\begin{example} \label{ex:bump_diagram}
As in \cref{ex:kword_pro}, let $w = \A \A \B \B \C \A \C \C \B$. The two noncrossing matchings $\M^B_w$ and $\M^C_w$, drawn as arc diagrams, are
\begin{center}
  \vspace{-12pt}
\begin{tikzpicture}[baseline=(L.base),scale=0.85]
\def \x {0.7};
\node (L) at (-1*\x,0) {$\M^B_w=$};
\node (1) at (1*\x,0) {1};
\node (2) at (2*\x,0) {2};
\node (3) at (3*\x,0) {3};
\node (4) at (4*\x,0) {4};
\node (5) at (5*\x,0) {5};
\node (6) at (6*\x,0) {6};
\node (7) at (7*\x,0) {7};
\node (8) at (8*\x,0) {8};
\node (9) at (9*\x,0) {9};
\node at (1*\x,-0.55*\x) {$\A$};
\node at (2*\x,-0.55*\x) {$\A$};
\node at (3*\x,-0.55*\x) {$\B$};
\node at (4*\x,-0.55*\x) {$\B$};
\node at (5*\x,-0.55*\x) {$\C$};
\node at (6*\x,-0.55*\x) {$\A$};
\node at (7*\x,-0.55*\x) {$\C$};
\node at (8*\x,-0.55*\x) {$\C$};
\node at (9*\x,-0.55*\x) {$\B$};
\draw [ultra thick, blue] (1) to [out=90, in=90] (4);
\draw [ultra thick, blue] (2) to [out=90, in=90] (3);
\draw [ultra thick, blue] (6) to [out=90, in=90] (9);
\end{tikzpicture}
and
\begin{tikzpicture}[baseline=(L.base),scale=0.85]
\def \x {0.7};
\node (L) at (-1*\x,0) {$\M^C_w=$};
\node (1) at (1*\x,0) {1};
\node (2) at (2*\x,0) {2};
\node (3) at (3*\x,0) {3};
\node (4) at (4*\x,0) {4};
\node (5) at (5*\x,0) {5};
\node (6) at (6*\x,0) {6};
\node (7) at (7*\x,0) {7};
\node (8) at (8*\x,0) {8};
\node (9) at (9*\x,0) {9};
\node at (1*\x,-0.55*\x) {$\A$};
\node at (2*\x,-0.55*\x) {$\A$};
\node at (3*\x,-0.55*\x) {$\B$};
\node at (4*\x,-0.55*\x) {$\B$};
\node at (5*\x,-0.55*\x) {$\C$};
\node at (6*\x,-0.55*\x) {$\A$};
\node at (7*\x,-0.55*\x) {$\C$};
\node at (8*\x,-0.55*\x) {$\C$};
\node at (9*\x,-0.55*\x) {$\B$};
\draw [ultra thick, red, dashed] (1) to [out=90, in=90] (8);
\draw [ultra thick, red, dashed] (2) to [out=90, in=90] (5);
\draw [ultra thick, red, dashed] (6) to [out=90, in=90] (7);
\end{tikzpicture}
\end{center}
The Kreweras bump diagram $\D_w$ is obtained by placing these two arc diagrams on top of one another:
\begin{center}
  \vspace{-12pt}
\begin{tikzpicture}[scale=0.85]
\def \x {0.7};
\node at (-1*\x,0) {$\D_w=$};
\node (1) at (1*\x,0) {1};
\node (2) at (2*\x,0) {2};
\node (3) at (3*\x,0) {3};
\node (4) at (4*\x,0) {4};
\node (5) at (5*\x,0) {5};
\node (6) at (6*\x,0) {6};
\node (7) at (7*\x,0) {7};
\node (8) at (8*\x,0) {8};
\node (9) at (9*\x,0) {9};
\node at (1*\x,-0.55*\x) {$\A$};
\node at (2*\x,-0.55*\x) {$\A$};
\node at (3*\x,-0.55*\x) {$\B$};
\node at (4*\x,-0.55*\x) {$\B$};
\node at (5*\x,-0.55*\x) {$\C$};
\node at (6*\x,-0.55*\x) {$\A$};
\node at (7*\x,-0.55*\x) {$\C$};
\node at (8*\x,-0.55*\x) {$\C$};
\node at (9*\x,-0.55*\x) {$\B$};
\draw [ultra thick,blue] (1) to [out=90, in=90] (4);
\draw [ultra thick,blue] (2) to [out=90, in=90] (3);
\draw [ultra thick,blue] (6) to [out=90, in=90] (9);
\draw [ultra thick,red,dashed] (1) to [out=90, in=90] (8);
\draw [ultra thick,red,dashed] (2) to [out=90, in=90] (5);
\draw [ultra thick,red,dashed] (6) to [out=90, in=90] (7);
\end{tikzpicture}
\end{center}
\end{example}

We now explain how to extract the permutation $\sigma_w \in \Sym_{3n}$ from $\D_w$.
\begin{figure}
\[
\begin{tikzpicture}[scale=1.3,baseline=0]
\node at (-1,1){(a)};
\tikzset{->-/.style={decoration={ markings, mark=at position 0.25 with {\arrow{>}}},postaction={decorate}}};
\draw [thin,blue] (0,0) to [out=70, in=180] (1,1);
\draw [thin,red,dashed] (-0.5,0) to [out=90, in=180] (1,0.5);
\filldraw[black] (0.25,0.5) circle (1.5pt);
\draw [thick,->-,->] (-0.7,0.1) to [out=90, in=180] (1,0.58);
\draw [thick,->-,->] (1,1.2) to [out=180, in=70] (-0.05,0.1);
\draw [thick,->-,->] (1.1,0.7) to [out=180, in=0] (0.3,0.7) to [out=60, in=180] (1.1,1.1);
\draw [thick,->-,->] (-0.25,0.1) to [out=55,in=180+60] (0,0.5) to [out=180,in=90] (-0.6,0.1) ;
\end{tikzpicture}  \qquad  \qquad \qquad \begin{tikzpicture}[scale=1.35]
\node at (-0.5,1){(b)};
\tikzset{->-/.style={decoration={ markings, mark=at position 0.25 with {\arrow{>}}},postaction={decorate}}};
\draw [thin,blue] (0,0) to [out=70, in=170] (1,0.35);
\draw [thin,red,dashed] (0,0) to [out=90, in=190] (1,0.8);
\filldraw[black] (0,0) circle (1.5pt);
\draw [thick,->-,->] (0.15,0) to [out=70, in=180] (1,0.2);
\draw [thick,->-,->] (1,0.9) to [out=180, in=90] (-0.15,0);
\draw [thick,->-,->] (1,0.45) to [out=170, in=10] (0.25,0.4) to [out=45,in=180+15] (1,0.7);
\end{tikzpicture}
\]
\caption{The rules of the road when taking a trip in a Kreweras bump diagram: (a) depicts what happens at an internal crossing, and (b) depicts what happens at a boundary crossing. Note that the colors of the arcs in the crossing are irrelevant. } \label{fig:rules_road}
\end{figure}

\begin{definition} \label{def:trip_perm}
The \dfn{trip permutation} $\sigma_w \in \Sym_{3n}$ of $w$ is defined as follows. For each $i\in\{1,\ldots,3n\}$, we define  $\sigma_w(i)$ by taking a \dfn{trip in $\D_w$ starting at $i$}, as we now describe. If $i$ is a closer of $\M^B_w\cup\M^C_w$, then we start our trip by walking from~$i$ towards $i'$ along the unique arc $(i',i)$ incident to~$i$; if $i$ is an opener of $\M^B_w\cup\M^C_w$, then we start our trip by walking from $i$ towards $i'$ along the arc $(i,i')$ incident to~$i$ with the smallest value of~$i'$. We continue walking until we encounter a crossing. Whenever we encounter a crossing of arcs, we follow the \dfn{rules of the road} as depicted in \cref{fig:rules_road}. Finally, if $j$ is the terminal vertex of the trip, we set $\sigma_w(i)  \coloneqq  j$.
\end{definition}

\begin{example} \label{ex:trip_permutation}
As in \cref{ex:bump_diagram}, let $w = \A \A \B \B \C \A \C \C \B$.
Let us compute $\sigma_w(1)$. We start by walking along the arc~$(1,4)$ from $1$ towards~$4$.  We encounter the crossing $\{(1,4),(2,5)\}$, and following the first rule we continue towards $4$, where we terminate. Thus, $\sigma_w(1)=4$.  This trip looks pictorially as follows:
\begin{center}
\begin{tikzpicture}[scale=0.85]
\tikzset{->-/.style={decoration={ markings, mark=at position 0.6 with {\arrow{>}}},postaction={decorate}}};
\def \x {0.7};
\node at (-1*\x,0) {$\D_w=$};
\node (1) at (1*\x,0) {1};
\node (2) at (2*\x,0) {2};
\node (3) at (3*\x,0) {3};
\node (4) at (4*\x,0) {4};
\node (5) at (5*\x,0) {5};
\node (6) at (6*\x,0) {6};
\node (7) at (7*\x,0) {7};
\node (8) at (8*\x,0) {8};
\node (9) at (9*\x,0) {9};
\node at (1*\x,-0.55*\x) {$\A$};
\node at (2*\x,-0.55*\x) {$\A$};
\node at (3*\x,-0.55*\x) {$\B$};
\node at (4*\x,-0.55*\x) {$\B$};
\node at (5*\x,-0.55*\x) {$\C$};
\node at (6*\x,-0.55*\x) {$\A$};
\node at (7*\x,-0.55*\x) {$\C$};
\node at (8*\x,-0.55*\x) {$\C$};
\node at (9*\x,-0.55*\x) {$\B$};
\draw [thin,blue] (1) to [out=90, in=90] (4);
\draw [thin,blue] (2) to [out=90, in=90] (3);
\draw [thin,blue] (6) to [out=90, in=90] (9);
\draw [thin,red,dashed] (1) to [out=90, in=90] (8);
\draw [thin,red,dashed] (2) to [out=90, in=90] (5);
\draw [thin,red,dashed] (6) to [out=90, in=90] (7);
\draw [ultra thick, ->-] (1) to [out=90, in=90] (4);
\end{tikzpicture}
\end{center}

As a second example, let us compute $\sigma_w(3)$. We start by walking along the arc~$(2,3)$ from $3$ towards~$2$.  As we encounter the boundary crossing $\{(2,3),(2,5)\}$ we turn right, and continue along the arc $(2,5)$ from $2$ towards~$5$.  Then we encounter the crossing $\{(1,4),(2,5)\}$ and turn left, and continue along the arc $(1,4)$ from $4$ towards $1$.  At the boundary crossing $\{(1,4),(1,8)\}$ we turn right, and continue along the arc $(1,8)$ from $1$ towards $8$.  Next we encounter the crossing $\{(1,8),(6,9)\}$, but continue straight along the arc $(1,8)$ from $1$ towards $8$, where we terminate. Thus, $\sigma_w(3) = 8$.
\begin{center}
\begin{tikzpicture}[scale=0.85]
\tikzset{->-/.style={decoration={ markings, mark=at position 0.6 with {\arrow{>}}},postaction={decorate}}};
\def \x {0.7};
\node at (-1*\x,0) {$\D_w=$};
\node (1) at (1*\x,0) {1};
\node (2) at (2*\x,0) {2};
\node (3) at (3*\x,0) {3};
\node (4) at (4*\x,0) {4};
\node (5) at (5*\x,0) {5};
\node (6) at (6*\x,0) {6};
\node (7) at (7*\x,0) {7};
\node (8) at (8*\x,0) {8};
\node (9) at (9*\x,0) {9};
\node at (1*\x,-0.55*\x) {$\A$};
\node at (2*\x,-0.55*\x) {$\A$};
\node at (3*\x,-0.55*\x) {$\B$};
\node at (4*\x,-0.55*\x) {$\B$};
\node at (5*\x,-0.55*\x) {$\C$};
\node at (6*\x,-0.55*\x) {$\A$};
\node at (7*\x,-0.55*\x) {$\C$};
\node at (8*\x,-0.55*\x) {$\C$};
\node at (9*\x,-0.55*\x) {$\B$};
\draw [thin,blue] (1) to [out=90, in=90] (4);
\draw [thin,blue] (2) to [out=90, in=90] (3);
\draw [thin,blue] (6) to [out=90, in=90] (9);
\draw [thin,red,dashed] (1) to [out=90, in=90] (8);
\draw [thin,red,dashed] (2) to [out=90, in=90] (5);
\draw [thin,red,dashed] (6) to [out=90, in=90] (7);
\draw [ultra thick, ->-] (3)  to [out=90, in=90]  (2);
\draw [ultra thick, ->-] (2)  to [out=90, in=190]  (3*\x,1.25*\x);
\draw [ultra thick, ->-] (3*\x,1.25*\x) to [out=170, in=90]  (1);
\draw [ultra thick, ->-] (1) to [out=90, in=90]  (8);
\end{tikzpicture}
\end{center}
We could further compute $[\sigma_w(1),\ldots,\sigma_w(9)] = [4,3,8,5,2,7,1,9,6]$.
\end{example}

\begin{prop} \label{prop:basic_perm_props}
\begin{enumerate}
\item \label{item:sigma_perm} \Cref{def:trip_perm} yields a permutation $\sigma_w \in \Sym_{3n}$.
\item \label{item:no_double_descents} Let $1 \leq i \leq 3n$ with $w_i=\A$. Then $w_{\sigma_w(i)} \in \{\B,\C\}$.
\item \label{item:signs_flip} Let $1 \leq i \leq 3n$ with $w_i \in \{\B,\C\}$. Then either $w_{\sigma_w(i)}=-w_i$, or $w_{\sigma_w(i)}=\A$ and  $w_{\sigma_w(\sigma_w(i))}=-w_i$.
\item \label{item:anti_exceedances} $\{i \in [3n]\colon w_i = \A\} = \{i\in [3n]\colon \sigma_w^{-1}(i) > i\}$ and 
$\{i \in [3n]\colon \textrm{$w_i = \B$ or $w_i=\C$} \} = \{i\in [3n]\colon \sigma_w^{-1}(i) < i\}$.
In particular, $\sigma_w$ has no fixed points.
\end{enumerate}
\end{prop}


The permutation $\sigma_w$ does not quite determine the Kreweras word $w$. For example, if~$w'$ is obtained from $w$ by swapping all $\B$'s for $\C$'s and vice-versa, then clearly we have $\sigma_w = \sigma_{w'}$. To determine a Kreweras word uniquely, we define the map $\varepsilon_w\colon \{1,\ldots,3n\} \to \{\B, \C\}$ by setting
\[ \varepsilon_w(i)  \coloneqq  \begin{cases} w_{\sigma_w(i)} &\textrm{if $w_{\sigma_w(i)}\neq \A$}; \\ w_{\sigma_w(\sigma_w(i))} &\textrm{if $w_{\sigma_w(i)}=\A$}, \\ \end{cases}\]
for all $1 \leq i \leq 3n$. \cref{prop:basic_perm_props}~\eqref{item:no_double_descents} guarantees that $\varepsilon_w(i)\in \{\B, \C\}$. As a shorthand we write $\varepsilon_w=[\varepsilon_w(1),\ldots,\varepsilon_w(3n)]$. By \cref{prop:basic_perm_props}~\eqref{item:anti_exceedances}, the pair $(\sigma_w,\varepsilon_w)$ determines $w$.

\begin{cor} \label{cor:perm_epsilon_determine_kword}
For any Kreweras word $w$ of length $3n$, and all $1 \leq i \leq 3n$, we have
\[ w_i = \begin{cases} \A &\textrm{if $\sigma_w^{-1}(i) > i$}; \\ \varepsilon_w(\sigma_w^{-1}(i)) &\textrm{otherwise}. \end{cases}\]
\end{cor}

The key lemma in the proof of our main result says that~$\sigma_w$ and $\varepsilon_w$ evolve in a simple way under promotion.
\begin{lemma} \label{lem:key} $\sigma_{\pro(w)} = \rot(\sigma_w)$ and
  $\varepsilon_{\pro(w)} =
  [\varepsilon_w(2),\varepsilon_w(3),\ldots,\varepsilon_w(3n),
  -\varepsilon_w(1)]$.
\end{lemma}

\Cref{thm:main} is an immediate consequence of \Cref{cor:perm_epsilon_determine_kword} and \Cref{lem:key}.

\begin{example} \label{ex:key_lem}
As in \cref{ex:trip_permutation}, let $w = \A \A \B \B \C \A \C \C \B$. We saw above that $\sigma_w = [4,3,8,5,2,7,1,9,6]$. We also have $\varepsilon_w=[\B, \B, \C, \C, \B, \C, \B, \B, \C]$.

As we saw in \cref{ex:kword_pro}, $\pro(w) = \A \B \A \C \A \C \C \B \B$. Its associated bump diagram is
\begin{center}
\begin{tikzpicture}[scale=0.85]
\def \x {0.7};
\node at (-1*\x,0) {$\D_{\pro(w)}=$};
\node (1) at (1*\x,0) {1};
\node (2) at (2*\x,0) {2};
\node (3) at (3*\x,0) {3};
\node (4) at (4*\x,0) {4};
\node (5) at (5*\x,0) {5};
\node (6) at (6*\x,0) {6};
\node (7) at (7*\x,0) {7};
\node (8) at (8*\x,0) {8};
\node (9) at (9*\x,0) {9};
\node at (1*\x,-0.55*\x) {$\A$};
\node at (2*\x,-0.55*\x) {$\B$};
\node at (3*\x,-0.55*\x) {$\A$};
\node at (4*\x,-0.55*\x) {$\C$};
\node at (5*\x,-0.55*\x) {$\A$};
\node at (6*\x,-0.55*\x) {$\C$};
\node at (7*\x,-0.55*\x) {$\C$};
\node at (8*\x,-0.55*\x) {$\B$};
\node at (9*\x,-0.55*\x) {$\B$};
\draw [ultra thick,blue] (1) to [out=90, in=90] (2);
\draw [ultra thick,blue] (3) to [out=90, in=90] (9);
\draw [ultra thick,blue] (5) to [out=90, in=90] (8);
\draw [ultra thick,red,dashed] (1) to [out=90, in=90] (7);
\draw [ultra thick,red,dashed] (3) to [out=90, in=90] (4);
\draw [ultra thick,red,dashed] (5) to [out=90, in=90] (6);
\end{tikzpicture}
\end{center}
From the diagram $\D_{\pro(w)}$ one could compute that $\sigma_{\pro(w)}=[2, 7, 4, 1, 6, 9, 8, 5, 3]$ and $\varepsilon_{\pro(w)}=[\B, \C, \C, \B, \C, \B, \B, \C, \C]$, in agreement with \cref{lem:key}.
\end{example}
\section{Webs} \label{sec:webs}

We now reinterpret the results from the previous section in the language of \dfn{webs}. We recall the notion of an $\mathfrak{sl}_3$-web, which is due to Kuperberg~\cite{kuperberg1996spiders}:

\begin{definition}
An \dfn{$\mathfrak{sl}_3$-web} $\W$ is a planar graph, embedded in a disk, with \dfn{boundary vertices} labeled $1,2,\ldots,m$ arranged on the rim of the disk in counterclockwise order, and any number of (unlabeled) \dfn{internal vertices} such that
\begin{itemize}
\item $\W$ is \dfn{trivalent}: all the boundary vertices have degree one, while all the internal vertices have degree three;
\item $\W$ is \dfn{bipartite}: the vertices (both boundary and internal) are colored white and black, with edges only between oppositely colored vertices.
\end{itemize}
We call the face of $\W$ containing the boundary vertices the \dfn{outer face}, and all other faces \dfn{internal}. We say that $\W$ is \dfn{irreducible} (or \dfn{non-elliptic}) if it has no internal faces with fewer than $6$ sides.
\end{definition}

We will now explain how to convert a Kreweras bump diagram of a Kreweras word into a web by ``breaking apart'' its crossings.

\begin{figure}[b]
\[
\begin{tikzpicture}[scale=1,baseline=0]
\node at (-1,1){(a)};
\tikzset{->-/.style={decoration={ markings, mark=at position 0.25 with {\arrow{>}}},postaction={decorate}}};
\tikzset{snake it/.style={decorate, decoration=snake}};
\draw [ultra thick,blue] (0,0) to [out=70, in=180] (1,1);
\draw [ultra thick,red,dashed] (-0.5,0) to [out=90, in=180] (1,0.5);
\filldraw[thick, black] (0.25,0.5) circle (2pt);
\node at (1.65,0.5){\Huge $\to$};
\draw [ultra thick,blue] (2.5,0) to [out=70, in=180+30] (2.75,0.5);
\draw [ultra thick,red,dashed] (2,0) to [out=90, in=180-10] (2.75,0.5);
\draw [ultra thick,green, snake it] (2.75,0.5) to (3.25,1.0);
\draw [ultra thick,blue] (3.25,1.0) to [out=50, in=180] (4,1.5);
\draw [ultra thick,red,dashed] (3.25,1.0) to [out=10, in=180] (4,1);
\draw[thick,draw=black,fill=white] (2.75,0.5) circle (2pt);
\draw[thick,draw=black,fill=black] (3.25,1.0) circle (2pt);
\end{tikzpicture}  \quad \quad \begin{tikzpicture}[scale=1]
\node at (-0.5,1){(b)};
\tikzset{->-/.style={decoration={ markings, mark=at position 0.25 with {\arrow{>}}},postaction={decorate}}};
\tikzset{snake it/.style={decorate, decoration=snake}};
\draw [ultra thick,blue] (0,0) to [out=70, in=170] (1,0.35);
\draw [ultra thick,red,dashed] (0,0) to [out=90, in=190] (1,0.8);
\filldraw[black] (0,0) circle (2pt);
\node at (1.65,0.5){\Huge $\to$};
\draw [ultra thick,blue] (2.5,0.5) to [out=70, in=170] (3.5,0.85);
\draw [ultra thick,red,dashed] (2.5,0.5) to [out=90, in=190] (3.5,1.3);
\draw [ultra thick,green, snake it] (2,0) to (2.5,0.5);
\draw[thick,draw=black,fill=white]  (2,0) circle (2pt);
\draw[thick,draw=black,fill=black]  (2.5,0.5) circle (2pt);
\end{tikzpicture}
\]
\caption{Breaking apart the crossings in a Kreweras bump diagram to obtain a web. In (a) we show what happens at an internal crossing, and in (b) we show what happens at a boundary crossing.} \label{fig:bump_to_web}
\end{figure}

\begin{construction}\label{construction:breaking-apart}
We obtain a planar graph $\W_w$, embedded into a disk, together with a $3$-coloring $c_w$ of its edges as follows.

We replace each crossing of two arcs in $\D_w$ with a pair of a vertices, one white and one black, joined by a wavy {\bf a}vocado (\textit{i.e.}~green) edge, as in \cref{fig:bump_to_web}.
The white vertex in this pair is ``to the left'' of the black vertex, that is, closer to the openers of $\D_w$.
We color all vertices of degree one in the resulting graph, corresponding to the openers and closers of $\D_w$, white, and keep the labels of these vertices.
Finally, the color of the non-avocado edges of $\W_w$ is inherited from $\D_w$.
\end{construction}

\begin{example} \label{ex:web}
  Let $w = \A \A \B \B \C \A \C \C \B$. 
  In the following table, the Kreweras bump diagram $\D_w$ of $w$ is depicted on the left, the $3$-edge-colored web obtained by breaking apart the crossings of $\D_w$ is depicted in the middle and the web $\W_w$ obtained by forgetting the $3$-edge-coloring and drawing the graph embedded in a disk, is depicted on the right.
  \[
    \begin{array}{ccc}
\begin{tikzpicture}[baseline=0pt,scale=0.85]
\def \x {0.7};
\node (1) at (1*\x,0) {1};
\node (2) at (2*\x,0) {2};
\node (3) at (3*\x,0) {3};
\node (4) at (4*\x,0) {4};
\node (5) at (5*\x,0) {5};
\node (6) at (6*\x,0) {6};
\node (7) at (7*\x,0) {7};
\node (8) at (8*\x,0) {8};
\node (9) at (9*\x,0) {9};
\node at (1*\x,-0.55*\x) {$\A$};
\node at (2*\x,-0.55*\x) {$\A$};
\node at (3*\x,-0.55*\x) {$\B$};
\node at (4*\x,-0.55*\x) {$\B$};
\node at (5*\x,-0.55*\x) {$\C$};
\node at (6*\x,-0.55*\x) {$\A$};
\node at (7*\x,-0.55*\x) {$\C$};
\node at (8*\x,-0.55*\x) {$\C$};
\node at (9*\x,-0.55*\x) {$\B$};
\draw [ultra thick,blue] (1) to [out=90, in=90] (4);
\draw [ultra thick,blue] (2) to [out=90, in=90] (3);
\draw [ultra thick,blue] (6) to [out=90, in=90] (9);
\draw [ultra thick,red,dashed] (1) to [out=90, in=90] (8);
\draw [ultra thick,red,dashed] (2) to [out=90, in=90] (5);
\draw [ultra thick,red,dashed] (6) to [out=90, in=90] (7);
\end{tikzpicture}
      &
\begin{tikzpicture}[baseline=0pt,scale=0.85]
\tikzset{snake it/.style={decorate, decoration=snake}};
\def \x {0.7};
\node (1) at (1*\x,0) {1};
\node (2) at (2*\x,0) {2};
\node (3) at (3*\x,0) {3};
\node (4) at (4*\x,0) {4};
\node (5) at (5*\x,0) {5};
\node (6) at (6*\x,0) {6};
\node (7) at (7*\x,0) {7};
\node (8) at (8*\x,0) {8};
\node (9) at (9*\x,0) {9};
\draw [ultra thick,green,snake it] (1*\x,0.3) to (1.2*\x,0.8);
\draw [ultra thick,green,snake it] (2*\x,0.3) to (2.2*\x,0.8);
\draw [ultra thick,green,snake it] (6*\x,0.3) to (6.2*\x,0.8);
\draw [ultra thick,green,snake it] (2.3*\x,1.4) to (3.6*\x,1.4);
\draw [ultra thick,green,snake it] (7.1*\x,1.1) to (8.0*\x,1.1);
\draw [ultra thick,blue] (1.2*\x,0.8) to [out=90, in=180] (2.3*\x,1.4);
\draw [ultra thick,blue] (3.6*\x,1.4) to [out=0, in=90] (4);
\draw [ultra thick,blue] (2.2*\x,0.8) to [out=90, in=90] (3);
\draw [ultra thick,blue] (6.2*\x,0.8) to [out=90, in=180] (7.1*\x,1.1);
\draw [ultra thick,blue] (8.0*\x,1.1) to [out=0, in=90] (9);
\draw [ultra thick,red,dashed] (1.2*\x,0.8) to [out=90, in=110] (7.1*\x,1.1);
\draw [ultra thick,red,dashed]  (8.0*\x,1.1) to [out=-90, in=90] (8);
\draw [ultra thick,red,dashed] (2.2*\x,0.8) to [out=180, in=180] (2.3*\x,1.4);
\draw [ultra thick,red,dashed] (3.6*\x,1.4) to [out=0, in=90] (5);
\draw [ultra thick,red,dashed] (6.2*\x,0.8) to [out=90, in=90] (7);
\draw[thick,draw=black,fill=white]  (1*\x,0.3) circle (3pt);
\draw[thick,draw=black,fill=white]  (2*\x,0.3) circle (3pt);
\draw[thick,draw=black,fill=white]  (3*\x,0.3) circle (3pt);
\draw[thick,draw=black,fill=white]  (4*\x,0.3) circle (3pt);
\draw[thick,draw=black,fill=white]  (5*\x,0.3) circle (3pt);
\draw[thick,draw=black,fill=white]  (6*\x,0.3) circle (3pt);
\draw[thick,draw=black,fill=white]  (7*\x,0.3) circle (3pt);
\draw[thick,draw=black,fill=white]  (8*\x,0.3) circle (3pt);
\draw[thick,draw=black,fill=white]  (9*\x,0.3) circle (3pt);
\draw[thick,draw=black,fill=black]  (1.2*\x,0.8) circle (3pt);
\draw[thick,draw=black,fill=black]  (2.2*\x,0.8) circle (3pt);
\draw[thick,draw=black,fill=black]  (6.2*\x,0.8) circle (3pt);
\draw[thick,draw=black,fill=white]  (2.3*\x,1.4) circle (3pt);
\draw[thick,draw=black,fill=black]  (3.6*\x,1.4) circle (3pt);
\draw[thick,draw=black,fill=white]  (7.1*\x,1.1) circle (3pt);
\draw[thick,draw=black,fill=black]  (8.0*\x,1.1) circle (3pt);
\end{tikzpicture}
      &
\begin{tikzpicture}[baseline=(3),scale=0.35] % TWEAK HERE TO MAKE IT 12 PAGES
\draw (0,0) circle (3);
\node[label={above left:1},inner sep=0] (1) at (110:3) {};
\node[label={left:2},inner sep=0] (2) at (150:3) {};
\node[label={left:3},inner sep=0] (3) at (190:3) {};
\node[label={below left:4},inner sep=0] (4) at (230:3) {};
\node[label={below:5},inner sep=0] (5) at (270:3) {};
\node[label={below right:6},inner sep=0] (6) at (310:3) {};
\node[label={right:7},inner sep=0] (7) at (350:3) {};
\node[label={right:8},inner sep=0] (8) at (390:3) {};
\node[label={above right:9},inner sep=0] (9) at (430:3) {};
\node[inner sep=0] (A) at (170:2) {};
\node[inner sep=0] (B) at (250:2) {};
\node[inner sep=0] (C) at (330:2) {};
\node[inner sep=0] (D) at (410:2) {};
\node[inner sep=0] (E) at (110:2) {};
\node[inner sep=0] (F) at (210:0.75) {};
\node[inner sep=0] (G) at (370:0.75) {};
\draw[thick] (1)--(E)--(F)--(E)--(G);
\draw[thick] (2)--(A)--(F)--(A)--(3);
\draw[thick] (4)--(B)--(F)--(B)--(5);
\draw[thick] (6)--(C)--(G)--(C)--(7);
\draw[thick] (8)--(D)--(G)--(D)--(9);
\draw[thick,draw=black,fill=white]  (1) circle (4pt);
\draw[thick,draw=black,fill=white]  (2) circle (4pt);
\draw[thick,draw=black,fill=white]  (3) circle (4pt);
\draw[thick,draw=black,fill=white]  (4) circle (4pt);
\draw[thick,draw=black,fill=white]  (5) circle (4pt);
\draw[thick,draw=black,fill=white]  (6) circle (4pt);
\draw[thick,draw=black,fill=white]  (7) circle (4pt);
\draw[thick,draw=black,fill=white]  (8) circle (4pt);
\draw[thick,draw=black,fill=white]  (9) circle (4pt);
\draw[thick,draw=black,fill=black]  (A) circle (4pt);
\draw[thick,draw=black,fill=black]  (B) circle (4pt);
\draw[thick,draw=black,fill=black]  (C) circle (4pt);
\draw[thick,draw=black,fill=black]  (D) circle (4pt);
\draw[thick,draw=black,fill=black]  (E) circle (4pt);
\draw[thick,draw=black,fill=white]  (F) circle (4pt);
\draw[thick,draw=black,fill=white]  (G) circle (4pt);
\end{tikzpicture}
    \end{array}
  \]
\end{example}
\begin{prop}\label{prop:kword_web_faces}
Let $w$ be a Kreweras word and let $(\W_w, c_w)$ be the $3$-edge-colored graph obtained by \cref{construction:breaking-apart}.

Then $\W_w$ is an irreducible $\mathfrak{sl}_3$-web with $3n$ boundary vertices, all of which are white.  Moreover, $\W_w$ has no internal face having a multiple of four sides.

The $3$-coloring $c_w$ of the edges of $\W_w$ is proper, \textit{i.e.}, each vertex is incident to at most one edge in each color class.

Finally, the construction is injective, that is, given $(\W_w,c_w)$ we can recover $w$: the boundary vertices incident to an avocado edge correspond to the~$\A$'s in~$w$, those incident to a blue edge correspond to~$\B$'s, and those incident to a crimson edge correspond to~$\C$'s.
\end{prop}

The web $\W_w$ without its $3$-edge-coloring is not quite enough to recover $w$.  However, as we now explain, it gives information equivalent to the permutation~$\sigma_w$.
In fact, we can associate a permutation to any $\mathfrak{sl}_3$-web by taking trips in the web, similar to what we did in \cref{sec:proof} for Kreweras bump diagrams.

\begin{figure}
\[
\begin{tikzpicture}[scale=0.85,baseline=0]
\tikzset{->-/.style={decoration={ markings, mark=at position 0.25 with {\arrow{>}}},postaction={decorate}}};
\draw (0,0) to (30:1);
\draw (0,0) to (150:1);
\draw (0,0) to (270:1);
\draw[thick,draw=black,fill=black]  (0,0) circle (3pt);
\draw[thick,->,->-]  (280:1) to [out=90,in=200] (20:1);
\draw[thick,->,->-]  (40:1) to [out=210,in=150+180] (140:1);
\draw[thick,->,->-]  (160:1) to [out=150+180,in=90] (260:1);
\end{tikzpicture} \qquad \qquad \qquad \begin{tikzpicture}[scale=0.85,baseline=0]
\tikzset{->-/.style={decoration={ markings, mark=at position 0.25 with {\arrow{>}}},postaction={decorate}}};
\draw (0,0) to (30:1);
\draw (0,0) to (150:1);
\draw (0,0) to (270:1);
\draw[thick,draw=black,fill=white]  (0,0) circle (3pt);
\draw[thick,->,->-]  (20:1) to [out=200,in=90] (280:1) ;
\draw[thick,->,->-]  (140:1) to [out=150+180,in=210] (40:1);
\draw[thick,->,->-]  (260:1) to [out=90,in=150+180] (160:1);
\end{tikzpicture}
\]
\caption{The rules of the road when taking a trip in a web.} \label{fig:rules_road_webs}
\end{figure}

\begin{definition} \label{def:web_trip_perm}
Let $\W$ be an $\mathfrak{sl}_3$-web with $m$ boundary vertices. The \dfn{trip permutation} of $\W$, denoted $\mathrm{trip}_{\W} \in \mathfrak{S}_m$, is obtained as follows. For $1\leq i \leq m$ we take a \dfn{trip in $\W$ starting at $i$}. To do this, we start by walking from boundary vertex $i$ along the unique edge incident to it. When we come to any internal vertex in $\W$, we continue our trip by following the \dfn{rules of the road}:
\begin{itemize}
\item if the vertex is black, we \dfn{turn right}, \textit{i.e.}, we walk out along the next edge counterclockwise from where we came in;
\item if the vertex is white, we \dfn{turn left}, \textit{i.e}., we walk out along the next edge clockwise from where we came in.
\end{itemize}
These rules of the road are depicted in \cref{fig:rules_road_webs}. We stop our trip when we reach a boundary vertex. If $j$ is the boundary vertex we reach from the trip starting at $i$, then we set $\mathrm{trip}_{\W}(i)  \coloneqq  j$.
\end{definition}

That $\mathrm{trip}_{\W}$ is a permutation follows from the fact that the rules of the road around any vertex locally permute the entry and exit points.
\begin{prop} \label{prop:trip_defs_agree}
$\sigma_w= \mathrm{trip}_{\W}$.
\end{prop}

The notion of trip permutations is due to Postnikov~\cite{postnikov2006total}, and comes from his theory of plabic graphs.
A \dfn{plabic (``planar bicolored'') graph} is a planar graph, embedded in a disk, whose internal vertices are colored black or white, and whose boundary vertices have degree one.
There are some differences between plabic graphs and $\mathfrak{sl}_3$-webs:
\begin{itemize}
\item the boundary vertices of a plabic graph are not colored;
\item the internal vertices of a plabic graph need not be trivalent;
\item the coloring of internal vertices of a plabic graph does not have to be proper, \textit{i.e.}, vertices of the same color may be adjacent.
\end{itemize}
Except for the small technicality about boundary vertices being colored, an $\mathfrak{sl}_3$-web is a special case of a plabic graph. Postnikov~\cite[\S13]{postnikov2006total} defined trip permutations for plabic graphs in exactly the same way as we have done for webs in \cref{def:web_trip_perm} above: turn right at black vertices and left at white vertices.

If $\W$ and $\W'$ are two $\mathfrak{sl}_3$-webs with $m$ boundary vertices, and they differ only in the way their boundary vertices are colored, then $\mathrm{trip}_{\W}=\mathrm{trip}_{\W'}$, since the color of boundary vertices does not enter into the definition of trip permutations in any way. However, note that the color of any boundary vertex which is adjacent to an internal vertex has its color determined by the bipartiteness condition. Hence, if $\W$ and $\W'$ differ only in the way their boundary vertices are colored, then $\W'$ is obtained from $\W$ by swapping the colors of pairs of oppositely colored, adjacent boundary vertices. In particular, if $\W$ has all its boundary vertices the same color, then there is no web that differs from $\W'$ only in the way its boundary vertices are colored.

Postnikov's work implies that for \emph{irreducible} webs, the situation discussed in the previous paragraph is the only way that trip permutations can coincide.

\begin{lemma} \label{lem:trip_perm_equal}
Let $\W$ and $\W'$ be irreducible $\mathfrak{sl}_3$-webs with $m$ boundary vertices. Suppose that $\mathrm{trip}_{\W} = \mathrm{trip}_{\W'}$. Then $\W$ and $\W'$ differ at most in the way their boundary vertices are colored. In particular, if all the boundary vertices of $\W$ are the same color, then $\W=\W'$.
\end{lemma}

\Cref{lem:trip_perm_equal} lets us apply our knowledge about how $\pro$ and $\evac$ affect $\sigma_w$ to understand how they affect $\W_w$. We just need to define the corresponding web operations.

\begin{definition}
Let $\W$ be an $\mathfrak{sl}_3$-web with $m$ boundary vertices. The \dfn{rotation} of~$\W$, denote $\rot(\W)$, is obtained from $\W$ be relabeling its vertices according to the inverse long cycle $(m,m-1,\ldots,2,1) \in \Sym_m$. The \dfn{flip} of $\W$, denoted $\flip(\W)$, is obtained from $\W$ by drawing a chord in the disk separating $1$ and $m$, reflecting $\W$ across this chord, and then relabeling its vertices according to the longest element $[m,m-1,\ldots,1] \in \Sym_m$.
\end{definition}

\begin{thm} \label{thm:web}
$\W_{\pro(w)} = \rot(\W_{w})$ and $\W_{\evac(w)} = \flip(\W_{w})$.
\end{thm}
Let us remark that our proof of \Cref{thm:web} relies on 
\Cref{thm:main} (or, more precisely, \Cref{lem:key}) in an essential way.

We conclude with a characterisation of those webs $\W$ which are equal to $\W_w$ for some Kreweras word $w$.
\begin{thm}\label{thm:kreweras_webs}
  A \dfn{Kreweras web} is an irreducible $\mathfrak{sl}_3$-web such that all boundary vertices are white and there are no internal faces with a multiple of $4$ sides.
  
  Let $\W$ be an $\mathfrak{sl}_3$-web. Then there is a Kreweras word~$w$ for which $\W=\W_w$ if and only $\W$ is a Kreweras web. Moreover, if $\W$ is a Kreweras web, then the number of Kreweras words $w$ for which $\W=\W_w$ is $2^{\kappa(\W)}$, where $\kappa(\W)$ is the number of connected components of $\W$.
\end{thm}
We prove \cref{thm:kreweras_webs} by demonstrating that we can appropriately edge-color any Kreweras web $\W$.
\printbibliography{}
\end{document}

%%% Local Variables:
%%% mode: latex
%%% TeX-master: t
%%% End:
