Abstract
We give an alphabet-independent optimal parallel algorithm for the searching phase of three dimensional pattern-matching. All occurrences of a three dimensional pattern P of shape m×m×m in a text T of shape n×n×n are to be found. Our algorithm works in log m time with O(N/log(m)) processors of a CREW PRAM, where N=n3. The searching phase in three dimensions explores classification of two-dimensional periodicities of the cubic pattern. Some new projection techniques are developed to deal with three dimensions. The periodicites of the patern with respect to its faces are investigated. The nonperiodicities imply some sparseness properties, while periodicities imply other special useful properties (i.e. monotonicity) of the set of occurrences. Both types of properties are useful in deriving an efficient algorithm.The search phase is preceeded by the preprocessing phase (computation of the witness table). Our main results concern the searching phase, however we present shortly a new approach to the second phase also. Usefullness of the dictionaries of basic factors (DBF's), see [7], in the computation of the three dimensional witness table is presented. The DBF approach gains simplicity at the expense of a small increase in time. It gives a (nonoptimal) O(log(m)) time algorithm using m processors of a CRCW PRAM. The alphabet-independent optimal preprocessing is very complex even in the case of two dimensions, see [9]. For large alphabets the DBF's give assymptotically the same complexity as the (alphabet-dependent) suffix trees approach (but avoids suffix trees and is simpler). However the basic advantage of the DBF approach is its simplicity of dealing with three (or more) dimensions.The algorithm can be easily adjusted to the case of unequally sided patterns.
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have
Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.