Permutation Flows
Rafael S. González D'León
Department of Mathematics and Statistics · Loyola University Chicago
Joint work with Christopher R. H. Hanusa, Queens College
Alejandro H. Morales, Université du Québec à Montréal
Martha Yip, University of Kentucky
AMS Spring Southeastern Sectional Meeting · Georgia Southern University, Savannah · March 2026
Flows on networks
Seattle San Francisco Los Angeles Phoenix Denver Dallas Houston Oklahoma City Kansas City Minneapolis St. Louis Chicago Detroit New Orleans Atlanta Miami Washington DC Philadelphia New York Boston Hub / Refinery Pipeline
Flows on a directed graph \(G\)
The vector
\((1,\, 0.5,\, 0.5,\, 1,\, 1,\, 1.5) \in \mathbb{R}^{6}\)
is a \((2,1,0,-3)\)-flow on the graph \(G\).
The flow polytope \(\mathcal{F}_G(\mathbf{a})\)
\((1,\, 0.5,\, 0.5,\, 1,\, 1,\, 1.5) \in \mathbb{R}^{6}\)
is a \((2,1,0,-3)\)-flow on \(G\).
The flow polytope \(\mathcal{F}_G(\mathbf{a})\)
0 1 2 n a0 a1 a2 an
Setup

\(G = (V, E)\): acyclic directed graph on \(V = \{0, \ldots, n\}\) with \(m\) edges.

Netflow vector \(\ba = (a_0, \ldots, a_n) \in \Z^{n+1}\) with \(\sum a_i = 0\).

Definition — \(\mathbf{a}\)-flow

An \(\ba\)-flow on \(G\) is a function \(\varphi: E \to \R_{\geq 0}\) satisfying at each vertex \(v\):

\[a_v + \sum_{e \in \inu(v)} \varphi(e) = \sum_{e \in \out(v)} \varphi(e)\]
Definition — Flow polytope

The flow polytope \(\FGa\) is the set of all \(\ba\)-flows on \(G\).

It is a convex polytope of dimension \(d = m - n\).

Definition — Unit flow polytope

When \(\ba = \e_0 - \e_n\), we write \(\FG := \FG(\e_0 - \e_n)\) and call it the unit flow polytope.

Definition — Kostant partition function

The Kostant partition function counts integer \(\ba\)-flows:

