title: Linear-time computation of minimal absent words using suffix array.
abstract: BACKGROUND
  An absent word of a word y of length n is a word that does not occur in y. It is a minimal absent word if all its proper factors occur in y. Minimal absent words have been computed in genomes of organisms from all domains of life; their computation also provides a fast alternative for measuring approximation in sequence comparison. There exists an [Formula: see text]-time and [Formula: see text]-space algorithm for computing all minimal absent words on a fixed-sized alphabet based on the construction of suffix automata (Crochemore et al., 1998). No implementation of this algorithm is publicly available. There also exists an [Formula: see text]-time and [Formula: see text]-space algorithm for the same problem based on the construction of suffix arrays (Pinho et al., 2009). An implementation of this algorithm was also provided by the authors and is currently the fastest available.
  
  
  RESULTS
  Our contribution in this article is twofold: first, we bridge this unpleasant gap by presenting an [Formula: see text]-time and [Formula: see text]-space algorithm for computing all minimal absent words based on the construction of suffix arrays; and second, we provide the respective implementation of this algorithm. Experimental results, using real and synthetic data, show that this implementation outperforms the one by Pinho et al. The open-source code of our implementation is freely available at http://github.com/solonas13/maw .
  
  
  CONCLUSIONS
  Classical notions for sequence comparison are increasingly being replaced by other similarity measures that refer to the composition of sequences in terms of their constituent patterns. One such measure is the minimal absent words. In this article, we present a new linear-time and linear-space algorithm for the computation of minimal absent words based on the suffix array.
authors.affiliation: Department of Informatics, King's College London, The Strand, WC2R 2LS, London, UK. carl.barton@kcl.ac.uk.
authors.forename: Carl
authors.initials: C
authors.lastname: Barton
authors.affiliation: Inria Saclay-Île de France, AMIB, Bâtiment Alan Turing, Palaiseau, France. alice.heliou@lix.polytechnique.fr.|Laboratoire d'Informatique de l'École Polytechnique (LIX), CNRS UMR 7161, Palaiseau, France. alice.heliou@lix.polytechnique.fr.
authors.forename: Alice
authors.initials: A
authors.lastname: Heliou
authors.affiliation: University of Rouen, LITIS EA 4108, TIBS, Rouen, France. laurent.mouchard@univ-rouen.fr.
authors.forename: Laurent
authors.initials: L
authors.lastname: Mouchard
authors.affiliation: Department of Informatics, King's College London, The Strand, WC2R 2LS, London, UK. solon.pissis@kcl.ac.uk.
authors.forename: Solon P
authors.initials: SP
authors.lastname: Pissis
mesh_terms: D000465:Algorithms; D000818:Animals; D001419:Bacteria / Q000235:genetics; D019295:Computational Biology / Q000379:methods*; D004247:DNA / Q000235:genetics*; D056890:Eukaryota / Q000235:genetics; D016678:Genome; D023281:Genomics / Q000379:methods*; D006801:Humans; D011381:Programming Languages; D017422:Sequence Analysis, DNA / Q000379:methods*
chemical_list: D004247:DNA