公共应用接口模块#
- 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._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