Approximating the Longest Common Subsequence problem within a sub-polynomial factor in linear time
The Longest Common Subsequence (LCS) of two strings is a fundamental string similarity measure with a classical dynamic programming solution taking quadratic time. Despite significant efforts, little progress was made in improving the runtime. Even in the realm of approximation, not much was known for linear time algorithms beyond the trivial √(n)-approximation. Recent breakthrough result provided a n^0.497-factor approximation algorithm [HSSS19], which was more recently improved to a n^0.4-factor one [BCD21]. The latter paper also showed a n^2-2.5α time algorithm which outputs a n^α approximation to the LCS, but so far no sub-polynomial approximation is known in truly subquadratic time. In this work, we show an algorithm which runs in O(n) time, and outputs a n^o(1)-factor approximation to LCS(x,y), with high probability, for any pair of length n input strings. Our entire algorithm is merely an efficient black-box reduction to the Block-LIS problem, introduced very recently in [ANSS21], and solving the Block-LIS problem directly.
READ FULL TEXT