Bug introduced in 9.0.1 or earlier and fixed in 10.2.0
Note: FindVertexCut
is new in 9.0.
It seems that Mathematica is not correctly finding the smallest set of vertices that will disconnect a graph. Here is an example:
g = GraphData[{"Cycle", 5}]
FindVertexCut[g];
HighlightGraph[g, %]
results in vertices {3, 4} being removed. But removing two adjacent vertices of a cycle doesn't increase the number of components. If we remove 3 and 4, the graph is a tree and is still connected. This ends up happening with quite a few graphs, another example being the complete graph with 6 vertices. It only removes one vertex and doing so will obviously not disconnect the complete-6 graph. But it does work some of the time; e.g., with a 6-cycle, Mathematica removes two non-adjacent vertices.
Have I used FindVertexCut incorrectly? FindVertexCut with only a graph as its argument will result in "the smallest vertex cut of" my graph, and according to documentation, "A vertex cut of a graph g is a list of vertices whose deletion from g disconnects g." What's the problem here?
Comments
Post a Comment