Counting Permutation Patterns with Multidimensional Trees
Gal Beniamini, Nir Lavee
TL;DR
This work advances permutation pattern counting by introducing pattern-trees, a versatile framework that generalizes corner-trees to capture linear combinations of pattern counts. The authors prove a subquadratic approach for computing the 5-, 6-, and 7-profiles via quadratic-time pattern-tree evaluation and a full-rank construction of trees up to size 2, while identifying a barrier at k=8. They also achieve a subquadratic O~(n^{7/4}) algorithm for the 5-profile by augmenting the evaluation with marked/weighted gadgets and a new pair-rectangle-tree data structure for dominance counting. The methods leverage rectangle-trees and sophisticated case analyses to count complex patterns, offering practical subquadratic techniques for small fixed k with clear paths for extension and open questions about higher k and rank behavior. Overall, the paper provides a unified, scalable framework for pattern-count vectors in permutations and highlights both achievable progress and inherent limitations as k grows.
Abstract
We consider the well-studied pattern counting problem: given a permutation $π\in \mathbb{S}_n$ and an integer $k > 1$, count the number of order-isomorphic occurrences of every pattern $τ\in \mathbb{S}_k$ in $π$. Our first result is an $\widetilde{\mathcal{O}}(n^2)$-time algorithm for $k=6$ and $k=7$. The proof relies heavily on a new family of graphs that we introduce, called pattern-trees. Every such tree corresponds to an integer linear combination of permutations in $\mathbb{S}_k$, and is associated with linear extensions of partially ordered sets. We design an evaluation algorithm for these combinations, and apply it to a family of linearly-independent trees. For $k=8$, we show a barrier: the subspace spanned by trees in the previous family has dimension exactly $|\mathbb{S}_8| - 1$, one less than required. Our second result is an $\widetilde{\mathcal{O}}(n^{7/4})$-time algorithm for $k=5$. This algorithm extends the framework of pattern-trees by speeding-up their evaluation in certain cases. A key component of the proof is the introduction of pair-rectangle-trees, a data structure for dominance counting.
