HTML>

| fuzzpro

## Wiki

The master copies of EMBOSS documentation are available at http://emboss.open-bio.org/wiki/Appdocs on the EMBOSS Wiki.

Please help by correcting and extending the Wiki pages.

## Function

Search for patterns in protein sequences

## Description

fuzznuc searches for a specified PROSITE-style pattern in protein sequences. Such 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. One or more protein sequences are read from file. The output is a standard EMBOSS report file that includes data such as location and score of any matches.

## Algorithm

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

## Usage

Here is a sample session with fuzzpro

    % fuzzpro
    Search for patterns in protein sequences
    Input protein sequence(s): tsw:*
    Search pattern: [FY]-[LIV]-G-[DE]-E-A-Q-x-[RKQ](2)-G
    Output report [cru4_arath.fuzzpro]:

Go to the input files for this example
Go to the output files for this example

## Command line arguments

    Search for patterns in protein sequences
    Version: EMBOSS:6.6.0.0

       Standard (Mandatory) qualifiers:
      [-sequence]          seqall     Protein sequence(s) filename and optional
                                      format, or reference (input USA)
       -pattern            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 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
                                      fuzzpro).
                                      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
                                      fuzzpro).
                                      For example, [DE](2)HS{P}X(2)PX(2,4)C
      [-outfile]           report     [*.fuzzpro] Output report file name (default
                                      -rformat seqtable)

       Additional (Optional) qualifiers: (none)
       Advanced (Unprompted) qualifiers: (none)
       Associated qualifiers:

       "-sequence" associated qualifiers
       -sbegin1            integer    Start of each sequence to be used
       -send1              integer    End of each sequence to be used
       -sreverse1          boolean    Reverse (if DNA)
       -sask1              boolean    Ask for begin/end/reverse
       -snucleotide1       boolean    Sequence is nucleotide
       -sprotein1          boolean    Sequence is protein
       -slower1            boolean    Make lower case
       -supper1            boolean    Make upper case
       -scircular1         boolean    Sequence is circular
       -squick1            boolean    Read id and sequence only
       -sformat1           string     Input sequence format
       -iquery1            string     Input query fields or ID list
       -ioffset1           integer    Input start position offset
       -sdbname1           string     Database name
       -sid1               string     Entryname
       -ufo1               string     UFO features
       -fformat1           string     Features format
       -fopenfile1         string     Features file name

       "-pattern" associated qualifiers
       -pformat            string     File format
       -pmismatch          integer    Pattern mismatch
       -pname              string     Pattern base name

       "-outfile" associated qualifiers
       -rformat2           string     Report format
       -rname2             string     Base file name
       -rextension2        string     File name extension
       -rdirectory2        string     Output directory
       -raccshow2          boolean    Show accession number in the report
       -rdesshow2          boolean    Show description in the report
       -rscoreshow2        boolean    Show the score in the report
       -rstrandshow2       boolean    Show the nucleotide strand in the report
       -rusashow2          boolean    Show the full USA in the report
       -rmaxall2           integer    Maximum total hits to report
       -rmaxseq2           integer    Maximum hits to report for one sequence

       General qualifiers:
       -auto               boolean    Turn off prompts
       -stdout             boolean    Write first file to standard output
       -filter             boolean    Read first file from standard input, write
                                      first file to standard output
       -options            boolean    Prompt for standard and additional values
       -debug              boolean    Write debug output to program.dbg
       -verbose            boolean    Report some/full command line options
       -help               boolean    Report command line options and exit. More
                                      information on associated and general
                                      qualifiers can be found with -help -verbose
       -warning            boolean    Report warnings
       -error              boolean    Report errors
       -fatal              boolean    Report fatal errors
       -die                boolean    Report dying program messages
       -version            boolean    Report version number and exit

