A framework for dynamic parameterized dictionary matching
Document Type
Conference Proceeding
Publication Date
6-1-2016
Abstract
Two equal-length strings S and S′ are a parameterized-match (p-match) iff there exists a one-to-one function that renames the characters in S to those in S′. Let P be a collection of d patterns of total length n characters that are chosen from an alphabet Σ of cardinality σ. The task is to index P such that we can support the following operations: ▪ search(T): given a text T, report all occurrences (j, Pi) such that there exists a pattern Pi ∈ P that is a p-match with the substring T[j, j + |Pi| - 1]. ▪ insert(Pi)/delete(Pi): modify the index when a pattern Pi is inserted/deleted. We present a linear-space index that occupies O(n log n) bits and supports (i) search(T) in worst-case O(|T| log2 n + occ) time, where occ is the number of occurrences reported, and (ii) insert(Pi) and delete(Pi) in amortized O(|Pi| polylog(n)) time. Then, we present a succinct index that occupies (1+o(1))n log σ+O(d log n) bits and supports (i) search(T) in worst-case O(|T| log2 n+occ) time, and (ii) insert(Pi) and delete(Pi) in amortized O(|Pi| polylog(n)) time. We also present results related to the semi-dynamic variant of the problem, where deletion is not allowed.
Publication Source (Journal or Book title)
Leibniz International Proceedings in Informatics, LIPIcs
First Page
10.1
Last Page
10.14
Recommended Citation
Ganguly, A., Hon, W., & Shah, R. (2016). A framework for dynamic parameterized dictionary matching. Leibniz International Proceedings in Informatics, LIPIcs, 53, 10.1-10.14. https://doi.org/10.4230/LIPIcs.SWAT.2016.10