A Linear-Time n^0.4-Approximation for Longest Common Subsequence

by   Karl Bringmann, et al.

We consider the classic problem of computing the Longest Common Subsequence (LCS) of two strings of length n. While a simple quadratic algorithm has been known for the problem for more than 40 years, no faster algorithm has been found despite an extensive effort. The lack of progress on the problem has recently been explained by Abboud, Backurs, and Vassilevska Williams [FOCS'15] and Bringmann and Künnemann [FOCS'15] who proved that there is no subquadratic algorithm unless the Strong Exponential Time Hypothesis fails. This has led the community to look for subquadratic approximation algorithms for the problem. Yet, unlike the edit distance problem for which a constant-factor approximation in almost-linear time is known, very little progress has been made on LCS, making it a notoriously difficult problem also in the realm of approximation. For the general setting, only a naive O(n^ε/2)-approximation algorithm with running time Õ(n^2-ε) has been known, for any constant 0 < ε≤ 1. Recently, a breakthrough result by Hajiaghayi, Seddighin, Seddighin, and Sun [SODA'19] provided a linear-time algorithm that yields a O(n^0.497956)-approximation in expectation; improving upon the naive O(√(n))-approximation for the first time. In this paper, we provide an algorithm that in time O(n^2-ε) computes an Õ(n^2ε/5)-approximation with high probability, for any 0 < ε≤ 1. Our result (1) gives an Õ(n^0.4)-approximation in linear time, improving upon the bound of Hajiaghayi, Seddighin, Seddighin, and Sun, (2) provides an algorithm whose approximation scales with any subquadratic running time O(n^2-ε), improving upon the naive bound of O(n^ε/2) for any ε, and (3) instead of only in expectation, succeeds with high probability.


page 1

page 2

page 3

page 4


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 str...

Longest common substring with approximately k mismatches

In the longest common substring problem we are given two strings of leng...

Upper Tail Analysis of Bucket Sort and Random Tries

Bucket Sort is known to run in expected linear time when the input keys ...

Approximating LCS in Linear Time: Beating the √(n) Barrier

Longest common subsequence (LCS) is one of the most fundamental problems...

Improved Approximation for Longest Common Subsequence over Small Alphabets

This paper investigates the approximability of the Longest Common Subseq...

How Packed Is It, Really?

The congestion of a curve is a measure of how much it zigzags around loc...

Longest Increasing Subsequence under Persistent Comparison Errors

We study the problem of computing a longest increasing subsequence in a ...

Please sign up or login with your details

Forgot password? Click here to reset