Practical Access to Dynamic Programming on Tree Decompositions

Authors Max Bannach , Sebastian Berndt

Thumbnail PDF


  • Filesize: 0.63 MB
  • 13 pages

Document Identifiers

Author Details

Max Bannach
  • Institute for Theoretical Computer Science, Universität zu Lübeck, Lübeck, Germany
Sebastian Berndt
  • Department of Computer Science, Kiel University, Kiel, Germany

Cite AsGet BibTex

Max Bannach and Sebastian Berndt. Practical Access to Dynamic Programming on Tree Decompositions. In 26th Annual European Symposium on Algorithms (ESA 2018). Leibniz International Proceedings in Informatics (LIPIcs), Volume 112, pp. 6:1-6:13, Schloss Dagstuhl – Leibniz-Zentrum für Informatik (2018)


Parameterized complexity theory has lead to a wide range of algorithmic breakthroughs within the last decades, but the practicability of these methods for real-world problems is still not well understood. We investigate the practicability of one of the fundamental approaches of this field: dynamic programming on tree decompositions. Indisputably, this is a key technique in parameterized algorithms and modern algorithm design. Despite the enormous impact of this approach in theory, it still has very little influence on practical implementations. The reasons for this phenomenon are manifold. One of them is the simple fact that such an implementation requires a long chain of non-trivial tasks (as computing the decomposition, preparing it,...). We provide an easy way to implement such dynamic programs that only requires the definition of the update rules. With this interface, dynamic programs for various problems, such as 3-coloring, can be implemented easily in about 100 lines of structured Java code. The theoretical foundation of the success of dynamic programming on tree decompositions is well understood due to Courcelle's celebrated theorem, which states that every MSO-definable problem can be efficiently solved if a tree decomposition of small width is given. We seek to provide practical access to this theorem as well, by presenting a lightweight model-checker for a small fragment of MSO. This fragment is powerful enough to describe many natural problems, and our model-checker turns out to be very competitive against similar state-of-the-art tools.

Subject Classification

ACM Subject Classification
  • Theory of computation → Design and analysis of algorithms
  • fixed-parameter tractability
  • treewidth
  • model-checking


  • Access Statistics
  • Total Accesses (updated on a weekly basis)
    PDF Downloads


  1. Michael Abseher, Bernhard Bliem, Günther Charwat, Frederico Dusberger, Markus Hecher, and Stefan Woltran. D-flat: progress report. DBAI, TU Wien, Tech. Rep. DBAI-TR-2014-86, 2014. Google Scholar
  2. Michael Abseher, Frederico Dusberger, Nysret Musliu, and Stefan Woltran. Improving the efficiency of dynamic programming on tree decompositions via machine learning. In Proc. IJCAI, pages 275-282, 2015. Google Scholar
  3. M. Bannach. Jatatosk., 2018. [Online; accessed 22-04-2018].
  4. M. Bannach. Jdrasil for Graph Coloring., 2018. [Online; accessed 22-04-2018].
  5. M. Bannach, S. Berndt, and T. Ehlers. Jdrasil., 2017. [Online; accessed 22-04-2018].
  6. Max Bannach, Sebastian Berndt, and Thorsten Ehlers. Jdrasil: A modular library for computing tree decompositions. In 16th International Symposium on Experimental Algorithms, SEA 2017, June 21-23, 2017, London, UK, pages 28:1-28:21, 2017. URL:
  7. Hans L Bodlaender. A linear-time algorithm for finding tree-decompositions of small treewidth. SIAM Journal on computing, 25(6):1305-1317, 1996. Google Scholar
  8. Bruno Courcelle. The monadic second-order logic of graphs. i. recognizable sets of finite graphs. Information and computation, 85(1):12-75, 1990. Google Scholar
  9. Marek Cygan, Fedor V. Fomin, Lukasz Kowalik, Daniel Lokshtanov, Dániel Marx, Marcin Pilipczuk, Michal Pilipczuk, and Saket Saurabh. Parameterized Algorithms. Springer, 2015. URL:
  10. Reinhard Diestel. Graph Theory, 4th Edition, volume 173 of Graduate texts in mathematics. Springer, 2012. Google Scholar
  11. M. R. Fellows. Parameterized complexity for practical computing., 2018. [Online; accessed 22-04-2018].
  12. Johannes Klaus Fichte, Neha Lodha, and Stefan Szeider. Sat-based local improvement for finding tree decompositions of small width. In Theory and Applications of Satisfiability Testing - SAT, pages 401-411, 2017. Google Scholar
  13. J. Flum and M. Grohe. Parameterized Complexity Theory. Texts in Theoretical Computer Science. Springer, 2006. URL:
  14. Markus Frick and Martin Grohe. The complexity of first-order and monadic second-order logic revisited. Annals of pure and applied logic, 130(1-3):3-31, 2004. Google Scholar
  15. gtfs2graphs - A Transit Feed to Graph Format Converter. Accessed: 2018-04-20.
  16. Joachim Kneis, Alexander Langer, and Peter Rossmanith. Courcelle’s theorem - a game-theoretic approach. Discrete Optimization, 8(4):568-594, 2011. URL:
  17. Alexander Langer. Fast algorithms for decomposable graphs. PhD thesis, RWTH Aachen, 2013. Google Scholar
  18. The Parameterized Algorithms and Computational Experiments Challenge (PACE). Accessed: 2018-04-20.
  19. Hisao Tamaki. Positive-instance driven dynamic programming for treewidth. In Proc. ESA, pages 68:1-68:13, 2017. Google Scholar