Qualifier | Type | Description | Allowed values | Default
--- | --- | --- | --- | ---
Standard (Mandatory) qualifiers
[-sequence] (Parameter 1) | seqall | Protein sequence(s) filename and optional format, or reference (input USA) | Readable sequence(s) | Required
-pattern | 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 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 fuzzpro). 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 fuzzpro). For example, [DE](2)HS{P}X(2)PX(2,4)C | Property value(s) |
[-outfile] (Parameter 2) | report | Output report file name | (default -rformat seqtable) | <*>.fuzzpro
Additional (Optional) qualifiers
(none)
Advanced (Unprompted) qualifiers
(none)
Associated qualifiers
"-sequence" associated seqall qualifiers
-sbegin1 -sbegin_sequence | integer | Start of each sequence to be used | Any integer value | 0
-send1 -send_sequence | integer | End of each sequence to be used | Any integer value | 0
-sreverse1 -sreverse_sequence | boolean | Reverse (if DNA) | Boolean value Yes/No | N
-sask1 -sask_sequence | boolean | Ask for begin/end/reverse | Boolean value Yes/No | N
-snucleotide1 -snucleotide_sequence | boolean | Sequence is nucleotide | Boolean value Yes/No | N
-sprotein1 -sprotein_sequence | boolean | Sequence is protein | Boolean value Yes/No | N
-slower1 -slower_sequence | boolean | Make lower case | Boolean value Yes/No | N
-supper1 -supper_sequence | boolean | Make upper case | Boolean value Yes/No | N
-scircular1 -scircular_sequence | boolean | Sequence is circular | Boolean value Yes/No | N
-squick1 -squick_sequence | boolean | Read id and sequence only | Boolean value Yes/No | N
-sformat1 -sformat_sequence | string | Input sequence format | Any string |
-iquery1 -iquery_sequence | string | Input query fields or ID list | Any string |
-ioffset1 -ioffset_sequence | integer | Input start position offset | Any integer value | 0
-sdbname1 -sdbname_sequence | string | Database name | Any string |
-sid1 -sid_sequence | string | Entryname | Any string |
-ufo1 -ufo_sequence | string | UFO features | Any string |
-fformat1 -fformat_sequence | string | Features format | Any string |
-fopenfile1 -fopenfile_sequence | string | Features file name | Any string |
"-pattern" associated pattern qualifiers
-pformat | string | File format | Any string |
-pmismatch | integer | Pattern mismatch | Any integer value | 0
-pname | string | Pattern base name | Any string |
"-outfile" associated report qualifiers
-rformat2 -rformat_outfile | string | Report format | Any string | seqtable
-rname2 -rname_outfile | string | Base file name | Any string |
-rextension2 -rextension_outfile | string | File name extension | Any string |
-rdirectory2 -rdirectory_outfile | string | Output directory | Any string |
-raccshow2 -raccshow_outfile | boolean | Show accession number in the report | Boolean value Yes/No | N
-rdesshow2 -rdesshow_outfile | boolean | Show description in the report | Boolean value Yes/No | N
-rscoreshow2 -rscoreshow_outfile | boolean | Show the score in the report | Boolean value Yes/No | Y
-rstrandshow2 -rstrandshow_outfile | boolean | Show the nucleotide strand in the report | Boolean value Yes/No | Y
-rusashow2 -rusashow_outfile | boolean | Show the full USA in the report | Boolean value Yes/No | N
-rmaxall2 -rmaxall_outfile | integer | Maximum total hits to report | Any integer value | 0
-rmaxseq2 -rmaxseq_outfile | integer | Maximum hits to report for one sequence | Any integer value | 0
General qualifiers
-auto | boolean | Turn off prompts | Boolean value Yes/No | N
-stdout | boolean | Write first file to standard output | Boolean value Yes/No | N
-filter | boolean | Read first file from standard input, write first file to standard output | Boolean value Yes/No | N
-options | boolean | Prompt for standard and additional values | Boolean value Yes/No | N
-debug | boolean | Write debug output to program.dbg | Boolean value Yes/No | N
-verbose | boolean | Report some/full command line options | Boolean value Yes/No | Y
-help | boolean | Report command line options and exit. More information on associated and general qualifiers can be found with -help -verbose | Boolean value Yes/No | N
-warning | boolean | Report warnings | Boolean value Yes/No | Y
-error | boolean | Report errors | Boolean value Yes/No | Y
-fatal | boolean | Report fatal errors | Boolean value Yes/No | Y
-die | boolean | Report dying program messages | Boolean value Yes/No | Y
-version | boolean | Report version number and exit | Boolean value Yes/No | N

## Input file format

fuzzpro reads in one or more protein sequences.

The input is a standard EMBOSS sequence query (also known as a 'USA').

Major sequence database sources defined as standard in EMBOSS installations include srs:embl, srs:uniprot and ensembl

Data can also be read from sequence output in any supported format written by an EMBOSS or third-party application.

The input format can be specified by using the command-line qualifier `-sformat xxx`, where 'xxx' is replaced by the name of the required format. The available format names are: gff (gff3), gff2, embl (em), genbank (gb, refseq), ddbj, refseqp, pir (nbrf), swissprot (swiss, sw), dasgff and debug.

See: http://emboss.sf.net/docs/themes/SequenceFormats.html for further information on sequence formats.

### Input files for usage example

'tsw:*' is a sequence entry in the example protein database 'tsw'

### Pattern specification

