A prefix array for parameterized strings

Richard Beal, Donald A. Adjeroh, W.F. Smyth
2017 Journal of Discrete Algorithms  
A parameterized string (p-string) is a generalization of the traditional string over two alphabets: a constant alphabet and a parameter alphabet. A parameterized match (p-match) exists between two p-strings if the constants match exactly and there exists a bijection between the parameter symbols. Historically, p-strings have been employed for source code cloning, plagiarism detection, and biological sequence structural similarity. In this work, we identify the connection between the p-match and
more » ... music, one of several applications to motivate our study of holes in p-strings, and prefix array-based data structures for p-strings. First, we introduce the parameterized prefix array (pP A) for p-strings and its succinct representation, the compact parameterized prefix array (cpP A). We show an interesting construction of the cpP A via the parameterized longest previous factor (pLP F ), a more recently proposed array with connections to various pattern matching data structures and LZ factorization. Next, we introduce the parameterized string with holes (hp-string), needed to address a special form of indeterminate pattern matching with p-strings. Then, we show how to construct the compact prefix array for hp-strings. Finally, we discuss applications for our data structures.
doi:10.1016/j.jda.2016.11.002 fatcat:qptzx7ukmvhsdksohqk57tdqd4