# Characteristic Species¶

class sage.combinat.species.characteristic_species.CharacteristicSpecies(n, min=None, max=None, weight=None)

Return the characteristic species of order $$n$$.

This species has exactly one structure on a set of size $$n$$ and no structures on sets of any other size.

EXAMPLES:

sage: X = species.CharacteristicSpecies(1)
sage: X.structures([1]).list()
[1]
sage: X.structures([1,2]).list()
[]
sage: X.generating_series().coefficients(4)
[0, 1, 0, 0]
sage: X.isotype_generating_series().coefficients(4)
[0, 1, 0, 0]
sage: X.cycle_index_series().coefficients(4)
[0, p[1], 0, 0]

sage: F = species.CharacteristicSpecies(3)
sage: c = F.generating_series().coefficients(4)
sage: F._check()
True
True

class sage.combinat.species.characteristic_species.CharacteristicSpeciesStructure(parent, labels, list)
automorphism_group()

Returns the group of permutations whose action on this structure leave it fixed. For the characteristic species, there is only one structure, so every permutation is in its automorphism group.

EXAMPLES:

sage: F = species.CharacteristicSpecies(3)
sage: a = F.structures(["a", "b", "c"]).random_element(); a
{'a', 'b', 'c'}
sage: a.automorphism_group()
Symmetric group of order 3! as a permutation group

canonical_label()

EXAMPLES:

sage: F = species.CharacteristicSpecies(3)
sage: a = F.structures(["a", "b", "c"]).random_element(); a
{'a', 'b', 'c'}
sage: a.canonical_label()
{'a', 'b', 'c'}

transport(perm)

Returns the transport of this structure along the permutation perm.

EXAMPLES:

sage: F = species.CharacteristicSpecies(3)
sage: a = F.structures(["a", "b", "c"]).random_element(); a
{'a', 'b', 'c'}
sage: p = PermutationGroupElement((1,2))
sage: a.transport(p)
{'a', 'b', 'c'}

sage.combinat.species.characteristic_species.CharacteristicSpecies_class
class sage.combinat.species.characteristic_species.EmptySetSpecies(min=None, max=None, weight=None)

Returns the empty set species.

This species has exactly one structure on the empty set. It is the same (and is implemented) as CharacteristicSpecies(0).

EXAMPLES:

sage: X = species.EmptySetSpecies()
sage: X.structures([]).list()
[{}]
sage: X.structures([1,2]).list()
[]
sage: X.generating_series().coefficients(4)
[1, 0, 0, 0]
sage: X.isotype_generating_series().coefficients(4)
[1, 0, 0, 0]
sage: X.cycle_index_series().coefficients(4)
[p[], 0, 0, 0]

sage.combinat.species.characteristic_species.EmptySetSpecies_class
class sage.combinat.species.characteristic_species.SingletonSpecies(min=None, max=None, weight=None)

Returns the species of singletons.

This species has exactly one structure on a set of size $$1$$. It is the same (and is implemented) as CharacteristicSpecies(1).

EXAMPLES:

sage: X = species.SingletonSpecies()
sage: X.structures([1]).list()
[1]
sage: X.structures([1,2]).list()
[]
sage: X.generating_series().coefficients(4)
[0, 1, 0, 0]
sage: X.isotype_generating_series().coefficients(4)
[0, 1, 0, 0]
sage: X.cycle_index_series().coefficients(4)
[0, p[1], 0, 0]

sage.combinat.species.characteristic_species.SingletonSpecies_class