Journal of Functional Programming


Calculating PSSM probabilities with lazy dynamic programming

a1 Department of Informatics, University of Bergen, Bergen, Norway (e-mail:
a2 Faculty of Technology, University of Bielefeld, Bielefeld, Germany (e-mail:

Article author query
malde k   [Google Scholar] 
giegerich r   [Google Scholar] 


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.