There are several main approaches to string processing.
One such approach is the labeling paradigm
\cite{karp-miller-rosenberg}, which
is based on assigning labels to some of the substrings of
a given string. If these labels are chosen consistently, they can enable
fast comparisons of substrings.
Until the first optimal parallel algorithm for suffix tree construction
was given in \cite{sahinalp-vishkin-94},
the labeling paradigm was considered not to
be competitive with other approaches.
In this paper we show that, this general method is also useful
for several central problems in the area of string processing:\\
$\bullet$ Approximate String Matching,\\
$\bullet$ Dynamic Dictionary Matching,\\
$\bullet$ Dynamic Text Indexing.
The approximate string matching problem deals with finding all substrings of
a text which match a pattern ``approximately'',
i.e., with at most $m$ differences. The differences can be in the form of
inserted, deleted, or replaced characters.
The text indexing problem deals with
finding all occurrences of a pattern in a text,
after the text is
preprocessed. In the {\it dynamic text indexing} problem,
updates to the text in the form of
insertions and deletions of substrings are permitted.
The dictionary matching problem deals with
finding all occurrences of each element of a set of
patterns in a text,
after the pattern set is preprocessed.
In the {\it dynamic dictionary matching} problem,
insertions and deletions of patterns to the pattern set are permitted.