A Simple Streaming Bit-parallel Algorithm for Swap Pattern Matching
V\'aclav Bla\v{z}ej, Ond\v{r}ej Such\'y, Tom\'a\v{s} Valla

TL;DR
This paper introduces a new streaming bit-parallel algorithm for swap pattern matching that leverages graph theory, outperforming previous methods and highlighting flaws in existing algorithms, with experimental validation on real data.
Contribution
The paper presents a novel graph-based streaming bit-parallel algorithm for swap pattern matching, improving efficiency over prior approaches and identifying flaws in earlier models.
Findings
The new algorithm outperforms previous methods in speed.
Deterministic finite automata approaches are less efficient.
Experimental results confirm the algorithm's practical effectiveness.
Abstract
The pattern matching problem with swaps is to find all occurrences of a pattern in a text while allowing the pattern to swap adjacent symbols. The goal is to design fast matching algorithm that takes advantage of the bit parallelism of bitwise machine instructions and has only streaming access to the input. We introduce a new approach to solve this problem based on the graph theoretic model and compare its performance to previously known algorithms. We also show that an approach using deterministic finite automata cannot achieve similarly efficient algorithms. Furthermore, we describe a fatal flaw in some of the previously published algorithms based on the same model. Finally, we provide experimental evaluation of our algorithm on real-world data.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
