Estimating the Longest Increasing Sequence in Polylogarithmic Time

M. Saks, C. Seshadhri
2017 SIAM journal on computing (Print)  
Finding the length of the longest increasing subsequence (LIS) is a classic algorithmic problem. Let n denote the size of the array. Simple O(n log n) algorithms are known for this problem. What can a sublinear time algorithm achieve? We develop a polylogarithmic time randomized algorithm that for any constant δ > 0, estimates the length of the LIS of an array upto an additive error of δn. More precisely, the running time of the algorithm is (log n) c (1/δ) O(1/δ) where the exponent c is
more » ... xponent c is independent of δ. Previously, the best known polylogarithmic time algorithms could only achieve an additive n/2 approximation. The distance to monotonicity, which is the fractional size of the complement of the LIS, has been studied in depth by the streaming and property testing communities. Our polylogarithmic algorithm actually has a stronger guarantee, and gives (for any constant δ > 0) a multiplicative (1 + δ)-approximation to the distance to monotonicity. This is a significant improvement over the previously known 2-factor approximations.
doi:10.1137/130942152 fatcat:udn5bxlqv5ainczf3ma55mlngm