Results 1 
5 of
5
Dynamic Dictionary Matching
, 1993
"... We consider the dynamic dictionary matching problem. We are given a set of pattern strings (the dictionary) that can change over time; that is, we can insert a new pattern into the dictionary or delete a pattern from it. Moreover, given a text string, we must be able to find all occurrences of any p ..."
Abstract

Cited by 48 (8 self)
 Add to MetaCart
We consider the dynamic dictionary matching problem. We are given a set of pattern strings (the dictionary) that can change over time; that is, we can insert a new pattern into the dictionary or delete a pattern from it. Moreover, given a text string, we must be able to find all occurrences of any pattern of the dictionary in the text. Let D 0 be the empty dictionary. We present an algorithm that performs any sequence of the following operations in the given time bounds: (1) insert(p; D i01 ): Insert pattern p[1; m] into the dictionary D i01 . D i is the dictionary after the operation. The time complexity is O(m log jD i j). (2) delete(p; D i01 ): Delete pattern p[1; m] from the dictionary D i01 . D i is the dictionary after the operation. The time complexity is O(m log jD i01 j). (3) search(t; D i ): Search text t[1; n] for all occurrences of the patterns of dictionary D i . The time complexity is O((n + tocc) log jD i j), where tocc is the total number of occurrences of patterns i...
Programmable Systolic Arrays
 Brown University
, 1991
"... This paper presents the New Systolic Language as a general solution to the problem systolic programming. The language provides a simple programming interface for systolic algorithms suitable for di erent hardware platforms and software simulators. The New Systolic Language hides the details and pote ..."
Abstract

Cited by 18 (7 self)
 Add to MetaCart
This paper presents the New Systolic Language as a general solution to the problem systolic programming. The language provides a simple programming interface for systolic algorithms suitable for di erent hardware platforms and software simulators. The New Systolic Language hides the details and potential systolic data streams. Data ows and systolic cell programs for the coprocessor are integrated with host functions, enabling a single le to specify a complete systolic program. 1
Massively Parallel Biosequence Analysis
, 1993
"... Massive parallelism is required for the analysis of the rapidly growing biosequence databases. First, this paper compares and benchmarks methods for dynamic programming sequence analysis on several parallel platforms. Next, a new hidden Markov model method and its implementation on several paralle ..."
Abstract

Cited by 6 (2 self)
 Add to MetaCart
Massive parallelism is required for the analysis of the rapidly growing biosequence databases. First, this paper compares and benchmarks methods for dynamic programming sequence analysis on several parallel platforms. Next, a new hidden Markov model method and its implementation on several parallel machines is discussed. Finally, the results of a series of experiments using this massively parallel implementation are described.
Efficient Algorithms for Sequence Analysis
 Proc. Second Workshop on Sequences: Combinatorics, Compression. Securiry
, 1991
"... : We consider new algorithms for the solution of many dynamic programming recurrences for sequence comparison and for RNA secondary structure prediction. The techniques upon which the algorithms are based e#ectively exploit the physical constraints of the problem to derive more e#cient methods f ..."
Abstract

Cited by 1 (0 self)
 Add to MetaCart
: We consider new algorithms for the solution of many dynamic programming recurrences for sequence comparison and for RNA secondary structure prediction. The techniques upon which the algorithms are based e#ectively exploit the physical constraints of the problem to derive more e#cient methods for sequence analysis. 1. INTRODUCTION In this paper we consider algorithms for two problems in sequence analysis. The first problem is sequence alignment, and the second is the prediction of RNA structure. Although the two problems seem quite di#erent from each other, their solutions share a common structure, which can be expressed as a system of dynamic programming recurrence equations. These equations also can be applied to other problems, including text formatting and data storage optimization. We use a number of well motivated assumptions about the problems in order to provide e#cient algorithms. The primary assumption is that of concavity or convexity. The recurrence relations for bo...
Biological Sequence Comparison: An Overview of Techniques
, 1994
"... Introduction Molecular biologists often want to compare two or more DNA or amino acid sequences to measure their similarity. Sequences which are similar may either have descended from a common evolutionary ancestor, or may have evolved to have a similar function (divergent and convergent evolution, ..."
Abstract

Cited by 1 (0 self)
 Add to MetaCart
Introduction Molecular biologists often want to compare two or more DNA or amino acid sequences to measure their similarity. Sequences which are similar may either have descended from a common evolutionary ancestor, or may have evolved to have a similar function (divergent and convergent evolution, respectively). The first kind of similarity is called "homology", although the term is (loosely) used to cover the second kind of similarity, too. One may want to determine homology in order to reconstruct evolutionary trees. Another important application of similarity testing is to determine the function of an unknown protein or piece of DNA: one can compare the query sequence with a database of sequences whose function is known, and predict the function of the query sequence based on the most similar match. (This highlights the relevance of various string searching techniques which have been developed in computer science; see for example [27].) The question of how to define simila