CayleyPy library
收藏资源简介:
CayleyPy 是一个开源的 Python 库,用于计算 Cayley 图和 Schreier 图。该库支持任意生成器,并提供内置支持 dozens 的已知 Cayley 图的 Sn、An 和矩阵组。CayleyPy 的重点是直接增长计算,通过有效的广度优先搜索算法,比标准计算机代数系统 GAP/SAGE 快 1000 倍。
CayleyPy is an open-source Python library for computing Cayley graphs and Schreier graphs. It supports arbitrary generators, and provides built-in support for dozens of well-known Cayley graphs corresponding to symmetric groups Sn, alternating groups An, and matrix groups. CayleyPy focuses on direct growth computation, leveraging efficient breadth-first search algorithms, and runs up to 1000 times faster than standard computer algebra systems such as GAP/SAGE.
CayleyPy数据集概述
数据集简介
CayleyPy是一个基于人工智能的库,用于处理googol规模的大型图。支持Cayley图、Schreier陪集图等类型。
主要功能
- 支持机器学习/强化学习方法进行路径查找
- 直径和增长率估计
- 嵌入计算
- 小子图的高效BFS搜索
- 高效随机游走生成
- 高效束搜索
- 哈密顿路径查找
- 支持CPU、GPU、TPU高效计算(使用JAX),可在Kaggle上使用
数学应用
- 直径和增长率估计
- 词度量和扩散距离的近似计算
- 不同类型随机游走的混合时间估计
- 从给定状态进行BFS搜索(增长函数、邻接矩阵、最后一层)
- 图和生成器库(LRX、TopSpin、魔方、花环、地球仪等)
- 包含某些问题解决方案的数据集库
安装方式
-
推荐从GitHub安装最新版本: bash pip install git+https://github.com/cayleypy/cayleypy
-
也可使用pip安装(可能缺少最新功能): bash pip install cayleypy
文档资源
最新版本的库文档(API参考)可在https://cayleypy.github.io/cayleypy-docs/api.html获取。
开发指南
开发环境设置
bash git clone https://github.com/cayleypy/cayleypy.git cd cayleypy pip install -e .[torch,lint,test,dev,docs]
测试与检查
-
运行所有测试(包括慢速测试): bash RUN_SLOW_TESTS=1 pytest
-
提交前检查: bash ./lint.sh pytest
-
覆盖率检查: bash coverage run -m pytest && coverage html
代码规范
- 使用Black代码格式化工具
- 遵循Google Python风格指南
- 使用pylint检查强制执行样式规则
使用示例
基本用法
- 定义置换群和矩阵群的Cayley图
- 运行BFS搜索
- 获取显式Networkx图
计算功能
- Cayley图谱计算
- 路径查找(束搜索、BFS)
- 增长函数计算(LX、TopSpin陪集)
- 性能基准测试(BFS版本比较、GPU基准测试)
模型支持
预测器模型
- 包含机器学习模型库,用于束搜索算法中的路径查找
- 可通过
Predictor.pretrained轻松访问预训练模型 - 当前可用模型列表位于:https://github.com/cayleypy/cayleypy/blob/main/cayleypy/models/models_lib.py
模型架构
- 基于PyTorch神经网络
- 包含三部分:模型架构描述、超参数配置、模型权重
- 权重存储在Kaggle平台
项目来源
- 项目理念来源于Alexander Chervov
- 初始代码开发可见Kaggle数据集:https://www.kaggle.com/datasets/alexandervc/growth-in-finite-groups
- 参考论文:https://arxiv.org/abs/2502.18663, https://arxiv.org/abs/2502.13266

- 1CayleyPy Growth: Efficient growth computations and hundreds of new conjectures on Cayley graphs (Brief version)CayleyPy project · 2025年



