我正在尝试使用Bliss来计算图的自同构组生成器。在我用“虫子”打扰这个人之前,我以为我宁愿在这里问这个,这实际上只是我的错。
幸福的一个选项是分支启发式,它指定下一个被认为是哪个单元格(顶点的分区)。
e.g。
f
表示第一个非单元格。fs
表示第一个最小的非单元格。fsm
表示第一个最小的非平凡连接的非单元格。
等这张图让我头疼:http://pastebin.com/Ppq7N1mN(文件格式:http://www.tcs.hut.fi/Software/bliss/fileformat.shtml)
令人惊讶的是,不同分支启发式的生成器数量不同......模式f
,fl
返回2个生成器,但我认为有3个,fs
,{{ 1}},fm
和fsm
确认。
自同构组大小与flm
匹配,这很奇怪。我检查了为什么,并且不知何故幸福认为其中一个发生器的轨道大小为4,因此计算出2 * 4 = 8的顺序。我不知道算法是如何工作的,也不能很好地理解代码,以便找到一个bug。
所以我的问题是:我错过了什么,这种行为是正常的还是库中的错误?
这是输出。预期规范的标签是不同的!
|Aut|=8
我不知道如何标记这个问题,所以我选择了igraph - a library that uses bliss for this problem。
答案 0 :(得分:0)
我的一位朋友建议第二种方法的生成集可能不是最小的。事实上,你可以从其他两个中获取缺少的生成器:
(1 2)(3 4)... * (2 4)(10 18)... * (1 2)(3 4)... = (1 3)(6 14)...