Fast parallel algorithms for approximate string matching

Given a text string, a much shorter pattern string, and an integer k , parallel algorithms for finding all occurrences of the pattern string in the text string with at most A; differences (as defined by edit distance) are discussed. First, a real-time parallel algorithm, which could be implemented on a systolic array using m (the length of the pattern string) very simple processing elements, is proposed. After the algorithm gets started, it outputs the minimum edit distance from the pattern string to a substring of the text string at each time step. Thus, the algorithm is well-suited for real-time searching of text databases or biological nucleic acid sequence databases. Second, several different ways for solving the same problem with different CRCW-PRAM assumptions (priority model, combination model, and common — value model) are developed. This class of algorithms uses 0 ( m x n) or 0 ( m x m x n) processors and achieve a time complexity of 0(k) . Key words, approximate string matching, edit distance, systolic computation, CRCW-PRAM models.