graphscope.nx.generators.expanders.paley_graph

graphscope.nx.generators.expanders.paley_graph(p, create_using=None)[源代码]

返回在p个节点上的Paley (p-1)/2-正则图。

返回的图是一个基于Z/pZ的图,其中x和y之间存在边的充要条件是x-y在Z/pZ中为非零平方数。

如果 p = 1 mod 4,-1 在 Z/pZ 中是一个平方数,因此 x-y 是平方数当且仅当 y-x 也是平方数,即 Paley 图中的边是对称的。

如果 p = 3 mod 4,-1 在 Z/pZ 中不是一个平方数,因此 x-y 或 y-x 中有一个是 Z/pZ 中的平方数,但不会两者都是。

需要注意的是,佩利图(Paley graphs)的更广义定义将此构造扩展到具有q=p^n个顶点的图,方法是使用有限域F_q而非Z/pZ。该构造需要计算一般有限域中的平方,但此处并未实现(例如paley_graph(25)不会返回与5^2相关联的真实佩利图)。

Parameters:
  • p (int, 一个奇素数。) –

  • create_using (NetworkX 图构造函数可选 (默认=nx.Graph)) - 要创建的图类型。如果是图实例,则在填充前会被清空。

Returns:

G – 构建的有向图。

Return type:

Raises:

NetworkXError – 如果该图是多图。

参考文献

B. Bollobas 所著《随机图》第13章。第二版。 剑桥高等数学研究系列,第73卷。 剑桥大学出版社,剑桥(2001年)。