title: MICA: desktop software for comprehensive searching of DNA databases.
abstract: BACKGROUND
  Molecular biologists work with DNA databases that often include entire genomes. A common requirement is to search a DNA database to find exact matches for a nondegenerate or partially degenerate query. The software programs available for such purposes are normally designed to run on remote servers, but an appealing alternative is to work with DNA databases stored on local computers. We describe a desktop software program termed MICA (K-Mer Indexing with Compact Arrays) that allows large DNA databases to be searched efficiently using very little memory.
  
  
  RESULTS
  MICA rapidly indexes a DNA database. On a Macintosh G5 computer, the complete human genome could be indexed in about 5 minutes. The indexing algorithm recognizes all 15 characters of the DNA alphabet and fully captures the information in any DNA sequence, yet for a typical sequence of length L, the index occupies only about 2L bytes. The index can be searched to return a complete list of exact matches for a nondegenerate or partially degenerate query of any length. A typical search of a long DNA sequence involves reading only a small fraction of the index into memory. As a result, searches are fast even when the available RAM is limited.
  
  
  CONCLUSIONS
  MICA is suitable as a search engine for desktop DNA analysis software.
authors.affiliation: GSL Biotech, LLC, 5211 S. Kenwood Ave, Chicago, IL 60615, USA. wstokes@gmail.com
authors.forename: William A
authors.initials: WA
authors.lastname: Stokes
authors.forename: Benjamin S
authors.initials: BS
authors.lastname: Glick
mesh_terms: D000465:Algorithms; D001483:Base Sequence; D002874:Chromosome Mapping / Q000379:methods*; D003628:Database Management Systems; D030561:Databases, Nucleic Acid; D016247:Information Storage and Retrieval / Q000379:methods*; D020407:Internet; D008838:Microcomputers; D008969:Molecular Sequence Data; D016415:Sequence Alignment / Q000379:methods; D017422:Sequence Analysis, DNA / Q000379:methods; D012984:Software; D014584:User-Computer Interface