Returns the species of permutations.
EXAMPLES:
sage: P = species.PermutationSpecies()
sage: P.generating_series().coefficients(5)
[1, 1, 1, 1, 1]
sage: P.isotype_generating_series().coefficients(5)
[1, 1, 2, 3, 5]
Returns the group of permutations whose action on this structure leave it fixed.
EXAMPLES:
sage: p = PermutationGroupElement((2,3,4))
sage: P = species.PermutationSpecies()
sage: a = P.structures(["a", "b", "c", "d"]).random_element(); a
['a', 'c', 'b', 'd']
sage: a.automorphism_group()
Permutation Group with generators [(2,3), (1,4)]
sage: [a.transport(perm) for perm in a.automorphism_group()]
[['a', 'c', 'b', 'd'],
['a', 'c', 'b', 'd'],
['a', 'c', 'b', 'd'],
['a', 'c', 'b', 'd']]
EXAMPLES:
sage: P = species.PermutationSpecies()
sage: S = P.structures(["a", "b", "c"])
sage: [s.canonical_label() for s in S]
[['a', 'b', 'c'],
['b', 'a', 'c'],
['b', 'a', 'c'],
['b', 'c', 'a'],
['b', 'c', 'a'],
['b', 'a', 'c']]
Returns self as a permutation group element.
EXAMPLES:
sage: p = PermutationGroupElement((2,3,4))
sage: P = species.PermutationSpecies()
sage: a = P.structures(["a", "b", "c", "d"]).random_element(); a
['a', 'c', 'b', 'd']
sage: a.permutation_group_element()
(2,3)
Returns the transport of this structure along the permutation perm.
EXAMPLES:
sage: p = PermutationGroupElement((2,3,4))
sage: P = species.PermutationSpecies()
sage: a = P.structures(["a", "b", "c", "d"]).random_element(); a
['a', 'c', 'b', 'd']
sage: a.transport(p)
['a', 'd', 'c', 'b']
EXAMPLES:
sage: P = species.PermutationSpecies()
sage: c = P.generating_series().coefficients(3)
sage: P._check()
True
sage: P == loads(dumps(P))
True
Returns the species of permutations.
EXAMPLES:
sage: P = species.PermutationSpecies()
sage: P.generating_series().coefficients(5)
[1, 1, 1, 1, 1]
sage: P.isotype_generating_series().coefficients(5)
[1, 1, 2, 3, 5]
EXAMPLES:
sage: P = species.PermutationSpecies()
sage: P._canonical_rep_from_partition(P._default_structure_class, ["a","b","c"], [2,1])
['b', 'a', 'c']
The cycle index series for the species of permutations is given by
EXAMPLES:
sage: P = species.PermutationSpecies()
sage: g = P.cycle_index_series()
sage: g.coefficients(5)
[p[],
p[1],
p[1, 1] + p[2],
p[1, 1, 1] + p[2, 1] + p[3],
p[1, 1, 1, 1] + p[2, 1, 1] + p[2, 2] + p[3, 1] + p[4]]
EXAMPLES:
sage: P = species.PermutationSpecies()
sage: g = P._cis_gen(QQ, 2)
sage: [g.next() for i in range(10)]
[p[], 0, p[2], 0, p[2, 2], 0, p[2, 2, 2], 0, p[2, 2, 2, 2], 0]
The generating series for the species of linear orders is
.
EXAMPLES:
sage: P = species.PermutationSpecies()
sage: g = P.generating_series()
sage: g.coefficients(10)
[1, 1, 1, 1, 1, 1, 1, 1, 1, 1]
EXAMPLES:
sage: P = species.PermutationSpecies()
sage: P.isotypes([1,2,3]).list()
[[2, 3, 1], [2, 1, 3], [1, 2, 3]]
The isomorphism type generating series is given by
.
EXAMPLES:
sage: P = species.PermutationSpecies()
sage: g = P.isotype_generating_series()
sage: g.coefficients(10)
[1, 1, 2, 3, 5, 7, 11, 15, 22, 30]
EXAMPLES:
sage: P = species.PermutationSpecies()
sage: P.structures([1,2,3]).list()
[[1, 2, 3], [1, 3, 2], [2, 1, 3], [2, 3, 1], [3, 1, 2], [3, 2, 1]]