公共应用接口模块#

sympy.combinatorics.testutil._cmp_perm_lists(first, second)[源代码]#

将两个排列列表作为集合进行比较。

解释

这用于测试目的。由于置换的数组形式当前是一个列表,所以置换不能散列,也不能放入集合中。

实例

>>> from sympy.combinatorics.permutations import Permutation
>>> from sympy.combinatorics.testutil import _cmp_perm_lists
>>> a = Permutation([0, 2, 3, 4, 1])
>>> b = Permutation([1, 2, 0, 4, 3])
>>> c = Permutation([3, 4, 0, 1, 2])
>>> ls1 = [a, b, c]
>>> ls2 = [b, c, a]
>>> _cmp_perm_lists(ls1, ls2)
True
sympy.combinatorics.testutil._naive_list_centralizer(self, other, af=False)[源代码]#
sympy.combinatorics.testutil._verify_bsgs(group, base, gens)[源代码]#

验证一个基强发电机组的正确性。

解释

这是一个简单的实现,使用了基的定义和与之相关的强生成集。有其他的程序来验证一个基本和强大的发电机组,但这一个将服务于更稳健的测试。

实例

>>> from sympy.combinatorics.named_groups import AlternatingGroup
>>> from sympy.combinatorics.testutil import _verify_bsgs
>>> A = AlternatingGroup(4)
>>> A.schreier_sims()
>>> _verify_bsgs(A, A.base, A.strong_gens)
True
sympy.combinatorics.testutil._verify_centralizer(group, arg, centr=None)[源代码]#

验证另一个组内的组/集/元素的扶正器。

这是用来测试的 .centralizer()sympy.combinatorics.perm_groups

实例

>>> from sympy.combinatorics.named_groups import (SymmetricGroup,
... AlternatingGroup)
>>> from sympy.combinatorics.perm_groups import PermutationGroup
>>> from sympy.combinatorics.permutations import Permutation
>>> from sympy.combinatorics.testutil import _verify_centralizer
>>> S = SymmetricGroup(5)
>>> A = AlternatingGroup(5)
>>> centr = PermutationGroup([Permutation([0, 1, 2, 3, 4])])
>>> _verify_centralizer(S, A, centr)
True
sympy.combinatorics.testutil._verify_normal_closure(group, arg, closure=None)[源代码]#