A Faster Tree-Decomposition Based Algorithm for Counting Linear Extensions

We investigate the problem of computing the number of linear extensions of a given n-element poset whose cover graph has treewidth t. We present an algorithm that runs in time O~(nt+3)\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$${\tilde{O}}(n^{t+3})$$\end{document} for any constant t; the notation O~\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$${\tilde{O}}$$\end{document} hides polylogarithmic factors. Our algorithm applies dynamic programming along a tree decomposition of the cover graph; the join nodes of the tree decomposition are handled by fast multiplication of multivariate polynomials. We also investigate the algorithm from a practical point of view. We observe that the running time is not well characterized by the parameters n and t alone: fixing these parameters leaves large variance in running times due to uncontrolled features of the selected optimal-width tree decomposition. We compare two approaches to select an efficient tree decomposition: one is to include additional features of the tree decomposition to build a more accurate, heuristic cost function; the other approach is to fit a statistical regression model to collected running time data. Both approaches are shown to yield a tree decomposition that typically is significantly more efficient than a random optimal-width tree decomposition.

[1]  Christian J. Muise,et al.  Optimal Partial-Order Plan Relaxation via MaxSAT , 2016, J. Artif. Intell. Res..

[2]  Martin Fürer Faster integer multiplication , 2007, STOC '07.

[3]  Kevin B. Korb,et al.  Causal Discovery via MML , 1996, ICML.

[4]  Joris van der Hoeven,et al.  On the bit-complexity of sparse polynomial and series multiplication , 2013, J. Symb. Comput..

[5]  Stefan Woltran,et al.  htd - A Free, Open-Source Framework for (Customized) Tree Decompositions and Beyond , 2017, CPAIOR.

[6]  Mikko Koivisto,et al.  Counting Linear Extensions of Sparse Posets , 2016, IJCAI.

[7]  Mike D. Atkinson,et al.  On computing the number of linear extensions of a tree , 1990 .

[8]  Derek G. Corneil,et al.  Complexity of finding embeddings in a k -tree , 1987 .

[9]  Fedor V. Fomin,et al.  Tree decompositions with small cost , 2002, Discret. Appl. Math..

[10]  Ian H. Witten,et al.  The WEKA data mining software: an update , 2009, SKDD.

[11]  Hans L. Bodlaender A linear time algorithm for finding tree-decompositions of small treewidth , 1993, STOC '93.

[12]  Rina Dechter,et al.  Bucket Elimination: A Unifying Framework for Reasoning , 1999, Artif. Intell..

[13]  Rolf H. Möhring,et al.  Computationally Tractable Classes of Ordered Sets , 1989 .

[14]  Mikko Koivisto,et al.  Counting Linear Extensions in Practice: MCMC Versus Exponential Monte Carlo , 2018, AAAI.

[15]  Stefan Woltran,et al.  Improving the Efficiency of Dynamic Programming on Tree Decompositions via Machine Learning , 2015, IJCAI.

[16]  Martin E. Dyer,et al.  A random polynomial-time algorithm for approximating the volume of convex bodies , 1991, JACM.

[17]  Robert Ganian,et al.  Counting Linear Extensions: Parameterizations by Treewidth , 2018, Algorithmica.

[18]  Lior Pachter,et al.  Convex Rank Tests and Semigraphoids , 2007, SIAM J. Discret. Math..

[19]  William B. Hart,et al.  Fast Library for Number Theory: An Introduction , 2010, ICMS.

[20]  Yoav Shoham,et al.  Empirical hardness models: Methodology and a case study on combinatorial auctions , 2009, JACM.

[21]  Alfred V. Aho,et al.  The Transitive Reduction of a Directed Graph , 1972, SIAM J. Comput..

[22]  Mikko Koivisto,et al.  Structure Discovery in Bayesian Networks by Sampling Partial Orders , 2016, J. Mach. Learn. Res..

[23]  Mikko Koivisto,et al.  A Faster Tree-Decomposition Based Algorithm for Counting Linear Extensions , 2019, Algorithmica.

[24]  Thomas Lukasiewicz,et al.  Probabilistic Preference Logic Networks , 2014, ECAI.

[25]  Ton Kloks,et al.  Efficient and Constructive Algorithms for the Pathwidth and Treewidth of Graphs , 1993, J. Algorithms.

[26]  Marcin Peczarski,et al.  New Results in Minimum-Comparison Sorting , 2004, Algorithmica.

[27]  Mikko Koivisto,et al.  An O*(2^n ) Algorithm for Graph Coloring and Other Partitioning Problems via Inclusion--Exclusion , 2006, 2006 47th Annual IEEE Symposium on Foundations of Computer Science (FOCS'06).

[28]  Scott Garrabrant,et al.  Using TPA to count linear extensions , 2018, J. Discrete Algorithms.

[29]  Umberto Bertelè,et al.  Nonserial Dynamic Programming , 1972 .

[30]  Richard M. Karp,et al.  Dynamic programming meets the principle of inclusion and exclusion , 1982, Oper. Res. Lett..

[31]  R. Geoff Dromey,et al.  An algorithm for the selection problem , 1986, Softw. Pract. Exp..

[32]  G. Brightwell,et al.  Counting linear extensions , 1991 .

[33]  Heikki Mannila,et al.  Global partial orders from sequential data , 2000, KDD '00.