下面的代码使用R的igraph包生成两个图,G1和G2,应该是同构的。第一张支票声称他们不是,但第二张说他们是。唯一的区别是我将第一个 e1 中的 6 替换为第二个 e1 中的 4。
library(igraph)
e1 = c(1,2,1,5,2,1,2,5,2,6,3,5,5,1,5,2,5,3,5,6,6,2,6,5)
e2 = c(1,2,1,3,1,4,1,5,2,1,2,5,3,1,3,5,4,1,5,1,5,2,5,3)
G1 = make_graph(e1)
G2 = make_graph(e2)
isomorphic(G1,G2)
e1 = c(1,2,1,5,2,1,2,5,2,4,3,5,5,1,5,2,5,3,5,4,4,2,4,5)
G1 = make_graph(e1)
isomorphic(G1,G2)
当我画出前两张图时,我很清楚它们实际上是同构的,如下图所示。
为什么 R 包 igraph 的函数同构给出不正确的结果?是否知道在某些情况下它不起作用?