Definition 8.13. [BLL98, chp. 1.4] Let F and G be two species of structures such that G[∅] = ∅ (i. e., there is no G-structure on the empty set). The species F ∘G (also denoted F(G)), called the (partitional) composite of F with G, is defined as
(45) |
The generating series corresponding to the composition of the species F and G are:
(F ∘ G)(x) | = F(G(x)), | (46) |
= ZF((x),(x2),(x3)…) | (47) | |
ZF∘G(x1,x2,…) | = ZF(ZG(x1,x2,…),ZG(x2,x4,…),…). | (48) |
As an auxiliary function, we compute ∏ p∈πG[p] recursively. The following function yields the elements of this set in a lexicographic order according to the order of the sets in the partition π.
http://www.mail-archive.com/aldor-combinat-devel%40lists.sourceforge.net/msg00133.html.
However, we can generate all as follows:
isomorphismTypes(pi::SetSpecies(SetSpecies L))$F(SetSpecies L)
isomorphismTypes(pi)$F(L)
Although that approach would require each domain that appears as the first argument of Compose to provide an additional function
isomorphismTypes: Partition L -> Generator %
In fact, using Partition instead of SetSpecies is basically encoding a multiset.
As an auxiliary function, we compute ∏ p∈πG[p] recursively. The following function yields the elements of this set in a lexicographic order according to the order of the sets in the partition π.