Dynamic programming via thinning and incrementalization

Akimasa Morihata, Masato Koishi, Atsushi Ohori

Research output: Chapter in Book/Report/Conference proceedingConference contribution

1 Citation (Scopus)

Abstract

We demonstrate that it is useful to combine two independently studied methods, thinning and incrementalization, to develop programs that use dynamic programming. While dynamic programming is a fundamental algorithmic pattern, its development is often difficult for average programmers. There are several methods for systematically developing dynamic programming from plain problem descriptions by program transformations. We show that by combining two known methods, thinning and incrementalization, we can systematically derive efficient dynamic-programming implementations from high-level descriptions. The derivations cannot be achieved by using only one of them. We illustrate our approach with the 0-1 knapsack problem, the longest common subsequence problem, and association rule mining from numeric data.

Original languageEnglish
Title of host publicationFunctional and Logic Programming - 12th International Symposium, FLOPS 2014, Proceedings
PublisherSpringer-Verlag
Pages186-202
Number of pages17
ISBN (Print)9783319071503
DOIs
Publication statusPublished - 2014 Jan 1
Event12th International Symposium on Functional and Logic Programming, FLOPS 2014 - Kanazawa, Japan
Duration: 2014 Jun 42014 Jun 6

Publication series

NameLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
Volume8475 LNCS
ISSN (Print)0302-9743
ISSN (Electronic)1611-3349

Other

Other12th International Symposium on Functional and Logic Programming, FLOPS 2014
CountryJapan
CityKanazawa
Period14/6/414/6/6

ASJC Scopus subject areas

  • Theoretical Computer Science
  • Computer Science(all)

Fingerprint Dive into the research topics of 'Dynamic programming via thinning and incrementalization'. Together they form a unique fingerprint.

  • Cite this

    Morihata, A., Koishi, M., & Ohori, A. (2014). Dynamic programming via thinning and incrementalization. In Functional and Logic Programming - 12th International Symposium, FLOPS 2014, Proceedings (pp. 186-202). (Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics); Vol. 8475 LNCS). Springer-Verlag. https://doi.org/10.1007/978-3-319-07151-0_12