Returns the species of cycles.
EXAMPLES:
sage: C = species.CycleSpecies(); C
Cyclic permutation species
sage: C.structures([1,2,3,4]).list()
[(1, 2, 3, 4),
(1, 2, 4, 3),
(1, 3, 2, 4),
(1, 3, 4, 2),
(1, 4, 2, 3),
(1, 4, 3, 2)]
TESTS: We check to verify that the caching of species is actually working.
sage: species.CycleSpecies() is species.CycleSpecies()
True
EXAMPLES:
sage: S = species.CycleSpecies()
sage: a = S.structures(["a","b","c"]).random_element(); a
('a', 'b', 'c')
Returns the group of permutations whose action on this structure leave it fixed.
EXAMPLES:
sage: P = species.CycleSpecies()
sage: a = P.structures([1, 2, 3, 4]).random_element(); a
(1, 2, 3, 4)
sage: a.automorphism_group()
Permutation Group with generators [(1,2,3,4)]
sage: [a.transport(perm) for perm in a.automorphism_group()]
[(1, 2, 3, 4), (1, 2, 3, 4), (1, 2, 3, 4), (1, 2, 3, 4)]
EXAMPLES:
sage: P = species.CycleSpecies()
sage: P.structures(["a","b","c"]).random_element().canonical_label()
('a', 'b', 'c')
Returns this cycle as a permutation group element.
EXAMPLES:
sage: F = species.CycleSpecies()
sage: a = F.structures(["a", "b", "c"]).random_element(); a
('a', 'b', 'c')
sage: a.permutation_group_element()
(1,2,3)
Returns the transport of this structure along the permutation perm.
EXAMPLES:
sage: F = species.CycleSpecies()
sage: a = F.structures(["a", "b", "c"]).random_element(); a
('a', 'b', 'c')
sage: p = PermutationGroupElement((1,2))
sage: a.transport(p)
('a', 'c', 'b')
EXAMPLES:
sage: P = species.CycleSpecies()
sage: c = P.generating_series().coefficients(3)
sage: P._check()
True
sage: P == loads(dumps(P))
True
Returns the species of cycles.
EXAMPLES:
sage: C = species.CycleSpecies(); C
Cyclic permutation species
sage: C.structures([1,2,3,4]).list()
[(1, 2, 3, 4),
(1, 2, 4, 3),
(1, 3, 2, 4),
(1, 3, 4, 2),
(1, 4, 2, 3),
(1, 4, 3, 2)]
TESTS: We check to verify that the caching of species is actually working.
sage: species.CycleSpecies() is species.CycleSpecies()
True
The cycle index series of the species of cyclic permutations is given by
which is equal to
.
EXAMPLES:
sage: P = species.CycleSpecies()
sage: cis = P.cycle_index_series()
sage: cis.coefficients(7)
[0,
p[1],
1/2*p[1, 1] + 1/2*p[2],
1/3*p[1, 1, 1] + 2/3*p[3],
1/4*p[1, 1, 1, 1] + 1/4*p[2, 2] + 1/2*p[4],
1/5*p[1, 1, 1, 1, 1] + 4/5*p[5],
1/6*p[1, 1, 1, 1, 1, 1] + 1/6*p[2, 2, 2] + 1/3*p[3, 3] + 1/3*p[6]]
The generating series for cyclic permutations is
.
EXAMPLES:
sage: P = species.CycleSpecies()
sage: g = P.generating_series()
sage: g.coefficients(10)
[0, 1, 1/2, 1/3, 1/4, 1/5, 1/6, 1/7, 1/8, 1/9]
TESTS:
sage: P = species.CycleSpecies()
sage: g = P.generating_series(RR)
sage: g.coefficients(3)
[0.000000000000000, 1.00000000000000, 0.500000000000000]
EXAMPLES:
sage: P = species.CycleSpecies()
sage: P.isotypes([1,2,3]).list()
[(1, 2, 3)]
The isomorphism type generating series for cyclic permutations is
given by .
EXAMPLES:
sage: P = species.CycleSpecies()
sage: g = P.isotype_generating_series()
sage: g.coefficients(5)
[0, 1, 1, 1, 1]
TESTS:
sage: P = species.CycleSpecies()
sage: g = P.isotype_generating_series(RR)
sage: g.coefficients(3)
[0.000000000000000, 1.00000000000000, 1.00000000000000]
Returns the order of the generating series.
EXAMPLES:
sage: P = species.CycleSpecies()
sage: P._order()
1
EXAMPLES:
sage: P = species.CycleSpecies()
sage: P.structures([1,2,3]).list()
[(1, 2, 3), (1, 3, 2)]