CompDP: A Framework for Simultaneous Subgraph Counting Under Connectivity Constraints

Authors Kengo Nakamura , Masaaki Nishino , Norihito Yasuda, Shin-ichi Minato

Thumbnail PDF


  • Filesize: 1.04 MB
  • 20 pages

Document Identifiers

Author Details

Kengo Nakamura
  • NTT Communication Science Laboratories, Kyoto, Japan
  • Graduate School of Informatics, Kyoto University, Japan
Masaaki Nishino
  • NTT Communication Science Laboratories, Kyoto, Japan
Norihito Yasuda
  • NTT Communication Science Laboratories, Kyoto, Japan
Shin-ichi Minato
  • Graduate School of Informatics, Kyoto University, Japan

Cite AsGet BibTex

Kengo Nakamura, Masaaki Nishino, Norihito Yasuda, and Shin-ichi Minato. CompDP: A Framework for Simultaneous Subgraph Counting Under Connectivity Constraints. In 21st International Symposium on Experimental Algorithms (SEA 2023). Leibniz International Proceedings in Informatics (LIPIcs), Volume 265, pp. 11:1-11:20, Schloss Dagstuhl – Leibniz-Zentrum für Informatik (2023)


The subgraph counting problem computes the number of subgraphs of a given graph that satisfy some constraints. Among various constraints imposed on a graph, those regarding the connectivity of vertices, such as "these two vertices must be connected," have great importance since they are indispensable for determining various graph substructures, e.g., paths, Steiner trees, and rooted spanning forests. In this view, the subgraph counting problem under connectivity constraints is also important because counting such substructures often corresponds to measuring the importance of a vertex in network infrastructures. However, we must solve the subgraph counting problems multiple times to compute such an importance measure for every vertex. Conventionally, they are solved separately by constructing decision diagrams such as BDD and ZDD for each problem. However, even solving a single subgraph counting is a computationally hard task, preventing us from solving it multiple times in a reasonable time. In this paper, we propose a dynamic programming framework that simultaneously counts subgraphs for every vertex by focusing on similar connectivity constraints. Experimental results show that the proposed method solved multiple subgraph counting problems about 10-20 times faster than the existing approach for many problem settings.

Subject Classification

ACM Subject Classification
  • Mathematics of computing → Graph theory
  • Subgraph counting
  • Connectivity
  • Zero-suppressed Binary Decision Diagram


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


  1. N. Alon, R. Yuster, and U. Zwick. Finding and counting given length cycles. Algorithmica, 17:209-223, 1997. Google Scholar
  2. Eric T. Bax. Algorithms to count paths and cycles. Information Processing Letters, 52(5):249-252, 1994. Google Scholar
  3. Randal E. Bryant. Graph-based algorithms for boolean function manipulation. IEEE Trans. Comput., C-35(8):677-691, 1986. Google Scholar
  4. Radu Curticapean. Counting problems in parameterized complexity. In Proc. of the 13th International Symposium on Parameterized and Exact Computation (IPEC), pages 1:1-1:18, 2018. Google Scholar
  5. Jörg Flum and Martin Grohe. The parameterized complexity of counting problems. SIAM J. Comput., 33(4):892-922, 2004. Google Scholar
  6. Luigi Fratta and Ugo Montanari. A Boolean algebra method for computing the terminal reliability in a communication network. IEEE Trans. Circuit Theory, 20(3):203-211, 1973. Google Scholar
  7. RomeGraph. URL:
  8. G. Hardy, C. Lucet, and N. Limnios. K-terminal network reliability measures with binary decision diagrams. IEEE Trans. Rel., 56(3):506-515, 2007. Google Scholar
  9. J.U. Herrmann. Improving reliability calculation with augmented binary decision diagrams. In Proc. of the 24th IEEE International Conference on Advanced Information Networking and Applications (AINA), pages 328-333, 2010. Google Scholar
  10. Makoto Imase and Bernard M. Waxman. Dynamic Steiner tree problem. SIAM J. Discrete. Math., 4(3):369-384, 1991. Google Scholar
  11. Takeru Inoue. Reliability analysis for disjoint paths. IEEE Trans. Rel., 68(3):985-998, 2018. Google Scholar
  12. Takeru Inoue, Norihito Yasuda, Shunsuke Kawano, Yuji Takenobu, Shin-ichi Minato, and Yasuhiro Hayashi. Distribution network verification for secure restoration by enumerating all critical failures. IEEE Trans. Smart Grid, 6(2):843-852, 2015. Google Scholar
  13. Yuma Inoue and Shin-ichi Minato. Acceleration of ZDD construction for subgraph enumeration via pathwidth optimization. Technical Report TCS-TR-A-16-80, Division of Computer Science, Hokkaido University, 2016. Google Scholar
  14. Hiroaki Iwashita, Jun Kawahara, and Kohei Shinohara. TdZdd. URL:
  15. Hiroaki Iwashita and Shin-ichi Minato. Efficient top-down ZDD construction techniques using recursive specifications. Technical Report TCS-TR-A-13-69, Division of Computer Science, Hokkaido University, 2013. Google Scholar
  16. Hiroaki Iwashita, Yoshio Nakazawa, Jun Kawahara, Takeaki Uno, and Shin-ichi Minato. Efficient computation of the number of paths in a grid graph with minimal perfect hash functions. Technical Report TCS-TR-A-13-64, Division of Computer Science, Hokkaido University, 2013. Google Scholar
  17. Jun Kawahara, Takeru Inoue, Hiroaki Iwashita, and Shin-ichi Minato. Frontier-based search for enumerating all constrained subgraphs with compressed representation. IEICE Trans. Fundamentals, E100-A(9):1773-1784, 2017. Google Scholar
  18. Donald E. Knuth. The art of computer programming: Vol. 4A. Combinatorial Algorithms, Part 1. Addison-Wesley Professional, 2011. Google Scholar
  19. Takanori Maehara, Hirofumi Suzuki, and Masakazu Ishihata. Exact computation of influence spread by binary decision diagrams. In Proc. of the 26th International World Wide Web Conference (WWW), pages 947-956, 2017. Google Scholar
  20. Shin-ichi Minato. Zero-suppressed BDDs for set manipulation in combinatorial problems. In Proc. of the 30th ACM/IEEE Design Automation Conference (DAC), pages 272-277, 1993. Google Scholar
  21. Fred Moskowitz. The analysis of redundancy networks. Transactions of the American Institute of Electrical Engineers, Part I: Communication and Electronics, 77(5):627-632, 1958. Google Scholar
  22. Kengo Nakamura, Takeru Inoue, Masaaki Nishino, and Norihito Yasuda. Efficient network reliability evaluation for client-server model. In Proc. of IEEE Global Communication Conference (GLOBECOM), pages 1-6, 2021. Google Scholar
  23. R. C. Read and R. E. Tarjan. Bounds on backtrack algorithms for listing cycles, paths, and spanning trees. Networks, 5(3):237-252, 1975. Google Scholar
  24. Neil Robertson and P.D. Seymour. Graph minors. I. excluding a forest. Journal of Combinatorial Theory, Series B, 35(1):39-61, 1983. Google Scholar
  25. Arnie Rosenthal. Computing the reliability of complex networks. SIAM J. Appl. Math., 32(2):384-393, 1977. Google Scholar
  26. Shinsaku Sakaue and Kengo Nakamura. Differentiable equilibrium computation with decision diagrams for Stackelberg models of combinatorial congestion games. In Proc. of the 35th Conference on Neural Information Processing Systems (NeurIPS), pages 9416-9428, 2021. Google Scholar
  27. Kyoko Sekine, Hiroshi Imai, and Seiichiro Tani. Computing the Tutte polynomial of a graph of moderate size. In Proc. of the 6th International Symposium on Algorithms and Computation (ISAAC), pages 224-233, 1995. Google Scholar
  28. Akiyoshi Shioura, Akihisa Tamura, and Takeaki Uno. An optimal algorithm for scanning all spanning trees of undirected graphs. SIAM J. Comput., 26(3):678-692, 1997. Google Scholar
  29. Neil Spring, Ratul Mahajan, David Wetherall, and Thomas Anderson. Measuring ISP topologies with Rocketfuel. IEEE/ACM Trans. Netw., 12(1):2-16, 2004. Google Scholar
  30. Hirofumi Suzuki, Masakazu Ishihata, and Shin-ichi Minato. Exact computation of strongly connected reliability by binary decision diagrams. In Proc. of the 12th Annual International Conference on Combinatorial Optimization and Applications (COCOA), pages 281-295, 2018. Google Scholar
  31. S. Tsukiyama, I. Shirakawa, H. Ozaki, and H. Ariyoshi. An algorithm to enumerate all cutsets of a graph in linear time per cutset. J. ACM, 27(4):619-632, 1980. Google Scholar
  32. Leslie G. Valiant. The complexity of enumeration and reliability problems. SIAM J. Comput., 8(3):410-421, 1979. Google Scholar
  33. R. Kevin Wood. Factoring algorithms for computing K-network network reliability. IEEE Trans. Rel., 35(3):269-278, 1986. Google Scholar
Questions / Remarks / Feedback

Feedback for Dagstuhl Publishing

Thanks for your feedback!

Feedback submitted

Could not send message

Please try again later or send an E-mail