Finding Maximal Common Subgraphs via Time-Space Efficient Reverse Search

  • Alessio Conte
  • Roberto GrossiEmail author
  • Andrea Marino
  • Luca Versari
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 10976)


For any two given graphs, we study the problem of finding isomorphisms that correspond to inclusion-maximal common induced subgraphs that are connected. While common (induced or not) subgraphs can be easily listed using some well known reduction and state-of-the-art algorithms, they are not guaranteed to be connected. To meet the connectivity requirement, we propose an algorithm that revisits the paradigm of reverse search and guarantees polynomial time per solution (delay) and linear space, on top of showing good practical performance.



Alessio Conte is supported by JST CREST, grant number JPMJCR1401, Japan, and Roberto Grossi, Andrea Marino and Luca Versari are supported by MIUR, Italy.


  1. 1.
    Avis, D., Fukuda, K.: Reverse search for enumeration. Discret. Appl. Math. 65(1), 21–46 (1996)MathSciNetCrossRefGoogle Scholar
  2. 2.
    Bron, C., Kerbosch, J.: Finding all cliques of an undirected graph (algorithm 457). Commun. ACM 16(9), 575–576 (1973)CrossRefGoogle Scholar
  3. 3.
    Cao, Y., Jiang, T., Girke, T.: A maximum common substructure-based algorithm for searching and predicting drug-like compounds. Bioinformatics 24(13), i366–i374 (2008)CrossRefGoogle Scholar
  4. 4.
    Cohen, S., Kimelfeld, B., Sagiv, Y.: Generating all maximal induced subgraphs for hereditary and connected-hereditary graph properties. J. Comput. Syst. Sci. 74(7), 1147–1159 (2008)MathSciNetCrossRefGoogle Scholar
  5. 5.
    Conte, A., Grossi, R., Marino, A., Tattini, L., Versari, L.: A fast algorithm for large common connected induced subgraphs. In: Figueiredo, D., Martín-Vide, C., Pratas, D., Vega-Rodríguez, M.A. (eds.) AlCoB 2017. LNCS, vol. 10252, pp. 62–74. Springer, Cham (2017). Scholar
  6. 6.
    Conte, A., Grossi, R., Marino, A., Versari, L.: Sublinear-space bounded-delay enumeration for massive network analytics: maximal cliques. In: ICALP, pp. 148:1–148:15 (2016)Google Scholar
  7. 7.
    Conte, A., Grossi, R., Marino, A., Versari, L.: Listing Maximal Subgraphs in Strongly Accessible Set Systems, March 2018. arXiv e-prints arXiv:1803.03659
  8. 8.
    Droschinsky, A., Heinemann, B., Kriege, N., Mutzel, P.: Enumeration of maximum common subtree isomorphisms with polynomial-delay. In: Ahn, H.-K., Shin, C.-S. (eds.) ISAAC 2014. LNCS, vol. 8889, pp. 81–93. Springer, Cham (2014). Scholar
  9. 9.
    Ehrlich, H.C., Rarey, M.: Maximum common subgraph isomorphism algorithms and their applications in molecular science: a review. Wiley Interdiscip. Rev.: Comput. Mol. Sci. 1(1), 68–79 (2011)Google Scholar
  10. 10.
    Gardiner, E.J., Artymiuk, P.J., Willett, P.: Clique-detection algorithms for matching 3-dimensional molecular structures. J. Mol. Graph. Model. 15, 245–253 (1997)CrossRefGoogle Scholar
  11. 11.
    Gupta, A., Nishimura, N.: Finding largest subtrees and smallest supertrees. Algorithmica 21(2), 183–210 (1998)MathSciNetCrossRefGoogle Scholar
  12. 12.
    Huang, X., Lai, J., Jennings, S.: Maximum common subgraph: some upper bound and lower bound results. BMC Bioinform. 7(Suppl 4), S6 (2006)CrossRefGoogle Scholar
  13. 13.
    Koch, I.: Enumerating all connected maximal common subgraphs in two graphs. Theor. Comp. Sci. 250(1), 1–30 (2001)MathSciNetCrossRefGoogle Scholar
  14. 14.
    Koch, I., Lengauer, T., Wanke, E.: An algorithm for finding maximal common subtopologies in a set of protein structures. J. Comput. Biol. 3(2), 289–306 (1996)CrossRefGoogle Scholar
  15. 15.
    Krissinel, E.B., Henrick, K.: Common subgraph isomorphism detection by backtracking search. Softw.: Pract. Exp. 34(6), 591–607 (2004)Google Scholar
  16. 16.
    Lawler, E.L., Lenstra, J.K., Rinnooy Kan, A.H.G.: Generating all maximal independent sets: NP-hardness andpolynomial-time algorithms. SIAM J. Comput. 9(3), 558–565 (1980)MathSciNetCrossRefGoogle Scholar
  17. 17.
    Levi, G.: A note on the derivation of maximal common subgraphs of two directed or undirected graphs. CALCOLO 9(4), 341–352 (1973)MathSciNetCrossRefGoogle Scholar
  18. 18.
    Makino, K., Uno, T.: New algorithms for enumerating all maximal cliques. In: Hagerup, T., Katajainen, J. (eds.) SWAT 2004. LNCS, vol. 3111, pp. 260–272. Springer, Heidelberg (2004). Scholar
  19. 19.
    Suters, W.H., Abu-Khzam, F.N., Zhang, Y., Symons, C.T., Samatova, N.F., Langston, M.A.: A new approach and faster exact methods for the maximum common subgraph problem. In: Wang, L. (ed.) COCOON 2005. LNCS, vol. 3595, pp. 717–727. Springer, Heidelberg (2005). Scholar
  20. 20.
    Uno, T.: Two general methods to reduce delay and change of enumerationalgorithms. NII Technical report NII-2003-004E, Tokyo, Japan (2003)Google Scholar
  21. 21.
    Van Berlo, R.J.P., Winterbach, W., De Groot, M.J.L., Bender, A., Verheijen, P.J.T., Reinders, M.J.T., de Ridder, D.: Efficient calculation of compound similarity based on maximum common subgraphs and its application to prediction of gene transcript levels. Int. J. Bioinform. Res. Appl. 9(4), 407–432 (2013)CrossRefGoogle Scholar
  22. 22.
    Welling, R.: A performance analysis on maximal common subgraph algorithms. In: 15th Twente Student Conference on IT. University of Twente, The Netherlands (2011)Google Scholar
  23. 23.
    Yuan, Y., Wang, G., Chen, L., Wang, H.: Graph similarity search on large uncertain graph databases. VLDB J. 24(2), 271–296 (2015)CrossRefGoogle Scholar

Copyright information

© Springer International Publishing AG, part of Springer Nature 2018

Authors and Affiliations

  • Alessio Conte
    • 1
  • Roberto Grossi
    • 2
    Email author
  • Andrea Marino
    • 2
  • Luca Versari
    • 2
  1. 1.National Institute of InformaticsTokyoJapan
  2. 2.Università di PisaPisaItaly

Personalised recommendations