EMBOSS: fuzztran

| ## EMBOSS: fuzztran

# Program fuzztran

## Function

Protein pattern search after translation

## Description

fuzztran uses PROSITE style protein patterns to search nucleic acid sequences translated in the specified frame(s).

Patterns are specifications of a (typically short) length of sequence to be found. They can specify a search for an exact sequence or they can allow various ambiguities, matches to variable lengths of sequence and repeated subsections of the sequence.

fuzztran intelligently selects the optimum searching algorithm to use, depending on the complexity of the search pattern specified.

## Usage

Here is a sample session with fuzztran, using all options.

    % fuzztran -opt
    Protein pattern search after translation
    Input sequence(s): embl:rnops
    Translation frames
             1 : 1
             2 : 2
             3 : 3
             F : Forward three frames
            -1 : -1
            -2 : -2
            -3 : -3
             R : Reverse three frames
             6 : All six frames
    Frame(s) to translate [1]: f
    Genetic codes
             0 : Standard
             1 : Standard (with alternative initiation codons)
             2 : Vertebrate Mitochondrial
             3 : Yeast Mitochondrial
             4 : Mold, Protozoan, Coelenterate Mitochondrial and Mycoplasma/Spiroplasma
             5 : Invertebrate Mitochondrial
             6 : Ciliate Macronuclear and Dasycladacean
             9 : Echinoderm Mitochondrial
            10 : Euplotid Nuclear
            11 : Bacterial
            12 : Alternative Yeast Nuclear
            13 : Ascidian Mitochondrial
            14 : Flatworm Mitochondrial
            15 : Blepharisma Macronuclear
            16 : Chlorophycean Mitochondrial
            21 : Trematode Mitochondrial
            22 : Scenedesmus obliquus
            23 : Thraustochytrium Mitochondrial
    Code to use [0]:
    Search pattern: RA
    Number of mismatches [0]:
    Output file [rnops.fuzztran]:

## Command line arguments

       Mandatory qualifiers:
      [-sequence]          seqall     Sequence database USA
       -pattern            string     The standard IUPAC one-letter codes for the
                                      amino acids are used.
                                      The symbol `x' is used for a position where
                                      any amino acid is accepted.
                                      Ambiguities are indicated by listing the
                                      acceptable amino acids for a given position,
                                      between square parentheses `[ ]'. For
                                      example: [ALT] stands for Ala or Leu or Thr.
                                      Ambiguities are also indicated by listing
                                      between a pair of curly brackets `{ }' the
                                      amino acids that are not accepted at a gven
                                      position. For example: {AM} stands for any
                                      amino acid except Ala and Met.
                                      Each element in a pattern is separated from
                                      its neighbor by a `-'. (Optional in
                                      fuzztran)
                                      Repetition of an element of the pattern can
                                      be indicated by following that element with
                                      a numerical value or a numerical range
                                      between parenthesis. Examples: x(3)
                                      corresponds to x-x-x, x(2,4) corresponds to
                                      x-x or x-x-x or x-x-x-x.
                                      When a pattern is restricted to either the
                                      N- or C-terminal of a sequence, that pattern
                                      either starts with a `<' symbol or
                                      respectively ends with a `>' symbol.
                                      A period ends the pattern. (Optional in
                                      fuzztran).
                                      For example, [DE](2)HS{P}X(2)PX(2,4)C
       -mismatch           integer    Number of mismatches
      [-outfile]           report     (no help text) report value

       Optional qualifiers:
       -frame              menu       Frame(s) to translate
       -table              menu       Code to use

       Advanced qualifiers: (none)
       General qualifiers:
      -help                bool       report command line options. More
                                      information on associated and general
                                      qualifiers can be found with -help -verbose

