Skip to main content

Optimal parallel algorithms for Prefix Matching

  • Conference paper
  • First Online:
Automata, Languages and Programming (ICALP 1994)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 820))

Included in the following conference series:

  • 131 Accesses

Abstract

The Prefix Matching Problem is to determine, for each location in the text t, the longest prefix of a given pattern p which occurs beginning at that location. We present two work-optimal parallel algorithms for this problem. The first algorithm works for the case when the characters in p and t are drawn from an alphabet set of size polynomial in m + n, where m = ¦p¦ and n = ¦t¦; it takes O(log m) time, O(m 1+ε+n 1+ε) space, and does O(m + n) work, for any ε>0. The second algorithm works for unbounded alphabet sets and takes O(log2 m(log log m)3) time, O(m + n) space, and does O(m + n) work. These are the first known work-optimal algorithms for this problem.

The work of this author was supported in part by NSF grants CCR-8902221 and CCR-8906949.

The work of this author was supported in part by NSF/DARPA grant CCR-89-06949 and NSF grant CCR-91-03953.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Similar content being viewed by others

References

  1. A. Apostolico, C. Iliopoulos, G. Landau, B. Schieber and U. Vishkin. Parallel Construction of a Suffix Tree with Applications. Algorithmica 3, 1988, 347–365.

    Google Scholar 

  2. D. Breslauer. Fast parallel string prefix-matching. Technical Report, CWI, Amsterdam, 1993.

    Google Scholar 

  3. D. Breslauer, L. Colussi and L. Toniolo. Exact complexity of string prefix-matching. In Proceedings of Combinatorial Pattern Matching, 1993.

    Google Scholar 

  4. D. Breslauer and Z. Galil. An optimal O(log log m) time parallel string matching algorithm. SIAM J. Comput., 19(1990), pp. 1051–1058. Also in, O. Berkman, D. Breslauer, Z. Galil, B. Scheiber, and U. Vishkin. Highly Parallelizable Problems. In Proc. 21st ACM Symp. on Theory of Computing, 1989

    Google Scholar 

  5. D. Breslauer and Z. Galil. A lower bound for parallel string matching. SIAM J. Comput., Vol. 21, 1992, 856–862. Also, in Proc. of the 23rd ACM Symposium on Theory of Computing, 1991.

    Google Scholar 

  6. Z. Galil. Optimal Parallel Algorithms for String Matching. Proc. ACM Symposium on Theory of Computation, 1984. Also in Information and Control, Vol 67, 144–157, 1985.

    Google Scholar 

  7. Z. Galil and K. Park. Parallel two dimenensional pattern matching. Manuscript, 1993.

    Google Scholar 

  8. T. Hagerup. On saving space in parallel computation. Information Processing Letters, Vol 29, 1988, 327–329.

    Google Scholar 

  9. T. Hagerup. Fast deterministic processor allocation. To appear in the Proc. of the 4th Annual ACM Symposium on Discrete Algorithms, 1992.

    Google Scholar 

  10. Z. Kedem, G. Landau and K. Palem. Optimal parallel suffix-prefix matching algorithm and applications. Proc 1st Annual ACM Symposium on Parallel Algorithms and Architecture, 1989, 388–398.

    Google Scholar 

  11. D.E. Knuth, J. Morris, V. Pratt. Fast pattern matching in strings. SIAM Journal on Computing, 6(1973), 323–350.

    Google Scholar 

  12. R. Karp, R. Miller and A. Rosenberg. Rapid Identification of Repeated Patterns in Strings, Trees and Arrays. Proc 4th Annual ACM Symposium on Theory of Computation, 1972, 125–136.

    Google Scholar 

  13. M.G. Main and R.J. Lorentz. An O(n log n) algorithm for finding all repetitions in a string. Journal of Algorithms, 5, 1984, pp. 422–432.

    Google Scholar 

  14. S. Muthukrishnan and K. Palem. Highly efficient parallel dictionary matching. Proc. of the 5th ACM Symposium on Parallel Algorithms and Architectures, 1993.

    Google Scholar 

  15. P. Ragde. The parallel simplicity of compaction and chaining. In Proc. of the 17th International Colloquium on Automata, Languages and Programming, Lecture Notes in Computer Science, Vol. 443, pp. 744–751.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Serge Abiteboul Eli Shamir

Rights and permissions

Reprints and permissions

Copyright information

© 1994 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Hariharan, R., Muthukrishnan, S. (1994). Optimal parallel algorithms for Prefix Matching. In: Abiteboul, S., Shamir, E. (eds) Automata, Languages and Programming. ICALP 1994. Lecture Notes in Computer Science, vol 820. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-58201-0_69

Download citation

  • DOI: https://doi.org/10.1007/3-540-58201-0_69

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-58201-4

  • Online ISBN: 978-3-540-48566-7

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics