TY - CHAP
T1 - Optimal Computation of Avoided Words
AU - Almirantis, Yannis
AU - Charalampopoulos, Panagiotis
AU - Gao, Jia
AU - Iliopoulos, Costas S.
AU - Mohamed, Manal
AU - Pissis, Solon P.
AU - Polychronopoulos, Dimitris
PY - 2016/8/6
Y1 - 2016/8/6
N2 - The deviation of the observed frequency of a word w from its expected frequency in a given sequence x is used to determine whether or not the word is avoided. This concept is particularly useful in DNA linguistic analysis. The value of the standard deviation of w, denoted by std(w), effectively characterises the extent of a word by its edge contrast in the context in which it occurs. A word w of length k>2 is a ρ-avoided word in x if std(w)≤ρ, for a given threshold ρ<0. Notice that such a word may be completely absent from x. Hence computing all such words naïvely can be a very time-consuming procedure, in particular for large k. In this article, we propose an O(n)-time and O(n)-space algorithm to compute all ρ-avoided words of length k in a given sequence x of length n over a fixed-sized alphabet. We also present a time-optimal O(σn)-time algorithm to compute all ρ-avoided words (of any length) in a sequence of length n over an integer alphabet of size σ. We provide a tight asymptotic upper bound for the number of ρ-avoided words over an integer alphabet and the expected length of the longest one. We make available an implementation of our algorithm. Experimental results, using both real and synthetic data, show the efficiency of our implementation.
AB - The deviation of the observed frequency of a word w from its expected frequency in a given sequence x is used to determine whether or not the word is avoided. This concept is particularly useful in DNA linguistic analysis. The value of the standard deviation of w, denoted by std(w), effectively characterises the extent of a word by its edge contrast in the context in which it occurs. A word w of length k>2 is a ρ-avoided word in x if std(w)≤ρ, for a given threshold ρ<0. Notice that such a word may be completely absent from x. Hence computing all such words naïvely can be a very time-consuming procedure, in particular for large k. In this article, we propose an O(n)-time and O(n)-space algorithm to compute all ρ-avoided words of length k in a given sequence x of length n over a fixed-sized alphabet. We also present a time-optimal O(σn)-time algorithm to compute all ρ-avoided words (of any length) in a sequence of length n over an integer alphabet of size σ. We provide a tight asymptotic upper bound for the number of ρ-avoided words over an integer alphabet and the expected length of the longest one. We make available an implementation of our algorithm. Experimental results, using both real and synthetic data, show the efficiency of our implementation.
U2 - 10.1007/978-3-319-43681-4_1
DO - 10.1007/978-3-319-43681-4_1
M3 - Other chapter contribution
SN - 978-3-319-43680-7
T3 - Lecture Notes in Computer Science
SP - 1
EP - 13
BT - Algorithms in Bioinformatics
A2 - Frith, Martin
A2 - Storm Pedersen, Nørgaard Christian
PB - Springer International Publishing Switzerland
ER -