Mandatory qualifiers | Allowed values | Default
--- | --- | ---
[-sequence] (Parameter 1) | Sequence database USA | Readable sequence(s) | Required
-pattern | The standard IUPAC one-letter codes for the amino acids are used. The symbol `x' is used for a position where any amino acid is accepted. Ambiguities are indicated by listing the acceptable amino acids for a given position, between square parentheses `[ ]'. For example: [ALT] stands for Ala or Leu or Thr. Ambiguities are also indicated by listing between a pair of curly brackets `{ }' the amino acids that are not accepted at a gven position. For example: {AM} stands for any amino acid except Ala and Met. Each element in a pattern is separated from its neighbor by a `-'. (Optional in fuzztran) Repetition of an element of the pattern can be indicated by following that element with a numerical value or a numerical range between parenthesis. Examples: x(3) corresponds to x-x-x, x(2,4) corresponds to x-x or x-x-x or x-x-x-x. When a pattern is restricted to either the N- or C-terminal of a sequence, that pattern either starts with a `<' symbol or respectively ends with a `>' symbol. A period ends the pattern. (Optional in fuzztran). For example, [DE](2)HS{P}X(2)PX(2,4)C | Any string is accepted | An empty string is accepted
-mismatch | Number of mismatches | Integer 0 or more | 0
[-outfile] (Parameter 2) | (no help text) report value | Report file |
Optional qualifiers | Allowed values | Default
-frame | Frame(s) to translate |
1 | (1)
2 | (2)
3 | (3)
F | (Forward three frames)
-1 | (-1)
-2 | (-2)
-3 | (-3)
R | (Reverse three frames)
6 | (All six frames)
| 1
-table | Code to use |
0 | (Standard)
1 | (Standard (with alternative initiation codons))
2 | (Vertebrate Mitochondrial)
3 | (Yeast Mitochondrial)
4 | (Mold, Protozoan, Coelenterate Mitochondrial and Mycoplasma/Spiroplasma)
5 | (Invertebrate Mitochondrial)
6 | (Ciliate Macronuclear and Dasycladacean)
9 | (Echinoderm Mitochondrial)
10 | (Euplotid Nuclear)
11 | (Bacterial)
12 | (Alternative Yeast Nuclear)
13 | (Ascidian Mitochondrial)
14 | (Flatworm Mitochondrial)
15 | (Blepharisma Macronuclear)
16 | (Chlorophycean Mitochondrial)
21 | (Trematode Mitochondrial)
22 | (Scenedesmus obliquus)
23 | (Thraustochytrium Mitochondrial)
| 0
Advanced qualifiers | Allowed values | Default
(none)

## Input file format

Patterns for fuzztran are based on the format of pattern used in the PROSITE database, with the difference that the terminating dot '.' and the hyphens, '-', between the characters are optional.

The PROSITE pattern definition from the PROSITE documentation follows.

- The standard IUPAC one-letter codes for the amino acids are used.
- The symbol `x' is used for a position where any amino acid is accepted.
- Ambiguities are indicated by listing the acceptable amino acids for a given position, between square parentheses `[ ]'. For example: [ALT] stands for Ala or Leu or Thr.
- Ambiguities are also indicated by listing between a pair of curly brackets `{ }' the amino acids that are not accepted at a given position. For example: {AM} stands for any amino acid except Ala and Met.
- Each element in a pattern is separated from its neighbor by a `-'. (Optional in fuzztran).
- Repetition of an element of the pattern can be indicated by following that element with a numerical value or a numerical range between parenthesis. Examples: x(3) corresponds to x-x-x, x(2,4) corresponds to x-x or x-x-x or x-x-x-x.
- When a pattern is restricted to either the N- or C-terminal of a sequence, that pattern either starts with a `<' symbol or respectively ends with a `>' symbol.
- A period ends the pattern. (Optional in fuzztran).

For example, you can look for the pattern:

    [DE](2)HS{P}X(2)PX(2,4)C

This means: Two Asps or Glus in any order followed by His, Ser, any residue other then Pro, then two of any residue followed by Pro followed by two to four of any residue followed by Cys.

The search is case-independent, so 'AAA' matches 'aaa'.

## Output file format

The output is a standard EMBOSS report file.

The results can be output in one of several styles by using the command-line qualifier -rformat xxx, where 'xxx' is replaced by the name of the required format. The available format names are: embl, genbank, gff, pir, swiss, trace, listfile, dbmotif, diffseq, excel, feattable, motif, regions, seqtable, simple, srs, table, tagseq

See: http://www.uk.embnet.org/Software/EMBOSS/Themes/ReportFormats.html for further information on report formats.

By default fuzztran writes a 'table' report file.

The output from the above example is:

    ########################################
    # Program: fuzztran
    # Rundate: Thu Apr 11 13:46:20 2002
    # Report_file: rnops.fuzztran
    ########################################

    #=======================================
    #
    # Sequence: RNOPS     from: 1   to: 1493
    # HitCount: 9
    #
    # Pattern: RA
    # Mismatch: 0
    # TransTable: 0
    # Frames: F
    #
    #=======================================

      Start     End   Score Mismatch  Frame PStart   PEnd Translation
         97     102       2        .      1     33     34 RA
        133     138       2        .      1     45     46 RA
        421     426       2        .      1    141    142 RA
        625     630       2        .      1    209    210 RA
        835     840       2        .      1    279    280 RA
        919     924       2        .      1    307    308 RA
        227     232       2        .      2     76     77 RA
        752     757       2        .      2    251    252 RA
         72      77       2        .      3     24     25 RA

    #---------------------------------------
    #---------------------------------------

