Zippy Tabulations of Recursive Functions

  • Richard S. Bird
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5133)


This paper is devoted to the statement and proof of a theorem showing how recursive definitions whose associated call graphs satisfy certain shape conditions can be converted systematically into efficient bottom-up tabulation schemes. The increase in efficiency can be dramatic, typically transforming an exponential time algorithm into one that takes only quadratic time. The proof of the theorem relies heavily on the theory of zips developed by Roland Backhouse and Paul Hoogendijk.


Recursive Function Boolean Lattice Call Graph Binomial Tree Decomposition Function 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Backhouse, R.C., Doornbos, H., Hoogendijk, P.: A Class of Commuting Relators. In: STOP workshop, Ameland, The Netherlands (September 1992),
  2. 2.
    Backhouse, R.C., Hoogendijk, P.: Generic Properties of Datatypes. In: Backhouse, R., Gibbons, J. (eds.) Generic Programming. LNCS, vol. 2793, pp. 97–132. Springer, Heidelberg (2003)Google Scholar
  3. 3.
    Bird, R.S., Hinze, R.: Trouble shared is trouble halved. In: ACM SIGPLAN Haskell Workshop, Uppsala, Sweden, pp. 1–6 (August 2003)Google Scholar
  4. 4.
    Bird, R.S., de Moor, O.: The Algebra of Programming. Prentice Hall International Series in Computer Science (1997)Google Scholar
  5. 5.
    Cormen, T.H., Leiserson, C.E., Rivest, R.L.: Algorithms. MIT Press, Cambridge Mass (1997)Google Scholar
  6. 6.
    Hoogendijk, P.: A Generic Theory of Data Types Ph.D Thesis, Eindhoven Technical University (1997)Google Scholar
  7. 7.
    Hoogendijk, P., Backhouse, R.C.: When do datatypes commute? In: Moggi, E., Rosolini, G. (eds.) CTCS 1997. LNCS, vol. 1290, pp. 242–260. Springer, Heidelberg (1997)CrossRefGoogle Scholar
  8. 8.
    Steffen, P., Giegerich, R.: Table design in dynamic programming. Information and Computation 204(9) (September 2006)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2008

Authors and Affiliations

  • Richard S. Bird
    • 1
  1. 1.Oxford University Computing LaboratoryOxfordUK

Personalised recommendations