命名组¶
- sympy.combinatorics.named_groups.SymmetricGroup(n)[源代码][源代码]¶
生成一个由
n
个元素组成的对称群,作为一个置换群。参考文献
示例
>>> from sympy.combinatorics.named_groups import SymmetricGroup >>> G = SymmetricGroup(4) >>> G.is_group True >>> G.order() 24 >>> list(G.generate_schreier_sims(af=True)) [[0, 1, 2, 3], [1, 2, 3, 0], [2, 3, 0, 1], [3, 1, 2, 0], [0, 2, 3, 1], [1, 3, 0, 2], [2, 0, 1, 3], [3, 2, 0, 1], [0, 3, 1, 2], [1, 0, 2, 3], [2, 1, 3, 0], [3, 0, 1, 2], [0, 1, 3, 2], [1, 2, 0, 3], [2, 3, 1, 0], [3, 1, 0, 2], [0, 2, 1, 3], [1, 3, 2, 0], [2, 0, 3, 1], [3, 2, 1, 0], [0, 3, 2, 1], [1, 0, 3, 2], [2, 1, 0, 3], [3, 0, 2, 1]]
- sympy.combinatorics.named_groups.CyclicGroup(n)[源代码][源代码]¶
生成阶为
n
的循环群作为置换群。示例
>>> from sympy.combinatorics.named_groups import CyclicGroup >>> G = CyclicGroup(6) >>> G.is_group True >>> G.order() 6 >>> list(G.generate_schreier_sims(af=True)) [[0, 1, 2, 3, 4, 5], [1, 2, 3, 4, 5, 0], [2, 3, 4, 5, 0, 1], [3, 4, 5, 0, 1, 2], [4, 5, 0, 1, 2, 3], [5, 0, 1, 2, 3, 4]]
- sympy.combinatorics.named_groups.DihedralGroup(n)[源代码][源代码]¶
生成二面体群 \(D_n\) 作为置换群。
参考文献
[1]示例
>>> from sympy.combinatorics.named_groups import DihedralGroup >>> G = DihedralGroup(5) >>> G.is_group True >>> a = list(G.generate_dimino()) >>> [perm.cyclic_form for perm in a] [[], [[0, 1, 2, 3, 4]], [[0, 2, 4, 1, 3]], [[0, 3, 1, 4, 2]], [[0, 4, 3, 2, 1]], [[0, 4], [1, 3]], [[1, 4], [2, 3]], [[0, 1], [2, 4]], [[0, 2], [3, 4]], [[0, 3], [1, 2]]]
- sympy.combinatorics.named_groups.AlternatingGroup(n)[源代码][源代码]¶
生成
n
个元素上的交替群作为置换群。参考文献
[1]阿姆斯特朗, M. “群与对称”
示例
>>> from sympy.combinatorics.named_groups import AlternatingGroup >>> G = AlternatingGroup(4) >>> G.is_group True >>> a = list(G.generate_dimino()) >>> len(a) 12 >>> all(perm.is_even for perm in a) True
- sympy.combinatorics.named_groups.AbelianGroup(*cyclic_orders)[源代码][源代码]¶
返回具有给定阶数的循环群的直积。
参见
DirectProduct
参考文献
[1]https://groupprops.subwiki.org/wiki/有限生成阿贝尔群的结构定理
示例
>>> from sympy.combinatorics.named_groups import AbelianGroup >>> AbelianGroup(3, 4) PermutationGroup([ (6)(0 1 2), (3 4 5 6)]) >>> _.is_group True