MetaCart Sign in to MyCiteSeerX

Include Citations | Advanced Search | Help

Disambiguated Search | Include Citations | Advanced Search | Help

Recursion Schemes for Dynamic Programming [1 citations — 0 self]

by Jevgeni Kabanov ,  Varmo Vene
Mathematics of Program Construction, 8th International Conference, MPC 2006
Add To MetaCart

Abstract:

Dynamic programming is an algorithm design technique, which allows to improve efficiency by avoiding re-computation of identical subtasks. We present a new recursion combinator, dynamorphism,which captures the dynamic programming recursion pattern with memoization and identify some simple conditions when functions defined by structured general recursion can be redefined as a dynamorphism. The applicability of the new recursion combinator is demonstrated on classical dynamic programming algorithms: Fibonacci numbers, binary partitions, edit distance and longest common subsequence.

Citations

1487 Dynamic programming – Bellman - 1957
250 Functional programming with bananas, lenses, envelopes and barbed wire – Meijer, Fokkinga, et al. - 1991
195 An introduction to the theory of lists – Bird - 1987
100 Data structures and program transformation – Malcolm - 1990
89 and Order in Algorithmics – Law - 1992
71 and Oege de Moor. Algebra of Programming – Bird - 1997
51 A Categorical Programming Language – Hagino - 1987
24 Calculating functional programs – Gibbons - 2002
17 Recursion schemes from comonads – Uustalu, Vene, et al.
9 Primitive (co)recursion and course-of-values (co)iteration, categorically – Uustalu, Vene - 1999
7 Categorical Programming with Inductive and Coinductive Types – Vene - 2000
3 Recursive coalgebras from comonads – Capretta, Uustalu, et al. - 2006