title: A low-polynomial algorithm for assembling clusters of orthologous groups from intergenomic symmetric best matches.
abstract: BACKGROUND
  Identifying orthologous genes in multiple genomes is a fundamental task in comparative genomics. Construction of intergenomic symmetrical best matches (SymBets) and joining them into clusters is a popular method of ortholog definition, embodied in several software programs. Despite their wide use, the computational complexity of these programs has not been thoroughly examined.
  
  
  RESULTS
  In this work, we show that in the standard approach of iteration through all triangles of SymBets, the memory scales with at least the number of these triangles, O(g(3)) (where g = number of genomes), and construction time scales with the iteration through each pair, i.e. O(g(6)). We propose the EdgeSearch algorithm that iterates over edges in the SymBet graph rather than triangles of SymBets, and as a result has a worst-case complexity of only O(g(3)log g). Several optimizations reduce the run-time even further in realistically sparse graphs. In two real-world datasets of genomes from bacteriophages (POGs) and Mollicutes (MOGs), an implementation of the EdgeSearch algorithm runs about an order of magnitude faster than the original algorithm and scales much better with increasing number of genomes, with only minor differences in the final results, and up to 60 times faster than the popular OrthoMCL program with a 90% overlap between the identified groups of orthologs.
  
  
  METHODS
  C++ source code freely available for download at ftp.ncbi.nih.gov/pub/wolf/COGs/COGsoft/.
  
  
  BACKGROUND
  Supplementary materials are available at Bioinformatics online.
authors.affiliation: Department of Binformatics, Stowers Institute for Medical Research, Kansas City, MO 64110, USA. dmk@stowers.org
authors.forename: David M
authors.initials: DM
authors.lastname: Kristensen
authors.forename: Lavanya
authors.initials: L
authors.lastname: Kannan
authors.forename: Michael K
authors.initials: MK
authors.lastname: Coleman
authors.forename: Yuri I
authors.initials: YI
authors.lastname: Wolf
authors.forename: Alexander
authors.initials: A
authors.lastname: Sorokin
authors.forename: Eugene V
authors.initials: EV
authors.lastname: Koonin
authors.forename: Arcady
authors.initials: A
authors.lastname: Mushegian
mesh_terms: D000465:Algorithms; D016000:Cluster Analysis; D016678:Genome; D023281:Genomics / Q000379:methods*