We present the first polynomial-time algorithm to exactly compute the number of labeled chordal graphs on n vertices. Our algorithm solves a more general problem: given n and omega as input, it computes the number of omega-colorable labeled chordal graphs on n vertices, using O(n^7) arithmetic operations. A standard sampling-to-counting reduction then yields a polynomial-time exact sampler that generates an omega-colorable labeled chordal graph on n vertices uniformly at random. Our counting algorithm improves upon the previous best result by Wormald (1985), which computes the number of labeled chordal graphs on n vertices in time exponential in n. An implementation of the polynomial-time counting algorithm gives the number of labeled chordal graphs on up to 30 vertices in less than three minutes on a standard desktop computer. Previously, the number of labeled chordal graphs was only known for graphs on up to 15 vertices.
翻译:摘要:我们提出了首个能够在多项式时间内精确计算n个顶点上标号弦图数量的算法。该算法解决了一个更一般的问题:给定输入n和ω,它使用O(n^7)次算术运算计算n个顶点上可ω着色的标号弦图数量。通过标准的采样-计数归约方法,可进一步得到多项式时间精确采样器,该采样器能够均匀随机生成n个顶点上的可ω着色标号弦图。我们的计数算法改进了Wormald(1985年)此前的最佳结果(该算法计算n个顶点上标号弦图数量所需时间随n呈指数增长)。在标准台式计算机上,该多项式时间计数算法的实现可在三分钟内完成多达30个顶点标号弦图的数量计算。此前,仅有不超过15个顶点标号弦图的数量被确知。