mcpField
S
symmetry-group-identifier

symmetry-group-identifier

github.com/lyndonkl数据与数据库18781 次安装9 周前更新
代码仓库

关于 symmetry-group-identifier

symmetry-group-identifier 面向研究人员和工程师,将变换形式化为对称群。它分类离散与连续对称性、检查群结构,并为架构设计记录群规格。

主要功能

  1. 01区分离散与连续对称性
  2. 02将变换对应到群记号
  3. 03判断群的组合方式
  4. 04检查群的性质
  5. 05记录群规格

适用场景

  1. 01形式化图像数据中的旋转
  2. 02识别分子数据中的对称群
  3. 03描述组合变换
  4. 04为模型设计整理群要求

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/lyndonkl/claude --skill symmetry-group-identifier

安装后在 Claude Code 中输入/symmetry-group-identifier确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

resources/
group-theory-primer.md
lie-groups.md
methodology.md
resources/evaluators/
rubric_group_identification.json

详细介绍

对称群标识

了解你的对称群,有助于确定应使用哪些等变架构模式。本技能将已识别的变换形式化为群论语言。

工作流

复制此清单并跟踪进度:

Group Identification Progress:
- [ ] Step 1: List symmetries from discovery phase
- [ ] Step 2: Classify each as discrete or continuous
- [ ] Step 3: Match to specific groups using taxonomy
- [ ] Step 4: Determine how groups combine
- [ ] Step 5: Verify group properties
- [ ] Step 6: Document final group specification

步骤 1:列出发现阶段识别出的对称性

汇总发现阶段识别出的对称性。列出每种已识别的变换,以及它要求不变性还是等变性。注明置信度。如果尚未发现对称性,先与用户合作,通过领域分析识别对称性。

步骤 2:将每种对称性分类为离散或连续

对于每种对称性,确定:变换集合是有限的(离散)还是无限的(连续)?离散示例:90° 旋转(4 个元素)、n 个项目的排列(n! 个元素)。连续示例:任意角度的旋转、任意距离的平移。使用群分类指导分类。有关数学基础,请参阅群论入门。

步骤 3:根据分类体系匹配具体群

使用离散群和连续群(李群)参考章节。为每种对称性确定具体的群名称和符号。常见对应关系:n 重旋转 → Cₙ,旋转+反射 → Dₙ,排列 → Sₙ,3D 旋转 → SO(3),刚体运动 → SE(3),完整欧几里得群 → E(3)。有关 SO(3)、SE(3)、E(3) 的详细李群信息,请参阅李群参考。

步骤 4:确定群如何组合

如果存在多种对称性,确定它们如何组合。直积(G × H):对称性彼此独立地作用。半直积(G ⋊ H):一种对称性会“扭转”另一种对称性(例如,SE(3) = SO(3) ⋊ ℝ³)。请参阅群的组合。

步骤 5:验证群的性质

检查已识别的结构是否满足群公理:封闭性、结合律、单位元、逆元。验证重要性质:它是紧致的吗?(会影响表示论。)它是阿贝尔群吗?(是否满足交换律。)它是连通的吗?(会影响实现。)请使用群性质检查清单。有关详细的验证方法,请参阅方法。

步骤 6:记录最终群规范

使用输出模板创建规范。包括:群名称/符号、维度/大小、关键性质、不变性与等变性要求,以及推荐的架构系列。此规范为架构设计奠定基础。此输出的质量标准见质量评分标准。

群分类

概览图
                    SYMMETRY GROUPS
                          │
          ┌───────────────┴───────────────┐
          │                               │
     DISCRETE                        CONTINUOUS
          │                          (Lie Groups)
          │                               │
    ┌─────┼─────┐               ┌────────┼────────┐
    │     │     │               │        │        │
  Cyclic Dihedral Symmetric   SO(n)   SE(n)    E(n)
   Cₙ     Dₙ      Sₙ         rotations rigid   Euclidean
                              only    motions  (w/ reflect)
快速参考表
对称类型群符号元素数常见用途
n 重旋转循环群Cₙn图像旋转(90°、60°)
旋转+反射二面体群Dₙ2n正多边形
排列对称群Sₙn!集合、图
2D 旋转(连续)特殊正交群SO(2)∞连续旋转
3D 旋转特殊正交群SO(3)∞3D 定向
3D 刚体运动特殊欧几里得群SE(3)∞机器人学、分子
带反射的 3D 变换欧几里得群E(3)∞化学、物理学

