13

I'm going to start a scientific project about automata and graph theory, and I'm searching for a graph library that supports features like:

  • directed/undirected graphs
  • graph isomorphism test (i.e. is graph g1 isomorphic w.r.t. g2?)
  • subgraph isomorphism test (i.e. is a graph g1 isomorphic to a subgraph of g2?)
  • graph search, visits and such
  • possibly, quite fast since I need to make some serious computations

I know about the Boost Graph Library, but it lacks subgraph testing as far as I understood from its documentation.

So, my question is: which are the best c++ graph libraries, please? They do not have to provide support for every feature I need, I know it's certainly possible that no existing library fits perfectly my needs.

Riccardo T.
  • 8,907
  • 5
  • 38
  • 78
  • 1
    What are your need? Specify which features you need. This makes making suggestions easier. – RedX Apr 16 '12 at 09:11
  • @RedX: I expanded my needs a little but, but basically the main points were already in my question: subgraph/isomorphism relations tests. – Riccardo T. Apr 16 '12 at 09:18
  • I almost forget to mention it, but I will make heavy computations... performance is a plus :) – Riccardo T. Apr 16 '12 at 09:24
  • 4
    At whoever downvoted and voted to close as "not constructive": please be constructive yourself, and explain what is wrong in my question in your opinion, as it's not clear at all to me. I required specific features and asked for a list of libraries that satisfy them. – Riccardo T. May 11 '12 at 13:30

2 Answers2

3

You could use iGraph: http://igraph.sourceforge.net/ which is a C library which should satisfy what you are after.

There is also http://ubietylab.net/ubigraph/, there is a related SO post here: https://stackoverflow.com/questions/2751826/which-c-graph-library-should-i-use.

I have not used ubigraph so cannot comment on that, I mainly use networkX and iGraph

UPDATE

It seems that ubigraph is dead now so only igraph is maintained currently

Community
  • 1
  • 1
EdChum
  • 376,765
  • 198
  • 813
  • 562
  • That seems like a good choice indeed, thank you for your suggestion. The only thing that concerns me is the date of the latest release, that goes back to 2010... is it a discontinued project? – Riccardo T. Apr 16 '12 at 11:44
  • No it is still active, mainly python bugs are being fixed, it also interfaces with R but it is quite popular in open source usage there is a also ubigraph which has c++ bindings http://ubietylab.net/ubigraph/ – EdChum Apr 16 '12 at 12:02
  • @EdChum: That link is dead now, it seems... – einpoklum Mar 19 '16 at 00:04
  • @einpoklum thanks for letting me know,will remove it – EdChum Mar 19 '16 at 00:06
-1

You may use Cliquer library http://users.tkk.fi/pat/cliquer.html for all calculations related to finding cliques.

Nikhil Vidhani
  • 709
  • 5
  • 11