Function matching: algorithms, applications, and a lower bound

  • Authors:
  • Amihood Amir;Yonatan Aumann;Richard Cole;Moshe Lewenstein;Ely Porat

  • Affiliations:
  • Bar-Ilan University;Bar-Ilan University;New York University;Bar-Ilan University;Bar-Ilan University

  • Venue:
  • ICALP'03 Proceedings of the 30th international conference on Automata, languages and programming
  • Year:
  • 2003

Quantified Score

Hi-index 0.00

Visualization

Abstract

We introduce a new matching criterion - function matching - that captures several different applications. The function matching problem has as its input a text T of length n over alphabet ΣT and a pattern P = P[1]P[2] ... P[m] of length m over alphabet ΣP. We seek all text locations i for which, for some function f : ΣP → ΣT (f may also depend on i), the m-length substring that starts at i is equal to f(P[1])f(P[2]) ... f(P[m]). We give a randomized algorithm which, for any given constant k, solves the function matching problem in time O(n log n) with probability 1/nk of declaring a false positive. We give a deterministic algorithm whose time is O(n|ΣP| logm) and show that it is almost optimal in the newly formalized convolutions model. Finally, a variant of the third problem is solved by means of two-dimensional parameterized matching, for which we also give an efficient algorithm.