Abstract
The longest common substring problem consists in finding a longest string that appears as a (contiguous) substring of two input strings. We consider the dynamic variant of this problem, in which we are to maintain two dynamic strings S and T, each of length at most n, that undergo substitutions of letters, in order to be able to return a longest common substring after each substitution. Recently, Amir et al. [ESA 2019] presented a solution for this problem that needs only 𝒪̃(n^(2/3)) time per update. This brought the challenge of determining whether there exists a faster solution with polylogarithmic update time, or (as is the case for other dynamic problems), we should expect a polynomial (conditional) lower bound. We answer this question by designing a significantly faster algorithm that processes each substitution in amortized log^𝒪(1) n time with high probability. Our solution relies on exploiting the local consistency of the parsing of a collection of dynamic strings due to Gawrychowski et al. [SODA 2018], and on maintaining two dynamic trees with labeled bicolored leaves, so that after each update we can report a pair of nodes, one from each tree, of maximum combined weight, which have at least one common leafdescendant of each color. We complement this with a lower bound of Ω(log n/ log log n) for the update time of any polynomialsize data structure that maintains the LCS of two dynamic strings, even allowing amortization and randomization.
BibTeX  Entry
@InProceedings{charalampopoulos_et_al:LIPIcs:2020:12434,
author = {Panagiotis Charalampopoulos and Paweł Gawrychowski and Karol Pokorski},
title = {{Dynamic Longest Common Substring in Polylogarithmic Time}},
booktitle = {47th International Colloquium on Automata, Languages, and Programming (ICALP 2020)},
pages = {27:127:19},
series = {Leibniz International Proceedings in Informatics (LIPIcs)},
ISBN = {9783959771382},
ISSN = {18688969},
year = {2020},
volume = {168},
editor = {Artur Czumaj and Anuj Dawar and Emanuela Merelli},
publisher = {Schloss DagstuhlLeibnizZentrum f{\"u}r Informatik},
address = {Dagstuhl, Germany},
URL = {https://drops.dagstuhl.de/opus/volltexte/2020/12434},
URN = {urn:nbn:de:0030drops124340},
doi = {10.4230/LIPIcs.ICALP.2020.27},
annote = {Keywords: string algorithms, dynamic algorithms, longest common substring}
}
Keywords: 

string algorithms, dynamic algorithms, longest common substring 
Collection: 

47th International Colloquium on Automata, Languages, and Programming (ICALP 2020) 
Issue Date: 

2020 
Date of publication: 

29.06.2020 