Index of /blast-1.4/gish/dfa
Name Last modified Size Description
Parent Directory -
Makefile 13-Feb-1995 09:05 811
accepts.c 08-May-1995 09:04 1.8K
check.c 08-May-1995 09:04 665
contains.c 08-May-1995 09:04 2.2K
dfa.3 30-Sep-1998 15:55 23K
dfa.3.pdf 30-Sep-1998 15:55 24K
dfa.3.ps 30-Sep-1998 15:55 61K
dfa.c 22-May-1995 10:54 30K
dfatest.c 08-May-1995 09:04 2.8K
dump.c 22-May-1995 10:23 3.1K
errstr.c 08-May-1995 09:04 1.4K
extent.c 08-May-1995 09:04 777
fscanf.c 08-May-1995 09:04 601
libinp.msc 18-Feb-1992 10:28 154
makefile.msc 18-Feb-1992 10:28 1.2K
makefile.msw 18-Feb-1992 10:28 1.1K
nextstat.c 08-May-1995 09:04 946
opstate.c 08-May-1995 09:04 335
perror.c 08-May-1995 09:04 637
pscanf.c 08-May-1995 09:04 1.4K
scanf.c 08-May-1995 09:04 654
size.c 08-May-1995 09:04 951
sscanf.c 08-May-1995 09:04 1.4K
This DFA (deterministic finite-state automata) function library provides a
general purpose facility for searching for one or more fixed- or
variable-length strings expressed in arbitrary, user-defined alphabets.
The computational complexity (essentially the speed) of searching for
multiple strings is the same as searching for a single string; and initial
construction of the DFA requires time and storage that are no worse than
proportional to the sum of the lengths of the strings.
The DFA library was used by early versions of BLAST (Altschul et al., 1990)
for biological sequence similarity searching. As such, the fixed-length
words used by BLAST do not exercise the full potential of the DFA library.
For NCBI BLAST 1.4, the dfa functionality was integrated into the "gish"
library. To compile the code, please start higher up in this directory
hierarchy at http://blast.wustl.edu/blast-1.4 Minimally one needs the
"ncbi" library and the "gish" library. Hopefully it's not too onerous
(and oderous) a task to strip out everything else but the DFA functions
if that's all that is desired.
A variant of the DFA library is still used today in WU-BLAST 2.0.
=================================
CAVEAT EMPTOR: the documentation file, dfa.3, a UNIX-style manual page,
has not been closely examined for consistency with the source code.
The DFA function library distribution includes the following files:
README
Makefile - makefile for SunOS and other UNIXes
dfa.3 - manual page (nroff -man macros) for section 3 of the manual
dfa.h - generally used header file
dfa.c - core functions (dfa_new,dfa_begin,dfa_add,dfa_close)
Additional source files:
accepts.c
contains.c
destruct.c
dump.c
check.c
nextstat.c
errstr.c
extent.c
fscanf.c
perror.c
pscanf.c
scanf.c
size.c
sscanf.c
dfatest.c - a small test program (not even close to being comprehensive!)
When compiling, the C preprocessor variable DFA_THENEED4SPEED can be defined
to omit some error checking for a modest improvement in execution speed.
Warren Gish
September 15, 1991