Composition species

class sage.combinat.species.composition_species.CompositionSpecies(F, G, min=None, max=None, weight=None)

Bases: sage.combinat.species.species.GenericCombinatorialSpecies, sage.structure.unique_representation.UniqueRepresentation

Returns the composition of two species.

EXAMPLES:

sage: E = species.SetSpecies()
sage: C = species.CycleSpecies()
sage: S = E(C)
sage: S.generating_series().coefficients(5)
[1, 1, 1, 1, 1]
sage: E(C) is S
True
weight_ring()

Returns the weight ring for this species. This is determined by asking Sage’s coercion model what the result is when you multiply (and add) elements of the weight rings for each of the operands.

EXAMPLES:

sage: E = species.SetSpecies(); C = species.CycleSpecies()
sage: L = E(C)
sage: L.weight_ring()
Rational Field
class sage.combinat.species.composition_species.CompositionSpeciesStructure(parent, labels, pi, f, gs)

Bases: sage.combinat.species.structure.GenericSpeciesStructure

change_labels(labels)

Return a relabelled structure.

INPUT:

  • labels, a list of labels.

OUTPUT:

A structure with the i-th label of self replaced with the i-th label of the list.

EXAMPLES:

sage: p = PermutationGroupElement((2,3))
sage: E = species.SetSpecies(); C = species.CycleSpecies()
sage: L = E(C)
sage: S = L.structures(['a','b','c']).list()
sage: a = S[2]; a
F-structure: {{'a', 'c'}, {'b'}}; G-structures: (('a', 'c'), ('b'))
sage: a.change_labels([1,2,3])
F-structure: {{1, 3}, {2}}; G-structures: [(1, 3), (2)]
transport(perm)

EXAMPLES:

sage: p = PermutationGroupElement((2,3))
sage: E = species.SetSpecies(); C = species.CycleSpecies()
sage: L = E(C)
sage: S = L.structures(['a','b','c']).list()
sage: a = S[2]; a
F-structure: {{'a', 'c'}, {'b'}}; G-structures: (('a', 'c'), ('b'))
sage: a.transport(p)
F-structure: {{'a', 'b'}, {'c'}}; G-structures: (('a', 'c'), ('b'))
sage.combinat.species.composition_species.CompositionSpecies_class

alias of sage.combinat.species.composition_species.CompositionSpecies