Counting Permutation Patterns with Multidimensional Trees
We consider the well-studied pattern counting problem: given a permutation \(\pi \in \mathbb{S}_n\) and an integer \(k > 1\), count the number of order-isomorphic occurrences of every pattern \(\tau \in \mathbb{S}_k\) in \(\pi\). Our first result is an \(\widetilde{\mathcal{O}}(n^2)\)-time algori...
Gespeichert in:
Veröffentlicht in: | arXiv.org 2024-07 |
---|---|
Hauptverfasser: | , |
Format: | Artikel |
Sprache: | eng |
Schlagworte: | |
Online-Zugang: | Volltext |
Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
Zusammenfassung: | We consider the well-studied pattern counting problem: given a permutation \(\pi \in \mathbb{S}_n\) and an integer \(k > 1\), count the number of order-isomorphic occurrences of every pattern \(\tau \in \mathbb{S}_k\) in \(\pi\). 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. |
---|---|
ISSN: | 2331-8422 |