Optimal Pattern Matching on Meshes

Parallel pattern matching on a mesh-connected array of processors is considered. The problem is to find all occurrences of a pattern in a text. The input text is a string of n symbols placed in a √n×√n mesh, each processor storing one symbol. The pattern is stored similarly in a contiguous portion of the mesh. An algorithm solving the problem in time O(√n) is presented. It applies a novel technique to design parallel pattern-matching algorithms based on the notion of a pseudoperiod.

[1]  Russ Miller,et al.  Mesh Computer Algorithms for Computational Geometry , 1989, IEEE Trans. Computers.

[2]  Michael Kaufmann,et al.  Deterministic permutation routing on meshes , 1993, Proceedings of 1993 5th IEEE Symposium on Parallel and Distributed Processing.

[3]  F. Leighton,et al.  Introduction to Parallel Algorithms and Architectures: Arrays, Trees, Hypercubes , 1991 .

[4]  Fillia Makedon,et al.  A 2n−2 step algorithm for routing in ann ×n array with constant-size queues , 1995, SPAA '89.

[5]  Sajal K. Das,et al.  Book Review: Introduction to Parallel Algorithms and Architectures : Arrays, Trees, Hypercubes by F. T. Leighton (Morgan Kauffman Pub, 1992) , 1992, SIGA.

[6]  Zvi Galil,et al.  An Optimal O(log log n) Time Parallel String Matching Algorithm , 1990, SIAM J. Comput..

[7]  Mikhail J. Atallah,et al.  Graph Problems on a Mesh-Connected Processor Array , 1984, JACM.

[8]  Fillia Makedon,et al.  A 2n-2 Step Algorithm for Routing in an nxn Array with Constant Size Queues , 1989, SPAA.

[9]  Zvi Galil,et al.  Optimal parallel algorithms for string matching , 1984, STOC '84.

[10]  Xin He,et al.  Parallel algorithms for gray-scale image component labeling on a mesh-connected computer , 1992, SPAA '92.

[11]  Wojciech Rytter,et al.  Optimally fast parallel algorithms for preprocessing and pattern matching in one and two dimensions , 1993, Proceedings of 1993 IEEE 34th Annual Foundations of Computer Science.

[12]  Mikhail J. Atallah,et al.  Graph problems on a mesh-connected processor array (Preliminary Version) , 1982, STOC '82.

[13]  Christos Kaklamanis,et al.  Branch-and-bound and backtrack search on mesh-connected arrays of processors , 1992, SPAA '92.

[14]  Mikhail J. Atallah,et al.  Solving tree problems on a mesh-connected processor array , 1985, 26th Annual Symposium on Foundations of Computer Science (sfcs 1985).

[15]  Adi Shamir,et al.  An optimal sorting algorithm for mesh connected computers , 1986, STOC '86.

[16]  Uzi Vishkin,et al.  Optimal Parallel Pattern Matching in Strings , 2017, Inf. Control..

[17]  Joseph JáJá,et al.  An Introduction to Parallel Algorithms , 1992 .

[18]  Mikhail J. Atallah,et al.  Multisearch techniques for implementing data structures on a mesh-connected computer (preliminary version) , 1991, SPAA '91.

[19]  Sartaj Sahni,et al.  Finding Connected Components and Connected Ones on a Mesh-Connected Parallel Computer , 1980, SIAM J. Comput..

[20]  Zvi Galil,et al.  A lower bound for parallel string matching , 1991, STOC '91.