How to multiply dynamic programming algorithms

6Citations
Citations of this article
3Readers
Mendeley users who have this article in their library.
Get full text

Abstract

We develop a theory of algebraic operations over linear grammars that makes it possible to combine simple "atomic" grammars operating on single sequences into complex, multi-dimensional grammars. We demonstrate the utility of this framework by constructing the search spaces of complex alignment problems on multiple input sequences explicitly as algebraic expressions of very simple 1-dimensional grammars. The compiler accompanying our theory makes it easy to experiment with the combination of multiple grammars and different operations. Composite grammars can be written out in LATEX for documentation and as a guide to implementation of dynamic programming algorithms. An embedding in Haskell as a domain-specific language makes the theory directly accessible to writing and using grammar products without the detour of an external compiler. http://www.bioinf.uni-leipzig.de/Software/gramprod/. © 2013 Springer International Publishing.

Cite

CITATION STYLE

APA

Höner Zu Siederdissen, C., Hofacker, I. L., & Stadler, P. F. (2013). How to multiply dynamic programming algorithms. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) (Vol. 8213 LNBI, pp. 82–93). https://doi.org/10.1007/978-3-319-02624-4_8

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free