Calculating PSSM probabilities with lazy dynamic programming
KETIL MALDE a1andROBERT GIEGERICH a2 a1 Department of Informatics, University of Bergen, Bergen, Norway (e-mail: [email protected]) a2 Faculty of Technology, University of Bielefeld, Bielefeld, Germany (e-mail: [email protected])
Position-specific scoring matrices are one way to represent approximate string patterns, which are commonly encountered in the field of bioinformatics. An important problem that arises with their application is calculating the statistical significance of matches. We review the currently most efficient algorithm for this task, and show how it can be implemented in Haskell, taking advantage of the built-in non-strictness of the language. The resulting program turns out to be an instance of dynamic programming, using lists rather the typical dynamic programming matrix.