离散群

循环群(Cₙ)

表示内容:以 360°/n 的整数倍旋转

元素:{e, r, r², ..., rⁿ⁻¹},其中 rⁿ = e(单位元)

群旋转示例
C₂0°、180°扑克牌
C₄0°、90°、180°、270°正方形图像
C₆每次旋转 60°六边形图案

适用场景:存在旋转对称性,但不存在反射对称性。

二面体群(Dₙ)

表示内容:正 n 边形的旋转与反射

元素:n 个旋转 + n 个反射 = 共 2n 个

群元素示例
D₄8带对角线的正方形(p4m 群)
D₆12正六边形

适用场景:同时存在旋转和反射对称性。

对称群(Sₙ)

表示内容:n 个元素的所有排列

元素:n! 个排列

适用场景:元素顺序任意(集合、图、点云)。

连续群(李群)

SO(2) - 2D 旋转

元素:任意角度 θ ∈ [0, 2π) 的旋转

矩阵形式:R(θ) = [[cos θ, -sin θ], [sin θ, cos θ]]

适用场景:2D 中的连续旋转对称性。

SO(3) - 3D 旋转

元素:3D 中的所有旋转(3 个自由度)

表示形式:旋转矩阵、四元数、欧拉角、轴角表示

适用场景:3D 朝向无关紧要,但手性很重要。

SE(3) - 3D 刚体运动

元素:3D 中的旋转 + 平移

结构:SE(3) = SO(3) ⋊ ℝ³(半直积)

适用场景:对象可以位于任意位置和朝向,手性很重要。

E(3) - 完整欧几里得群

元素:SE(3) + 反射

结构:E(3) = O(3) ⋊ ℝ³

适用场景:SE(3) 对称性加上反射对称性(大多数分子)。

群层次结构
E(3) = O(3) ⋊ ℝ³
    │ exclude reflections
    ▼
SE(3) = SO(3) ⋊ ℝ³
    │ exclude translations
    ▼
SO(3)
    │ 2D restriction
    ▼
SO(2)

组合群

直积(G × H)

适用场景:对称性相互独立(彼此不影响)。

示例:具有独立平移和颜色置换的图像 → SE(2) × S₃

性质:(g₁, h₁) · (g₂, h₂) = (g₁g₂, h₁h₂)

半直积(G ⋊ H)

适用场景:一种对称性会“扭转”另一种对称性(不满足交换律)。

示例:SE(3) = SO(3) ⋊ ℝ³(先旋转再平移 ≠ 先平移再旋转)

常见情况:SE(n) = SO(n) ⋊ ℝⁿ、E(n) = O(n) ⋊ ℝⁿ、Dₙ = Cₙ ⋊ C₂

群性质检查清单

对于你识别出的群,请验证:

性质问题重要性
紧致群是否“有界”?影响表示论
阿贝尔运算顺序是否重要?(g₁g₂ = g₂g₁?)简化架构
连通群是否连成一体?影响不可约表示
有限元素数量是否有限?决定采用离散还是连续架构

按领域选择群

领域典型群备注
2D 图像分类C₄ 或 D₄p4 或 p4m 群
3D 分子能量E(3) × Sₙ完整欧几里得群 + 原子置换
3D 分子手性SE(3) × Sₙ无反射
点云分类SO(3) × Sₙ旋转 + 置换
图分类Sₙ置换不变
机器人学SE(3)有时带有重力约束

输出模板

SYMMETRY GROUP SPECIFICATION
============================

Identified Symmetries:
1. [Symmetry] → Group: [name] ([notation])
2. [Symmetry] → Group: [name] ([notation])

Combined Group Structure:
- Full group: [G₁ × G₂] or [G₁ ⋊ G₂]
- Size: [# elements] or [continuous]

Group Properties:
- Compact: [Yes/No]
- Abelian: [Yes/No]
- Connected: [Yes/No]

Symmetry Requirements:
- [Group]: [Invariant/Equivariant] for [task type]

Recommended Architecture Family:
- [Architecture] supporting [group]

NEXT STEPS:
- Empirically validate symmetry hypotheses if not yet confirmed
- Design equivariant architecture based on group specification

评论

支持 Markdown