\[K_G(\ba) \;=\; \#\!\left(\FGa \cap \Z^{|E|}\right)\]

Combinatorial information in \(\FGa\)

Faces of flow polytopes
Theorem (Hille (2003))

The faces of \(\FGa\) are of the form \(\mathcal{F}_H(\ba)\) where \(H\) is an \(\ba\)-effective subgraph of \(G\).

Corollary

The vertices of \(\FGa\) correspond to \(\ba\)-effective spanning trees of \(G\).

Corollary — Unit netflow

When \(\ba = \e_0 - \e_n\), the vertices of \(\FG\) are routes.

The oruga graph \(\mathrm{oru}(3)\), \(\ba = \e_0 - \e_3\):
Volumes of flow polytopes
Theorem (Lidskii — Baldoni-Vergne (2008), Mészáros-Morales (2019))

Let \(\ba\) be balanced with \(a_i \geq 0\) for \(i < n\) and \(a_n < 0\).

\[\vol \FGa = \sum_{\mathbf{j} \rhd \mathbf{o}} \binom{d}{\mathbf{j}} \, \mathbf{a}^{\mathbf{j}} \, K_G(\mathbf{j} - \mathbf{o})\]

\(\mathbf{o} = (\mathrm{outdeg}(v)-1)_v\), sum over weak compositions \(\mathbf{j}\) with \(\mathbf{j} \rhd \mathbf{o}\).

Lidskii volume formula
Theorem — Indegree Lidskii (\(\ba = \e_0 - \e_n\)) - (Baldoni-Vergne (2008), Postnikov-Stanley (unpublished))

Let \(d_v = \mathrm{indeg}_G(v) - 1\) for \(v = 2,\ldots,n\).

\[\vol \FG = K_G\!\left(0,\, d_2,\, \ldots,\, d_n,\, -\textstyle\sum d_i\right)\]
The spirit of this formula

The volume of a unit flow polytope equals the number of integer flows on the same graph with a different netflow determined by indegrees.

Volume of

is equal to

Integer flows of

Triangulations

Framed digraphs
Definition — Framing

A framing at vertex \(v\) is a choice of linear orders on \(\inu(v)\) and \(\out(v)\).

A framing \(F\) of \(G\) is the collection of framings at every interior vertex. A framed graph is a pair \((G, F)\).

The framing is visualized by the vertical ordering of edges at each vertex:

Non-twisted framing \(F\)

Twisted framing \(F'\)

Coherence of routes
Definition — Coherence

Two routes \(P\) and \(Q\) have a conflict at vertex \(v\) if the prefixes \(Pv, Qv\) have the opposite relative ordering from the suffixes \(vP, vQ\) in the framing at \(v\).

They are coherent if they do not have a conflict at any vertex.

Coherence examples
Cliques & the DKK triangulation
Definition — Clique

A clique \(\mathcal{C}\) is a set of routes that are pairwise coherent.

Key insight

\(\mathrm{Cliques}(G,F)\) is a simplicial complex.

Theorem (Danilov–Karzanov–Koshevoy (2012))

The collection of simplices from maximal cliques

\[\DKK(G, F) = \bigl\{\Delta_{\mathcal{C}} \mid \mathcal{C} \in\mathrm{SatCliques}(G,F)\bigr\}\]

is a regular unimodular triangulation of \(\FG\).

Consequence

\(\vol \FG = \#\text{maximal cliques} = K_G(\mathbf{d})\)

A different framing, a different triangulation

Twisted framing \(F'\)

Key insight

The same polytope \(\FG \cong [0,1]^3\) admits different triangulations depending on the framing \(F\).

Understanding the DKK triangulation
\(m = 10\), \(n = 4\), \(d = 6\)

Questions.

(a) Can you compute a maximal clique?

(b) Are these two faces part of a common facet?

The dual structure of the triangulation

What changes in adjacent simplices in the DKK triangulation?

Clique \(\mathcal{C}_1\)

7 pairwise coherent routes

Clique \(\mathcal{C}_2\)

Differs in exactly one route → shared facet

Minimal conflicts & the framing order
Theorem 2.9 (Danilov–Karzanov–Koshevoy (2012))

Two simplices \(\triangle_{\mathcal{C}}, \triangle_{\mathcal{C}'} \in \DKK(G,F)\) share a facet iff their cliques differ in exactly two routes \(P \in \mathcal{C}\), \(Q \in \mathcal{C}'\) with a minimal conflict.

Proposition 2.11

The graph \(\{(\mathcal{C}, \mathcal{C}') \mid \mathcal{C} \lessdot \mathcal{C}'\}\) on \(\SatCliques(G,F)\) is acyclic. Its transitive closure defines a partial order in \(DKK(G, F)\).

P Q u v

\(P\) is descending and \(Q\) is ascending at \(v\)

\(\mathrm{In}(u)\!:\) \(P\) \(\succ\) \(Q\)  but  \(\mathrm{Out}(v)\!:\) \(P\) \(\prec\) \(Q\)  \(\Longrightarrow\)  \(\mathcal{C} \lessdot \mathcal{C}'\)

A framing order on \(\mathrm{SatCliques}(G, F)\)
Definition 2.12

The framing order \(P(G, F)\) is the partial order on \(\SatCliques(G, F)\) given by the transitive closure of the cover relation \(\mathcal{C} \lessdot \mathcal{C}'\).

Non-twisted framing on \(\mathrm{oru}(n)\):

\(\mathrm{DKK} \cong\) weak order on \(\mathfrak{S}_n\)

Twisted framing on \(\mathrm{oru}(n)\):

\(\mathrm{DKK} \cong\) lattice of circular permutations

(Abram, Chapelier-Laget, Reutenauer (2020))

Non-twisted framing

Planar weak order on oru(3)

Twisted framing

Twisting weak order on oru(3)
The lattice conjecture
Conjecture (Benedetti, González D'León, Hanusa, Harris, Morales, Yip (2020))

For any framed digraph \((G, F)\), the framing order \(\mathrm{DKK}(G, F)\) is a lattice.

Growing evidence:

1. González D'León & Mayorga Cetina (2020)

Tamari lattice and flip lattice on Dyck paths as framed triangulations of the caracol polytope

2. Bell, González D'León, Mayorga Cetina & Yip (2023)

\(\nu\)-Tamari lattice and any principal order ideal of Young's lattice realized via flow polytopes

3. González D'León, Morales, Philippe, Tamayo Jiménez & Yip (2025)

The \(s\)-permutahedron realized via flow polytopes — \(s\)-weak order defined by (Ceballos-Pons) is a lattice

But cliques are hard to work with —
how do we work with these lattices?

A new combinatorial model: permutation flows

On \((G, F)\), edges are classified as:

  • Slack edges \(s_0, s_1, \ldots\)
  • Split edges \(t_1, t_2, \ldots, t_d\)

Add an inflow half-edge \(x\) at the source. \(\hat{E} = E \cup \{x\}\).

We will assign recursively a word \(\pi(e)\)to each edge and at each vertex \(v\), we will define summary words by concatenating the words \(\pi(e)\) of all the incoming (resp. outgoing) edges gives:

\(\pi(e_0) \cdots \pi(e_i)\) (incoming summary)  and  \(\pi(e'_0) \cdots \pi(e'_j)\) (outgoing summary)

Definition — (Saturated) Permutation Flow

A (saturated) permutation flow on \((G, F)\) is a map \(\pi\colon \hat{E} \to \mathcal{P}_{[0,d]}\) such that:

  • \(\pi(x) = 0\)
  • At each vertex \(v\): the outgoing word \(\pi(e'_0)\cdots\pi(e'_j)\) is a shuffle of the incoming word \(\pi(e_0)\cdots\pi(e_i)\) and the word of split edges \(e'_1 e'_2 \cdots e'_j\)
  • At each split edge \(e'_h\): \(e'_h\) is the first letter of \(\pi(e'_h)\)

Framed digraph with edge notation

Framed digraph with edge labels

A (saturated) permutation flow \(\pi\)

Saturated permutation flow example

Final Summary

\(v_0\!: \; \mathbf{0\,2\,1}\)  →  \(v_1\!: \; \mathbf{0\,2\,4\,3}\)  →  \(v_2\!: \; \mathbf{1\,4\,0\,2\,5}\)  →  \(v_3\!: \; \mathbf{3\,1\,6\,4\,0\,2}\)  →  \(v_4\!: \; \mathbf{3\,1\,6\,4\,0\,2\,5}\)

Permutation flows encode DKK cliques
Theorem (González D'León, Hanusa, Yip 2025)

The map \(\;\mathrm{SatPermuFlows}(G, F) \;\xrightarrow{\;\sim\;}\; \mathrm{SatCliques}(G, F)\),  given by   \(\pi \;\mapsto\; \mathrm{Routes}(\pi)\)  is a bijection.

Key Insight

The idea is to follow the “splits”.

Recovering routes from π

\(\pi\)

Permutation flow π (flow 38)

\(v_4\!:\; \mathbf{3\;1\;6\;4\;0\;2\;5}\)

\(\mathrm{Routes}(\pi)\)

Clique routes for flow 38
Saturated permutation flows lift the Lidskii volume formula
Theorem (Baldoni-Vergne (2008), Postnikov-Stanley (Unpublished))

The normalized volume of \(\mathcal{F}_G\) is \(\;\mathrm{vol}\;\mathcal{F}_G = \mathcal{F}_G^{\mathbb{Z}}(\vec{d})\), the number of lattice points of the flow polytope \(\mathcal{F}_G(\vec{d})\).

Proposition (González D'León, Hanusa, Yip (2025))

For any framed graph \((G, F)\),  \(\mathrm{SatPermuFlows}(G, F) \;\xrightarrow{\;\sim\;}\; \mathcal{F}_G^{\mathbb{Z}}(\vec{d})\),  \(\pi \;\mapsto\; \bigl(\pi(e) - 1\bigr)_{e \in E}\)  is a bijection.

\(\pi\) — Permutation flow

Permutation flow ρ

\(\pi(e) - 1\)

Integer flow — lattice point of \(\mathcal{F}_G(\vec{d})\)

Integer flow (lattice point)

\(\vec{d} = (0,\, 1,\, 2,\, 1,\, {-4})\)

The weak order

A poset structure on \(\mathrm{SatPermuFlows}(G, F)\)
Definition — Ascent

An ascent in \(\pi\) is a pair \((e, t)\) where \(e\) appears just before \(t\) in some \(\pi(e')\), and \(v\) is the rightmost vertex where this occurs for \(e\).

v t e* e' t··· ···e ···e···
Definition — Descent

A descent in \(\pi\) is a pair \((t, e)\) where on all edges to the right of \(v\) which contain \(t\), the substring “\(te\)” appears together.

v t e* e' te··· ··· ···e···
Key Insight

Ascents are rightmost splits.

\(\pi\)

Permutation flow π

Ascents: \((5,2)\), \((6,1)\).  Descent: \((6,4)\).
Note: \((4,2)\) is not an ascent since \(2\) splits further right.

Raising and lowering operators — \(R_t\) and \(L_t\)
R5 R6 L6

\(\pi = 3\;1\;6\;4\;0\;2\;5\)

π
R₅(π)

\(R_5(\pi) = 3\;1\;6\;4\;0\;5\;2\)

R₆(π)

\(R_6(\pi) = 3\;6\;1\;4\;0\;2\;5\)

L₆(π)

\(L_6(\pi) = 3\;1\;4\;6\;0\;2\;5\)

The oruga example

Step-by-step construction of the framing order — planar vs. twisted framing

Planar framing

0 1 2 3 1 2 3 0 01 012 Rt₂ Rt₃ 0 1 2 3 1 21 3 0 0 021 0 1 2 3 1 2 32 0 01 01 Rt₃ Rt₃ 0 1 2 3 1 21 31 0 0 02 0 1 2 3 1 2 312 0 01 0 Rt₃ Rt₂ 0 1 2 3 1 21 321 0 0 0

Twisted framing

0 1 2 3 1 2 3 0 10 210 Rt₃ 0 1 2 3 1 2 30 0 10 21 Rt₂ Rt₃ 0 1 2 3 1 20 3 0 1 201 0 1 2 3 1 2 310 0 10 2 Rt₃ Rt₂ 0 1 2 3 1 20 31 0 1 20 Rt₃ 0 1 2 3 1 20 301 0 1 2
The weak order \(\mathcal{W}(G, F)\) on permutation flows
Theorem (González D'León, Hanusa, Yip (2025))

\(R_t\) are covering relations, whose transitive closure defines a poset structure on \(\mathrm{SatPermuFlows}(G, F)\).

Definition

We call this poset the (right) weak order \(\mathcal{W}_{(G,F)}\) on \(\mathrm{SatPermuFlows}(G, F)\).

Theorem (González D'León, Hanusa, Yip (2025))

\(\mathcal{W}_{(G,F)} \;\cong\; \text{Framing lattice on } \mathrm{DKK}(G, F).\)

Tamari and ideals in Young's lattice

Length framing

Rt₂ Rt₃ Rt₃ Rt₃ Rt₂ 0 1 2 3 4 3 2 1 012 01 0 0 1 2 3 41 3 2 1 02 0 0 0 1 2 3 4 32 2 1 01 01 0 0 1 2 3 4 312 2 1 0 01 0 0 1 2 3 41 32 2 1 0 0 0

Length framing

Rt₂ Rt₃ Rt₃ Rt₃ Rt₂ 123 231 132 312 321

Planar framing

Rt₃ Rt₃ Rt₂ Rt₃ Rt₂ 0 1 2 3 4 3 2 1 012 12 0 0 1 2 3 4 32 2 1 01 12 0 0 1 2 3 42 3 2 1 01 1 0 0 1 2 3 4 312 2 1 0 12 0 0 1 2 3 42 31 2 1 0 1 0

Planar framing

Rt₃ Rt₃ Rt₂ Rt₃ Rt₂

The \(G\)-Eulerian polynomial

The \(G\)-Eulerian polynomial
Definition

The \((G, F)\)-Eulerian polynomial is

\(\displaystyle A_{(G,F)}(t) \;:=\; \sum_{\pi \,\in\, \mathrm{SatPermuFlows(G,F)}} t^{\,\mathrm{des}(\pi)}.\)

Theorem (González D'León, Hanusa, Yip (2025))

The \(h^*\)-polynomial of \(\mathcal{F}_G\) is \(A_{(G,F)}(t)\).

Idea of the Proof. We show that any linear extension \(\mathcal{C}_1, \ldots, \mathcal{C}_s\) of the saturated cliques in \(W(G,F)\) gives a shelling.

\(\displaystyle h^*_{\mathcal{F}_G}(t)=h_{\mathrm{DKK}(G,F)}(t) = \sum_{i=1}^{s} t^{\,|\mathcal{R}(\mathcal{C}_i)|} = \sum_{i=1}^{s} t^{\,\text{# elements covered by } \mathcal{C}_i} = \sum_{i=1}^{s} t^{\,\mathrm{des}(\pi_i)}.\)

Corollary

\(h^*\) is independent of the framing, so \(A_{(G,F)}(t) = A_{(G,F')}(t)\).

Definition

The \(G\)-Eulerian polynomial \(A_{G}(t)\) is defined as \(A_{(G,F)}(t)\) for any framing \(F\) of \(G\).

Faces of \(\mathrm{DKK}(G,F)\) in terms of permutation flows

Faces of DKK(G,F): non-saturated permutation flows

A general triangulation of \(\mathcal{F}_G(\mathbf{a})\) when \(\mathbf{a}\) has \(a_n < 0\) as the only negative entry: Permutation flow triangulations!

Framed augmented digraphs
Framed augmented digraph
The Pitman-Stanley polytope
Graph G with netflow Augmented digraph
Cliques of route matchings
Cliques of route matchings
Permutation flow shuffles
Permutation flow shuffles
A permutation flow triangulation of the Pitman-Stanley polytope
The permutation flow triangulation
Theorem (González D'León, Hanusa, Yip (2025))

Let \((\hat{G},\hat{F})\) be a framed \(\mathbf{a}\)-augmented graph of \(G\). The set

\[\begin{aligned} \mathrm{PFT}(\hat{G},\hat{F}) &= \{\triangle_{\pi} \mid \pi \in \mathrm{SatPermuFlowShuffles}(\hat{G},\hat{F})\} \\ &= \{\triangle_{\mathcal{C}} \mid \mathcal{C} \in \mathrm{SatCliques}(\hat{G},\hat{F})\} \end{aligned}\]

is a triangulation of \(\mathcal{F}_G(\mathbf{a})\).

A new proof and reformulation of the Baldoni-Vergne's volume Lidskii formula.

Reformulated Lidskii volume formula
Theorem (Lidskii — Baldoni-Vergne (2008), Mészáros-Morales (2019))

Let \(\ba\) be balanced with \(a_i \geq 0\) for \(i < n\) and \(a_n < 0\).

\[\vol \FGa = \sum_{\mathbf{j} \rhd \mathbf{o}} \binom{d}{\mathbf{j}} \, \mathbf{a}^{\mathbf{j}} \, K_G(\mathbf{j} - \mathbf{o})\]

\(\mathbf{o} = (\mathrm{outdeg}(v)-1)_v\), sum over weak compositions \(\mathbf{j}\) with \(\mathbf{j} \rhd \mathbf{o}\).

Corollary (Reformulated Lidskii - González D'León, Hanusa, Yip (2025))

Let \(\mathbf{a}\) be such that \(a_i \ge 0\) for \(i = 0, \dots, n-1\) and \(a_n < 0\). The normalized volume of the flow polytope \(\mathcal{F}_G(\mathbf{a})\) is

\[\mathrm{vol}\, \mathcal{F}_G(\mathbf{a}) = \sum_{\mathbf{j}} \binom{d}{\mathbf{j}}\, K_G(\hat{\mathbf{j}} - \mathbf{o}),\]

where the sum is over weak compositions \(\mathbf{j}\) whose coarsening \(\hat{\mathbf{j}}\) satisfies \(\hat{\mathbf{j}} \rhd \mathbf{o}\).

What did I not mention about permutation flows?

Combinatorics of permutation flows
\[\begin{array}{ c c c c c c c c c } \mathrm{Cliques} & \!\!\longrightarrow\!\! & \mathrm{Multicliques} & \!\!\longrightarrow\!\! & {\begin{array}{ c }\mathrm{Vineyard}\\ \mathrm{Shuffles} \end{array}} & \!\!\longrightarrow\!\! & {\begin{array}{ c } \mathrm{Grove}\\ \mathrm{Shuffles} \end{array}} & \!\!\longrightarrow\!\! & {\begin{array}{ c } \mathrm{Permutation\, Flow}\\ \mathrm{Shuffles} \end{array}}\\ &&&&&&&&\\ \mathcal{C} & \mapsto & \mathcal{M} & \mapsto & (\mathcal{V} ,\sigma_{\mathcal{V}} ) & \mapsto & ( \Gamma,\sigma_{\Gamma} ) & \mapsto & ( \pi,\sigma_{\pi} ) \end{array}\]
The permutation flow zoo
Clique of Matchings
Clique of Matchings
Vineyard shuffle
Vineyard shuffle
Grove shuffle
Grove shuffle
Permutation flow shuffle
Permutation flow shuffle
Gracias!
arXiv: 2512.04078