## Data files

EMBOSS data files are distributed with the application and stored in the standard EMBOSS data directory, which is defined by EMBOSS environment variable EMBOSS_DATA.

Users can provide their own data files in their own directories. Project specific files can be put in the current directory, or for tidier directory listings in a subdirectory called ".embossdata". Files for all EMBOSS runs can be put in the user's home directory, or again in a subdirectory called ".embossdata".

The directories are searched in the following order:

- . (your current directory)
- .embossdata (under your current directory)
- ~/ (your home directory)
- ~/.embossdata

The Genetic Code data files are based on the NCBI genetic code tables. Their names and descriptions are:

EGC.0
  Standard (Differs from GC.1 in that it only has initiation site 'AUG')
EGC.1
  Standard
EGC.2
  Vertebrate Mitochondrial
EGC.3
  Yeast Mitochondrial
EGC.4
  Mold, Protozoan, Coelenterate Mitochondrial and Mycoplasma/Spiroplasma
EGC.5
  Invertebrate Mitochondrial
EGC.6
  Ciliate Macronuclear and Dasycladacean
EGC.9
  Echinoderm Mitochondrial
EGC.10
  Euplotid Nuclear
EGC.11
  Bacterial
EGC.12
  Alternative Yeast Nuclear
EGC.13
  Ascidian Mitochondrial
EGC.14
  Flatworm Mitochondrial
EGC.15
  Blepharisma Macronuclear

The format of these files is very simple.

It consists of several lines of optional comments, each starting with a '#' character.

These are followed the line: 'Genetic Code [n]', where 'n' is the number of the genetic code file.

This is followed by the description of the code and then by four lines giving the IUPAC one-letter code of the translated amino acid, the start codons (indicdated by an 'M') and the three bases of the codon, lined up one on top of the other.

For example:

    ------------------------------------------------------------------------------
    # Genetic Code Table
    #
    # Obtained from: http://www.ncbi.nlm.nih.gov/collab/FT/genetic_codes.html
    # and: http://www3.ncbi.nlm.nih.gov/htbin-post/Taxonomy/wprintgc?mode=c
    #
    # Differs from Genetic Code [1] only in that the initiation sites have been
    # changed to only 'AUG'

    Genetic Code [0]
    Standard

    AAs  =   FFLLSSSSYY**CC*WLLLLPPPPHHQQRRRRIIIMTTTTNNKKSSRRVVVVAAAADDEEGGGG
    Starts = -----------------------------------M----------------------------
    Base1  = TTTTTTTTTTTTTTTTCCCCCCCCCCCCCCCCAAAAAAAAAAAAAAAAGGGGGGGGGGGGGGGG
    Base2  = TTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGG
    Base3  = TCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAG
    ------------------------------------------------------------------------------

## Notes

None.

## References

None.

## Warnings

When translating using non-standard genetic code table, always check the table carefully for deviations from your particular organism's code.

## Diagnostic Error Messages

None.

## Exit status

It always exits with status 0.

## Known bugs

None.

## See also

Program name | Description
--- | ---
antigenic | Finds antigenic sites in proteins
digest | Protein proteolytic enzyme or reagent cleavage digest
dreg | regular expression search of a nucleotide sequence
fuzznuc | Nucleic acid pattern search
fuzzpro | Protein pattern search
helixturnhelix | Report nucleic acid binding motifs
marscan | Finds MAR/SAR sites in nucleic sequences
oddcomp | Finds protein sequence regions with a biased composition
patmatdb | Search a protein sequence with a motif
patmatmotifs | Search a PROSITE motif database with a protein sequence
pepcoil | Predicts coiled coil regions
preg | Regular expression search of a protein sequence
pscan | Scans proteins using PRINTS
sigcleave | Reports protein signal cleavage sites

Other EMBOSS programs allow you to search for regular expression patterns but may be less easy for the user who has never used regular expressions before:

- dreg - Regular expression search of a nucleotide sequence
- preg - Regular expression search of a protein sequence

## Author(s)

This application was written by Alan Bleasby (ableasby@hgmp.mrc.ac.uk)

## History

Written (2000) - Alan Bleasby
'-usa' added (13 March 2001) - Gary Williams

## Target users

This program is intended to be used by everyone and everything, from naive users to embedded scripts.

## Comments