Patterns for fuzzpro 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 neighbour by a `-'. (Optional in fuzzpro).
- 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 fuzzpro).
- All other characters, including spaces are not allowed.

For example, in SWISSPROT entry 100K_RAT 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, dasgff, debug, listfile, dbmotif, diffseq, draw, restrict, excel, feattable, motif, nametable, regions, seqtable, simple, srs, table, tagseq.

See: http://emboss.sf.net/docs/themes/ReportFormats.html for further information on report formats.

By default fuzzpro writes a 'seqtable' report file.

### Output files for usage example

### File: cru4_arath.fuzzpro

    ########################################
    # Program: fuzzpro
    # Rundate: Mon 15 Jul 2013 12:00:00
    # Commandline: fuzzpro
    #    -sequence "tsw:*"
    #    -pattern "[FY]-[LIV]-G-[DE]-E-A-Q-x-[RKQ](2)-G"
    # Report_format: seqtable
    # Report_file: cru4_arath.fuzzpro
    ########################################

    #=======================================
    #
    # Sequence: ACTB1_TAKRU     from: 1   to: 375
    # HitCount: 1
    #
    # Pattern_name Mismatch Pattern
    # pattern             0 [FY]-[LIV]-G-[DE]-E-A-Q-x-[RKQ](2)-G
    #
    #=======================================

      Start     End Pattern                                      Mismatch Sequence
         53      63 pattern:[FY]-[LIV]-G-[DE]-E-A-Q-x-[RKQ](2)-G        . YVGDEAQSKRG

    #---------------------------------------
    #---------------------------------------
    #=======================================
    #
    # Sequence: ACTB2_TAKRU     from: 1   to: 375
    # HitCount: 1
    #
    # Pattern_name Mismatch Pattern
    # pattern             0 [FY]-[LIV]-G-[DE]-E-A-Q-x-[RKQ](2)-G
    #
    #=======================================

      Start     End Pattern                                      Mismatch Sequence
         53      63 pattern:[FY]-[LIV]-G-[DE]-E-A-Q-x-[RKQ](2)-G        . YVGDEAQSKRG

    #---------------------------------------
    #---------------------------------------
    #=======================================
    #
    # Sequence: ACTB3_TAKRU     from: 1   to: 375
    # HitCount: 1
    #
    # Pattern_name Mismatch Pattern
    # pattern             0 [FY]-[LIV]-G-[DE]-E-A-Q-x-[RKQ](2)-G
    #
    #=======================================

      [Part of this file has been deleted for brevity]

    #
    # Sequence: ACTSA_TAKRU     from: 1   to: 377
    # HitCount: 1
    #
    # Pattern_name Mismatch Pattern
    # pattern             0 [FY]-[LIV]-G-[DE]-E-A-Q-x-[RKQ](2)-G
    #
    #=======================================

      Start     End Pattern                                      Mismatch Sequence
         55      65 pattern:[FY]-[LIV]-G-[DE]-E-A-Q-x-[RKQ](2)-G        . YVGDEAQSKRG

    #---------------------------------------
    #---------------------------------------
    #=======================================
    #
    # Sequence: ACTSB_TAKRU     from: 1   to: 377
    # HitCount: 1
    #
    # Pattern_name Mismatch Pattern
    # pattern             0 [FY]-[LIV]-G-[DE]-E-A-Q-x-[RKQ](2)-G
    #
    #=======================================

      Start     End Pattern                                      Mismatch Sequence
         55      65 pattern:[FY]-[LIV]-G-[DE]-E-A-Q-x-[RKQ](2)-G        . YVGDEAQSKRG

    #---------------------------------------
    #---------------------------------------
    #=======================================
    #
    # Sequence: ACTS_OREMO     from: 1   to: 377
    # HitCount: 1
    #
    # Pattern_name Mismatch Pattern
    # pattern             0 [FY]-[LIV]-G-[DE]-E-A-Q-x-[RKQ](2)-G
    #
    #=======================================

      Start     End Pattern                                      Mismatch Sequence
         55      65 pattern:[FY]-[LIV]-G-[DE]-E-A-Q-x-[RKQ](2)-G        . YVGDEAQSKRG

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

    #---------------------------------------
    # Total_sequences: 100
    # Total_length: 37225
    # Reported_sequences: 8
    # Reported_hitcount: 8
    #---------------------------------------

## Data files

None.

## Notes

None.

## References

None.

## Warnings

None.

## Diagnostic Error Messages

None.

## Exit status

It always exits with a status of 0.

## Known bugs

None.

## See also

Program name | Description
--- | ---
antigenic | Find antigenic sites in proteins
epestfind | Find PEST motifs as potential proteolytic cleavage sites
fuzztran | Search for patterns in protein sequences (translated)
patmatdb | Search protein sequences with a sequence motif
patmatmotifs | Scan a protein sequence with motifs from the PROSITE database
preg | Regular expression search of protein sequence(s)
pscan | Scan protein sequence(s) with fingerprints from the PRINTS database
sigcleave | Report on signal cleavage sites in a protein sequence

## Author(s)

Alan Bleasby
European Bioinformatics Institute, Wellcome Trust Genome Campus, Hinxton, Cambridge CB10 1SD, UK

Please report all bugs to the EMBOSS bug team (emboss-bug © emboss.open-bio.org) not to the original author.

## 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

None