Beating O(nm) in approximate LZW-compressed pattern matching
Pawel Gawrychowski, Damian Straszak

TL;DR
This paper introduces new algorithms for approximate pattern matching in LZW compressed texts that outperform previous methods, achieving sub-quadratic time complexities for both Hamming and edit distances using a periodicity-based approach.
Contribution
The paper presents the first sub-quadratic algorithms for approximate pattern matching in LZW compressed texts, utilizing a novel periodicity-based technique applicable directly to compressed data.
Findings
Achieves O(nm^0.5k^2) time for Hamming distance
Achieves O(nm^0.5k^3) time for edit distance
Uses linear space and improves over previous O(nm) solutions
Abstract
Given an LZW/LZ78 compressed text, we want to find an approximate occurrence of a given pattern of length m. The goal is to achieve time complexity depending on the size n of the compressed representation of the text instead of its length. We consider two specific definitions of approximate matching, namely the Hamming distance and the edit distance, and show how to achieve O(nm^0.5k^2) and O(nm^0.5k^3) running time, respectively, where k is the bound on the distance. Both algorithms use just linear space. Even for very small values of k, the best previously known solutions required O(nm) time. Our main contribution is applying a periodicity-based argument in a way that is computationally effective even if we need to operate on a compressed representation of a string, while the previous solutions were either based on a dynamic programming, or a black-box application of tools developed…
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.
Taxonomy
TopicsAlgorithms and Data Compression · Network Packet Processing and Optimization · DNA and Biological Computing
