License: Creative Commons Attribution 4.0 International license (CC BY 4.0)
When quoting this document, please refer to the following
DOI: 10.4230/LIPIcs.ESA.2022.35
URN: urn:nbn:de:0030-drops-169738
URL: http://dagstuhl.sunsite.rwth-aachen.de/volltexte/2022/16973/
Charalampopoulos, Panagiotis ;
Kociumaka, Tomasz ;
Radoszewski, Jakub ;
Pissis, Solon P. ;
Rytter, Wojciech ;
Waleń, Tomasz ;
Zuba, Wiktor
Approximate Circular Pattern Matching
Abstract
We investigate the complexity of approximate circular pattern matching (CPM, in short) under the Hamming and edit distance. Under each of these two basic metrics, we are given a length-n text T, a length-m pattern P, and a positive integer threshold k, and we are to report all starting positions (called occurrences) of fragments of T that are at distance at most k from some cyclic rotation of P. In the decision version of the problem, we are to check if there is any such occurrence. All previous results for approximate CPM were either average-case upper bounds or heuristics, with the exception of the work of Charalampopoulos et al. [CKP^+, JCSS'21], who considered only the Hamming distance. For the reporting version of the approximate CPM problem, under the Hamming distance we improve upon the main algorithm of [CKP^+, JCSS'21] from ?(n+(n/m) ⋅ k⁴) to ?(n+(n/m) ⋅ k³ log log k) time; for the edit distance, we give an ?(nk²)-time algorithm. Notably, for the decision versions and wide parameter-ranges, we give algorithms whose complexities are almost identical to the state-of-the-art for standard (i.e., non-circular) approximate pattern matching:
- For the decision version of the approximate CPM problem under the Hamming distance, we obtain an ?(n+(n/m) ⋅ k² log k / log log k)-time algorithm, which works in ?(n) time whenever k = ?(√{m log log m / log m}). In comparison, the fastest algorithm for the standard counterpart of the problem, by Chan et al. [CGKKP, STOC’20], runs in ?(n) time only for k = ?(√m). We achieve this result via a reduction to a geometric problem by building on ideas from [CKP^+, JCSS'21] and Charalampopoulos et al. [CKW, FOCS'20].
- For the decision version of the approximate CPM problem under the edit distance, the ?(nklog³ k) runtime of our algorithm near matches the ?(nk) runtime of the Landau-Vishkin algorithm [LV, J. Algorithms'89] for approximate pattern matching under edit distance; the latter algorithm remains the fastest known for k = Ω(m^{2/5}). As a stepping stone, we propose an ?(nklog³ k)-time algorithm for solving the Longest Prefix k'-Approximate Match problem, proposed by Landau et al. [LMS, SICOMP'98], for all k' ∈ {1,…,k}. Our algorithm is based on Tiskin’s theory of seaweeds [Tiskin, Math. Comput. Sci.'08], with recent advancements (see Charalampopoulos et al. [CKW, FOCS'22]), and on exploiting the seaweeds' relation to Monge matrices.
In contrast, we obtain a conditional lower bound that suggests a polynomial separation between approximate CPM under the Hamming distance over the binary alphabet and its non-circular counterpart. We also show that a strongly subquadratic-time algorithm for the decision version of approximate CPM under edit distance would refute the Strong Exponential Time Hypothesis.
BibTeX - Entry
@InProceedings{charalampopoulos_et_al:LIPIcs.ESA.2022.35,
author = {Charalampopoulos, Panagiotis and Kociumaka, Tomasz and Radoszewski, Jakub and Pissis, Solon P. and Rytter, Wojciech and Wale\'{n}, Tomasz and Zuba, Wiktor},
title = {{Approximate Circular Pattern Matching}},
booktitle = {30th Annual European Symposium on Algorithms (ESA 2022)},
pages = {35:1--35:19},
series = {Leibniz International Proceedings in Informatics (LIPIcs)},
ISBN = {978-3-95977-247-1},
ISSN = {1868-8969},
year = {2022},
volume = {244},
editor = {Chechik, Shiri and Navarro, Gonzalo and Rotenberg, Eva and Herman, Grzegorz},
publisher = {Schloss Dagstuhl -- Leibniz-Zentrum f{\"u}r Informatik},
address = {Dagstuhl, Germany},
URL = {https://drops.dagstuhl.de/opus/volltexte/2022/16973},
URN = {urn:nbn:de:0030-drops-169738},
doi = {10.4230/LIPIcs.ESA.2022.35},
annote = {Keywords: approximate circular pattern matching, Hamming distance, edit distance}
}
Keywords: |
|
approximate circular pattern matching, Hamming distance, edit distance |
Collection: |
|
30th Annual European Symposium on Algorithms (ESA 2022) |
Issue Date: |
|
2022 |
Date of publication: |
|
01.09.2022 |