A Faster Subquadratic Algorithm for the Longest Common Increasing Subsequence Problem
The Longest Common Increasing Subsequence (LCIS) is a variant of the classical Longest Common Subsequence (LCS), in which we additionally require the common subsequence to be strictly increasing. While the well-known "Four Russians" technique can be used to find LCS in subquadratic time, it does not seem directly applicable to LCIS. Recently, Duraj [STACS 2020] used a completely different method based on the combinatorial properties of LCIS to design an 𝒪(n²(log log n)²/log^{1/6}n) time algorithm. We show that an approach based on exploiting tabulation (more involved than "Four Russians") can be used to construct an asymptotically faster 𝒪(n² log log n/√{log n}) time algorithm. As our solution avoids using the specific combinatorial properties of LCIS, it can be also adapted for the Longest Common Weakly Increasing Subsequence (LCWIS).
Longest Common Increasing Subsequence
Four Russians
Theory of computation~Design and analysis of algorithms
4:1-4:12
Regular Paper
Anadi
Agrawal
Anadi Agrawal
Institute of Computer Science, University of Wrocław, Poland
Paweł
Gawrychowski
Paweł Gawrychowski
Institute of Computer Science, University of Wrocław, Poland
10.4230/LIPIcs.ISAAC.2020.4
Amir Abboud, Arturs Backurs, and Virginia Vassilevska Williams. Tight hardness results for LCS and other sequence similarity measures. In 56th FOCS, pages 59-78, 2015.
Amir Abboud and Karl Bringmann. Tighter connections between formula-SAT and shaving logs. In 45th ICALP, pages 8:1-8:18, 2018.
Vladimir Arlazarov, Yefim Dinitz, M. A. Kronrod, and Igor Faradžev. On economical construction of the transitive closure of an oriented graph. Doklady Akademii Nauk, 194:487–488, 1970.
Jon Louis Bentley and Andrew Chi-Chih Yao. An almost optimal algorithm for unbounded searching. Inf. Process. Lett., 5(3):82-87, 1976.
Philip Bille and Martin Farach-Colton. Fast and compact regular expression matching. Theor. Comput. Sci., 409(3):486-496, 2008.
Philip Bille and Mikkel Thorup. Faster regular expression matching. In 36th ICALP, pages 171-182, 2009.
Karl Bringmann and Marvin Künnemann. Quadratic conditional lower bounds for string problems and dynamic time warping. In 56th FOCS, pages 79-97, 2015.
Mark R. Brown and Robert Endre Tarjan. A fast merging algorithm. J. ACM, 26(2):211-226, 1979.
Lech Duraj. A sub-quadratic algorithm for the longest common increasing subsequence problem. In 37th STACS, pages 41:1-41:18, 2020.
Lech Duraj, Marvin Künnemann, and Adam Polak. Tight conditional lower bounds for longest common increasing subsequence. Algorithmica, 81(10):3968-3992, 2019.
Szymon Grabowski. New tabulation and sparse dynamic programming based techniques for sequence similarity problems. Discret. Appl. Math., 212:96-103, 2016.
Scott Huddleston and Kurt Mehlhorn. A new data structure for representing sorted lists. Acta Informatica, 17:157-184, 1982.
Martin Kutz, Gerth Stølting Brodal, Kanela Kaligosi, and Irit Katriel. Faster algorithms for computing longest common increasing subsequences. J. Discrete Algorithms, 9(4):314-325, 2011.
Eugene W. Myers. A four Russians algorithm for regular expression pattern matching. J. ACM, 39(2):430-448, 1992.
Adam Polak. Why is it hard to beat 𝒪(n²) for longest common weakly increasing subsequence? Inf. Process. Lett., 132:1-5, 2018.
Yoshifumi Sakai. A linear space algorithm for computing a longest common increasing subsequence. Inf. Process. Lett., 99(5):203-207, 2006.
Robert A. Wagner and Michael J. Fischer. The string-to-string correction problem. J. ACM, 21(1):168-173, 1974.
R. Ryan Williams. Faster all-pairs shortest paths via circuit complexity. SIAM J. Comput., 47(5):1965-1985, 2018.
I-Hsuan Yang, Chien-Pin Huang, and Kun-Mao Chao. A fast algorithm for computing a longest common increasing subsequence. Inf. Process. Lett., 93(5):249-253, 2005.
Anadi Agrawal and Paweł Gawrychowski
Creative Commons Attribution 3.0 Unported license
https://creativecommons.org/licenses/by/3.0/legalcode