Subset Species#
- class sage.combinat.species.subset_species.SubsetSpecies(min=None, max=None, weight=None)[source]#
Bases:
GenericCombinatorialSpecies
,UniqueRepresentation
Return the species of subsets.
EXAMPLES:
sage: S = species.SubsetSpecies() sage: S.generating_series()[0:5] [1, 2, 2, 4/3, 2/3] sage: S.isotype_generating_series()[0:5] [1, 2, 3, 4, 5] sage: S = species.SubsetSpecies() sage: c = S.generating_series()[0:3] sage: S._check() True sage: S == loads(dumps(S)) True
>>> from sage.all import * >>> S = species.SubsetSpecies() >>> S.generating_series()[Integer(0):Integer(5)] [1, 2, 2, 4/3, 2/3] >>> S.isotype_generating_series()[Integer(0):Integer(5)] [1, 2, 3, 4, 5] >>> S = species.SubsetSpecies() >>> c = S.generating_series()[Integer(0):Integer(3)] >>> S._check() True >>> S == loads(dumps(S)) True
- class sage.combinat.species.subset_species.SubsetSpeciesStructure(parent, labels, list)[source]#
Bases:
GenericSpeciesStructure
- automorphism_group()[source]#
Return the group of permutations whose action on this subset leave it fixed.
EXAMPLES:
sage: F = species.SubsetSpecies() sage: a = F.structures([1,2,3,4])[6]; a {1, 3} sage: a.automorphism_group() # needs sage.groups Permutation Group with generators [(2,4), (1,3)]
>>> from sage.all import * >>> F = species.SubsetSpecies() >>> a = F.structures([Integer(1),Integer(2),Integer(3),Integer(4)])[Integer(6)]; a {1, 3} >>> a.automorphism_group() # needs sage.groups Permutation Group with generators [(2,4), (1,3)]
sage: [a.transport(g) for g in a.automorphism_group()] # needs sage.groups [{1, 3}, {1, 3}, {1, 3}, {1, 3}]
>>> from sage.all import * >>> [a.transport(g) for g in a.automorphism_group()] # needs sage.groups [{1, 3}, {1, 3}, {1, 3}, {1, 3}]
- canonical_label()[source]#
Return the canonical label of
self
.EXAMPLES:
sage: P = species.SubsetSpecies() sage: S = P.structures(["a", "b", "c"]) sage: [s.canonical_label() for s in S] [{}, {'a'}, {'a'}, {'a'}, {'a', 'b'}, {'a', 'b'}, {'a', 'b'}, {'a', 'b', 'c'}]
>>> from sage.all import * >>> P = species.SubsetSpecies() >>> S = P.structures(["a", "b", "c"]) >>> [s.canonical_label() for s in S] [{}, {'a'}, {'a'}, {'a'}, {'a', 'b'}, {'a', 'b'}, {'a', 'b'}, {'a', 'b', 'c'}]
- complement()[source]#
Return the complement of
self
.EXAMPLES:
sage: F = species.SubsetSpecies() sage: a = F.structures(["a", "b", "c"])[5]; a {'a', 'c'} sage: a.complement() {'b'}
>>> from sage.all import * >>> F = species.SubsetSpecies() >>> a = F.structures(["a", "b", "c"])[Integer(5)]; a {'a', 'c'} >>> a.complement() {'b'}
- label_subset()[source]#
Return a subset of the labels that “appear” in this structure.
EXAMPLES:
sage: P = species.SubsetSpecies() sage: S = P.structures(["a", "b", "c"]) sage: [s.label_subset() for s in S] [[], ['a'], ['b'], ['c'], ['a', 'b'], ['a', 'c'], ['b', 'c'], ['a', 'b', 'c']]
>>> from sage.all import * >>> P = species.SubsetSpecies() >>> S = P.structures(["a", "b", "c"]) >>> [s.label_subset() for s in S] [[], ['a'], ['b'], ['c'], ['a', 'b'], ['a', 'c'], ['b', 'c'], ['a', 'b', 'c']]
- transport(perm)[source]#
Return the transport of this subset along the permutation perm.
EXAMPLES:
sage: F = species.SubsetSpecies() sage: a = F.structures(["a", "b", "c"])[5]; a {'a', 'c'} sage: p = PermutationGroupElement((1,2)) # needs sage.groups sage: a.transport(p) # needs sage.groups {'b', 'c'} sage: p = PermutationGroupElement((1,3)) # needs sage.groups sage: a.transport(p) # needs sage.groups {'a', 'c'}
>>> from sage.all import * >>> F = species.SubsetSpecies() >>> a = F.structures(["a", "b", "c"])[Integer(5)]; a {'a', 'c'} >>> p = PermutationGroupElement((Integer(1),Integer(2))) # needs sage.groups >>> a.transport(p) # needs sage.groups {'b', 'c'} >>> p = PermutationGroupElement((Integer(1),Integer(3))) # needs sage.groups >>> a.transport(p) # needs sage.groups {'a', 'c'}
- sage.combinat.species.subset_species.SubsetSpecies_class[source]#
alias of
SubsetSpecies