String Inference from the LCP Array
Juha K\"arkk\"ainen, Marcin Pi\k{a}tkowski, Simon J. Puglisi

TL;DR
This paper investigates the problem of inferring strings from LCP arrays, providing efficient algorithms for a generalized multiset cyclic string case and proving NP-completeness for more restricted cases.
Contribution
It introduces algorithms for inferring strings from generalized LCP arrays and establishes NP-completeness for validity testing in restricted scenarios.
Findings
Linear time algorithm for binary alphabet
Polynomial time algorithm for constant alphabet size
NP-completeness for restricted LCP array validity
Abstract
The suffix array, perhaps the most important data structure in modern string processing, is often augmented with the longest common prefix (LCP) array which stores the lengths of the LCPs for lexicographically adjacent suffixes of a string. Together the two arrays are roughly equivalent to the suffix tree with the LCP array representing the tree shape. In order to better understand the combinatorics of LCP arrays, we consider the problem of inferring a string from an LCP array, i.e., determining whether a given array of integers is a valid LCP array, and if it is, reconstructing some string or all strings with that LCP array. There are recent studies of inferring a string from a suffix tree shape but using significantly more information (in the form of suffix links) than is available in the LCP array. We provide two main results. (1) We describe two algorithms for inferring strings…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
