the first step in gene expression , transcription , is mediated and regulated by transcription factors ( tfs ) , that bind dna in a sequence specific manner on transcription factor binding sites ( tfbss ) , usually located near the transcription start site ( tss ) of genes ( i.e. in the promoter region ) , but also in distal elements like enhancers or silencers . several studies aimed at the characterization of the dna binding specificity of tfs have been performed , from earlier studies able to identify single binding sites to large scale genome - wide experiments like chromatin immunoprecipitation coupled with genome tiling microarrays or next - generation sequencing . once a set of sites experimentally known to be recognized by a given tf has been collected , they can be used to build a motif , describing and generalizing the binding specificity of the tf . since the sites have usually the same size , a common approach is to align them and to build a profile [ or position specific weight matrix ( 1 ) ] , representing the frequency with which each nucleotide appears at each position of the alignment . several profiles are nowadays available in dedicated databases like transfac ( 2 ) or jaspar ( 3 ) and can be employed to scan genomic sequences to find novel candidate sites for the tf ( 1 ) . a typical computational issue is deciding , given a profile , if and when a nucleotide sequence can be considered a valid instance of the tfbss modeled by the profile itself . redundancy yields information , and while reliable predictions on a single sequence are nearly impossible without further considerations , analyses on sets of sequences ( e.g. promoters ) coming from co - regulated or co - expressed sequences are more likely to produce meaningful results . the rationale is that most of the genes should be the target of the same tf(s ) and their promoters should contain a number of binding sites for them significantly higher than some suitably computed expected number that would be obtained from a collection of unrelated genes or some random background model . this is the general strategy implemented in web - based tools like otfbs ( 4 ) and asap ( 5 ) . given a set of motif profiles , and a typical input consisting of a set of sequences ( e.g. promoters ) from genes co - regulated or co - expressed , a likelihood score can be computed ( 1 ) , expressing how well each oligo of the input sequences fits the descriptors and thus predict tfbss locations . the main issue at this point is setting suitable likelihood thresholds for  yes or no decisions . setting high - thresholds increases specificity at the price of low sensitivity , and vice versa , setting low - thresholds yields too many false positives ( 47 ) . other than setting matrix - specific thresholds , another possible way to circumvent this problem is presented in a very recent tool called pastaa ( 8) , in which rather than on a selected gene set ( e.g. genes belonging to an expression cluster or functional category ) the algorithm can work on large set of genes and even whole genomes ( e.g. all genes available on a given microarray ) where genes are ranked both according to how well their promoter fits a matrix and to a likelihood value expressing how well genes fit into a given category . if this latter piece of information is available , coherence between the two ranked datasets is computed as an indicator of association between a tf and the category . in our approach , similarly to the clover algorithm described in ( 7 ) , instead of computing a count of predicted sites we rather compute for each input sequence a raw matching value , representing the likelihood for the tf to bind the promoter . the main difference of our method is that , instead of computing an overall average value on all the oligos of the input sequences as in clover , we keep as matching value the one corresponding to the highest - scoring oligo in each sequence and compute the mean of the matching value on the input sequence set [ see supplementary data and ref . another issue is the definition of a  background random model suitable for assessing the significance of the results obtained . in clover , this is performed by shuffling the columns of the motif or by building random sequence sets of the same size and length of the sequence set investigated , and a p - value is assigned to the results by computing , for each available profile , how many times the random dataset yields a matching score higher than the input sequence set . in our work , instead , we treat the input sequences as a sample taken from a universe. since now we have at our disposal whole genome sequences and gene annotations , this is the set of all promoter sequences available for the species investigated . thus , for each profile , the average matching score obtained from the input sequence set can be compared to the mean and the standard deviation of the score on the whole genome promoter set . the over- ( or under- ) representation for each profile is finally assessed with a z - test , that associates with each profile the probability of obtaining the same score on a random sequence set . in our experiments we evaluated the performance of other statistical methods , different from the z - test , for assessing the significance of the results . rank - based tests gave less stable results and higher false positive rates ( see further on ) , depending more strongly on input set size or matrix information content . comparing the results of the input sets with randomly sampled sets of the same size gave overall similar results , but , since randomizations have to be performed thousands or millions of times to attain reliable p - values , this method increased significantly the computation time . as shown by results we obtained on benchmark sequence sets [ see supplementary data and ref . ( 9 ) ] , considering only the best match on each promoter can be a reasonable approximation , that guarantees a clear separation between significantly enriched promoter sets and the background , while this can not be attained using average computed on whole sequences , especially in cases when good sites can be found only in a subset of the input . guessing the number of sequences of the input containing good sites ( i.e. enumerating the possible subsets ) , with a significant increase in computational complexity and execution time . several other methods currently available [ see among others opossum ( 10 ) , pap ( 11 ) , tfm_explorer ( 12 ) and core_tf ( 6 ) ] , regardless of the statistical methods employed , include in the analyses orthologous sequences for filtering and reducing false positive predictions . although the implementation of this feature in our algorithm is straightforward , we nevertheless chose not to make it a necessary step in the analysis , but rather an additional option that can be selected . as a matter of fact , as pointed out by several studies we can not expect a perfect one - to - one conservation in orthologous sequences for tfbss ; and while this strategy is successful in cases like muscle - specific gene expression ( 13 ) , in others we have tfs for which only a limited number of tfbss is conserved ( e.g. between human and mouse ) , and also when two orthologous genes are targeted by the same tfs they do not show conserved tfbss that can be singled out by inspecting genomic alignments ( 14 ) . the usual drawback of methods like pscan ( with or without orthologous sequences ) lies in the high number of predictions that can be considered as false positive , at least when compared with estimates one could derive by using directly the p - values associated with the results [ see , e.g. ref . we thoroughly assessed this point for pscan , by building random promoter sets changing the size of the set ( from 5 to 200 genes ) and sequence length . clearly , any significant motif reported with p - value lower than a given threshold in a random set should be regarded as a false positive . once defined how many promoters we want in the set and their length , by building n sets of sequences in this way we should observe about np times that the profile has yielded p - value lower than a given threshold p. figure 1 shows the average false positive rate ( in this case the ratio between false positives and the overall number of tests performed ) observed for vertebrate jaspar profiles on sets of human promoters of length 500 . for each motif and each set size we performed 1000 random runs . it can be clearly seen how in our case the observed false positive rate virtually matches the estimate for different p - value thresholds , regardless of the number of input sequences , with also no significant difference for different profiles ( data not shown ) . remarkably this observation is true also for small sequence sets , from 5 to 20 genes , sample sizes for which employing the z - test is not always advised by literature . changing figure 1.experimental false positive rate for jaspar vertebrate matrices at different p - value thresholds on random collections of human promoters ( from 450 to + 50 with respect to the tss ) of different size ( from 5 to 200 sequences ) . experimental false positive rate for jaspar vertebrate matrices at different p - value thresholds on random collections of human promoters ( from 450 to + 50 with respect to the tss ) of different size ( from 5 to 200 sequences ) . as a comparison , a similar test performed in ( 12 ) for the tfm_explorer algorithm although on longer sequences filtered by phylogenetic footprinting  led authors to suggest using p - value thresholds between 10 and 10 to maintain a false positive rate of 0.1 . for the opossum algorithm , in which two different measures of significance are used , a p - value of 0.01 has a false positive rate around 0.20.3 ( changing according to input set size ) , that is reduced to about 0.10.15 when coupled with further filtering based on a z - score ( 10 ) . thus , the p - value associated with the results by pscan provides a more intuitive way of interpreting the results and of assessing the actual significance of the enrichment of the motifs , keeping the false positive rate easily under control . it should be kept in mind , however , that typically collections of dozens or hundreds of profiles are employed in analyses of this kind . if we assume without loss of generality that for each motif profile an independent test is performed , then we need to keep the familywise error rate below a given threshold . in other words , if we try 100 profiles on a given sequence set by using a significant p - value threshold of 0.01 , then we can expect one profile to have a p - value lower than 0.01 purely due to chance . the simplest solution to account for this problem is to use a bonferroni corrected threshold of p / m to maintain the same significance threshold of p , where m is the number of profiles used . more involved methods can be anyway used , like the holm  bonferroni or benjamini  hockberg procedures . in the current implementation pscan performs analyses with human , mouse , drosophila , arabidopsis and yeast sequences and motifs . users have to input a set of gene identifiers together with the organism of provenience . for human , mouse and drosophila the interface accepts refseq mrna ids ( e.g. nm_000546 ) , for arabidopsis tair ids ( e.g. at1g08810 ) and for yeast sgd ids ( e.g. ypl248c ) . other i d types ( affy ids , entrez or ensembl gene ids and so on ) can anyway be quickly converted in the format accepted by pscan with tools like david ( 15 ) . the  human and mouse species option allows for the analysis of a sequence set derived from both organisms . this option can be selected , for example , if one wants to perform an analysis on a set of human and mouse orthologous genes ( see supplementary data and the online help page ) . then , users have to specify the promoter region their want to investigate , with respect to the tsss of the genes , for example from 450 to + 50 or 950 to + 50 or 200 to + 50 . we advise users to select regions encompassing also a sequence downstream of the tss , since functional tfbss are often found also here . users have to input a list of gene ids in the text box and choose source organism , promoter region with respect to the tss of the genes , and profile set to be employed in the analysis . the part of the interface devoted to user input . users have to input a list of gene ids in the text box and choose source organism , promoter region with respect to the tss of the genes , and profile set to be employed in the analysis . given gene ids and the promoter region selected , the corresponding sequences are automatically retrieved by the server . finally , users have two choices : employing for the analysis the profiles already available in a given database ( the interface now includes the matrices available at jaspar , the familial binding profile collection of jaspar and the public release of transfac ) , or uploading a file containing their own matrices . in the latter case , an upload dialog box appears ( see the online help for the format in which matrices have to be uploaded ) . for example , if users have at their disposal the matrices available in the subscription - only version of transfac , they can upload them and use for their analyses , since they will not be made public or shared with other users . another possible application is to use pscan to assess the significance of a motif output by a de novo motif discovery algorithm for which  false positive results are very often an issue [ ( 16 ) ; see also supplementary data ] . run! button , starts the computation and possible error / warning messages are displayed in the text box directly below the button . the result of the computation will appear in the middle column of the page , together with a small image ( the  heatmap ) on the top right corner . the output shows the ranking of the profiles selected according to their z - test p - value ( see supplementary data ) . there is also a link for downloading the results in text format as well as the number of matrices used to analyze the sequences , suitable for computing corrected p - value thresholds for assessing the significance of the results . figure 3.an example of the main output of pscan , given as input a set of promoters of known myc target genes in human ( 17 ) , showing motif profiles ranked according to their z - test p - value . notice how also , other than motif profiles of myc or myc - like sites , other tfs show significant enrichment in the dataset , likely to co - operate with myc in the regulation of a subset of the input genes ( e.g. the cell - cycle regulators ) . an example of the main output of pscan , given as input a set of promoters of known myc target genes in human ( 17 ) , showing motif profiles ranked according to their z - test p - value . notice how also , other than motif profiles of myc or myc - like sites , other tfs show significant enrichment in the dataset , likely to co - operate with myc in the regulation of a subset of the input genes ( e.g. the cell - cycle regulators ) . by clicking on a profile name , users can open a dedicated page showing further details ( figure 4 ) , and in particular the matrix itself ( with its sequence logo at the bottom ) , its information content and links to its database entry as well as to the i d ( pmid ) of the pubmed entry describing its generation ( in case of user - submitted matrices these two latter pieces of information are missing ) . a simple graphic representation shows the average matching value of the matrix on the sequences analyzed compared to the average matching value and standard deviation on the whole promoter set ( same set of regions with respect to the tss as selected ) of the same organism . under these fields the interface reports p - value , bonferroni corrected p - value ( the z - test p - value multiplied by the number of profiles employed in the analysis ) , with mean and standard deviation for the matching value of the matrix in the current input set . next to this , an input mask allowing users to compare the results just obtained with the results that came for the same matrix on a different sequence set ( see supplementary data and the online help pages ) . figure 4.example of the detailed information displayed by pscan concerning jaspar motif elk4 , with ( left ) matrix , logo ( bottom left ) , cross - references , average score in the input set compared to the background mean and standard deviation ( green area ) . under these pieces of information , the interface shows the statistics for the matrix on the input set , together with an input form for the comparison of the results on different input sets . on the right , there is the list of best occurrences in each input promoter , with gene name , oligo score , position with respect to the tss of the gene , oligo sequence and strand . notice how the best occurrences ( with score higher than the background average ) are mostly located in the core promoter area ( 100 , + 50 ) . example of the detailed information displayed by pscan concerning jaspar motif elk4 , with ( left ) matrix , logo ( bottom left ) , cross - references , average score in the input set compared to the background mean and standard deviation ( green area ) . under these pieces of information , the interface shows the statistics for the matrix on the input set , together with an input form for the comparison of the results on different input sets . on the right , there is the list of best occurrences in each input promoter , with gene name , oligo score , position with respect to the tss of the gene , oligo sequence and strand . notice how the best occurrences ( with score higher than the background average ) are mostly located in the core promoter area ( 100 , + 50 ) . furthermore , by clicking on the  report occurrences button at the bottom of the  matrix info table users can retrieve , for each gene submitted , the best matching oligo in the respective promoter , as well as its score ( from 0 to 1 , see supplementary data ) and its position relative to the annotated tss . occurrences are sorted according to their score , so to have an immediate idea of which genes are more likely to be actual targets of the tf corresponding to the profile . the  text results button allows for the download of this occurrence table in text format . on the bottom right hand of the page two diagrams appear , showing the distribution of the location of the best occurrences in the promoter ( with score higher than the genome - wide mean , above ) and the scores of the best occurrences ( below ) . heatmap image shows intuitively in a microarray - like fashion the contribution of each input gene to the z - score of each matrix . red spots ( with proportional color intensity ) correspond to positive contributions ( e.g. scores higher than the genome - wide mean ) , vice versa green spots ( black spots are around the average genome - wise score of the matrix itself ) . to restore the interface to the initial settings in the current implementation pscan performs analyses with human , mouse , drosophila , arabidopsis and yeast sequences and motifs . users have to input a set of gene identifiers together with the organism of provenience . for human , mouse and drosophila the interface accepts refseq mrna ids ( e.g. nm_000546 ) , for arabidopsis tair ids ( e.g. at1g08810 ) and for yeast sgd ids ( e.g. ypl248c ) . other i d types ( affy ids , entrez or ensembl gene ids and so on ) can anyway be quickly converted in the format accepted by pscan with tools like david ( 15 ) . the  human and mouse species option allows for the analysis of a sequence set derived from both organisms . this option can be selected , for example , if one wants to perform an analysis on a set of human and mouse orthologous genes ( see supplementary data and the online help page ) . then , users have to specify the promoter region their want to investigate , with respect to the tsss of the genes , for example from 450 to + 50 or 950 to + 50 or 200 to + 50 . we advise users to select regions encompassing also a sequence downstream of the tss , since functional tfbss are often found also here . users have to input a list of gene ids in the text box and choose source organism , promoter region with respect to the tss of the genes , and profile set to be employed in the analysis . the part of the interface devoted to user input . users have to input a list of gene ids in the text box and choose source organism , promoter region with respect to the tss of the genes , and profile set to be employed in the analysis . given gene ids and the promoter region selected , the corresponding sequences are automatically retrieved by the server . finally , users have two choices : employing for the analysis the profiles already available in a given database ( the interface now includes the matrices available at jaspar , the familial binding profile collection of jaspar and the public release of transfac ) , or uploading a file containing their own matrices . in the latter case , an upload dialog box appears ( see the online help for the format in which matrices have to be uploaded ) . for example , if users have at their disposal the matrices available in the subscription - only version of transfac , they can upload them and use for their analyses , since they will not be made public or shared with other users . another possible application is to use pscan to assess the significance of a motif output by a de novo motif discovery algorithm for which  false positive results are very often an issue [ ( 16 ) ; see also supplementary data ] . run! button , starts the computation and possible error / warning messages are displayed in the text box directly below the button . the result of the computation will appear in the middle column of the page , together with a small image ( the  heatmap ) on the top right corner . the output shows the ranking of the profiles selected according to their z - test p - value ( see supplementary data ) . there is also a link for downloading the results in text format as well as the number of matrices used to analyze the sequences , suitable for computing corrected p - value thresholds for assessing the significance of the results . figure 3.an example of the main output of pscan , given as input a set of promoters of known myc target genes in human ( 17 ) , showing motif profiles ranked according to their z - test p - value . notice how also , other than motif profiles of myc or myc - like sites , other tfs show significant enrichment in the dataset , likely to co - operate with myc in the regulation of a subset of the input genes ( e.g. the cell - cycle regulators ) . an example of the main output of pscan , given as input a set of promoters of known myc target genes in human ( 17 ) , showing motif profiles ranked according to their z - test p - value . notice how also , other than motif profiles of myc or myc - like sites , other tfs show significant enrichment in the dataset , likely to co - operate with myc in the regulation of a subset of the input genes ( e.g. the cell - cycle regulators ) . by clicking on a profile name , users can open a dedicated page showing further details ( figure 4 ) , and in particular the matrix itself ( with its sequence logo at the bottom ) , its information content and links to its database entry as well as to the i d ( pmid ) of the pubmed entry describing its generation ( in case of user - submitted matrices these two latter pieces of information are missing ) . a simple graphic representation shows the average matching value of the matrix on the sequences analyzed compared to the average matching value and standard deviation on the whole promoter set ( same set of regions with respect to the tss as selected ) of the same organism . under these fields the interface reports p - value , bonferroni corrected p - value ( the z - test p - value multiplied by the number of profiles employed in the analysis ) , with mean and standard deviation for the matching value of the matrix in the current input set . next to this , an input mask allowing users to compare the results just obtained with the results that came for the same matrix on a different sequence set ( see supplementary data and the online help pages ) . figure 4.example of the detailed information displayed by pscan concerning jaspar motif elk4 , with ( left ) matrix , logo ( bottom left ) , cross - references , average score in the input set compared to the background mean and standard deviation ( green area ) . under these pieces of information , the interface shows the statistics for the matrix on the input set , together with an input form for the comparison of the results on different input sets . on the right , there is the list of best occurrences in each input promoter , with gene name , oligo score , position with respect to the tss of the gene , oligo sequence and strand . notice how the best occurrences ( with score higher than the background average ) are mostly located in the core promoter area ( 100 , + 50 ) . example of the detailed information displayed by pscan concerning jaspar motif elk4 , with ( left ) matrix , logo ( bottom left ) , cross - references , average score in the input set compared to the background mean and standard deviation ( green area ) . under these pieces of information , the interface shows the statistics for the matrix on the input set , together with an input form for the comparison of the results on different input sets . on the right , there is the list of best occurrences in each input promoter , with gene name , oligo score , position with respect to the tss of the gene , oligo sequence and strand . notice how the best occurrences ( with score higher than the background average ) are mostly located in the core promoter area ( 100 , + 50 ) . furthermore , by clicking on the  report occurrences button at the bottom of the  matrix info table users can retrieve , for each gene submitted , the best matching oligo in the respective promoter , as well as its score ( from 0 to 1 , see supplementary data ) and its position relative to the annotated tss . occurrences are sorted according to their score , so to have an immediate idea of which genes are more likely to be actual targets of the tf corresponding to the profile . on the bottom right hand of the page two diagrams appear , showing the distribution of the location of the best occurrences in the promoter ( with score higher than the genome - wide mean , above ) and the scores of the best occurrences ( below ) . heatmap image shows intuitively in a microarray - like fashion the contribution of each input gene to the z - score of each matrix . red spots ( with proportional color intensity ) correspond to positive contributions ( e.g. scores higher than the genome - wide mean ) , vice versa green spots ( black spots are around the average genome - wise score of the matrix itself ) . pscan is a software tool that scans promoter sequences from co - regulated or co - expressed genes , looking for over- or under - represented motifs describing the binding specificity of known tfs , thus providing quick hints on which factors could be responsible for the patterns of expression observed , or vice versa seem to be avoided ( with p - values nearing 1 ) . the user interface is simple and immediate , and results can be obtained in a few seconds or minutes ( in case users submit their own motifs , the computation takes longer since background genome - wide scores have to be computed as well ) . more involved analyses are nevertheless possible , from intergenic regions or 3utr sequences , and so on , for which users are welcome to download the standalone version that permits to build customized background models as well as the input of fasta sequences . the interface will be updated anytime new descriptors and matrices are made available , and also by including novel species and updated gene and promoter annotations . funding for open access charge : italian ministry of education and scienfic research ( miur ) within the firb project