Download Species, structure and stuff - CMU Math

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts
no text concepts found
Transcript
Species, structure and stuff
Graduate Student Seminar, Carnegie Mellon University
Tuesday 19th January 2016
Clive Newstead
Abstract
Species facilitate the abstract study of combinatorial structures, such as graphs and orderings.
The operations of addition, multiplication, composition and differentiation of species allow for
making new species from old. This can be exploited to count the number of structures on a
set of a given size by simply manipulating power series. By weakening the notion of ‘structure’
to that of ‘stuff’, we can generalise species even further to obtain the notion of a ‘stuff type’.
Species and stuff types are of interest to combinatorialists, logicians and topologists.
Contents
1 Species and generating functions
1
2 Operations on species
3
3 Generating series
5
4 Property, structure and stuff*
8
A video recording of this talk is available to view at
https://www.youtube.com/watch?v=fGsP62E91ng
Please send comments and corrections to [email protected].
1
Species and generating functions
Let U be a finite set with n elements. There are many kinds of structure we can put on U , for
example:
• A (simple) graph structure on U is a set E ⊆ U (2) , where U (2) denotes the set of
unordered pairs of elements of U ; we think of U as being the set of vertices and E as the
set of edges of the graph.
• A directed graph structure on U is a set E ⊆ U 2 — this is much like a graph structure,
except the edges are now ordered pairs.
• A tree structure on U is a graph structure on U with no cycles. Specifically, it’s a set
E ⊆ U (2) with the additional property that, given distinct elements a, b ∈ U , there do not
exist u0 , u1 , . . . , un with u0 = a and u1 = b and {ui , ui+1 } ∈ E for all i < n.
• A linear order on U is (equivalent to) a bijection [n] → U ;
• A permutation of U is a bijection U → U .
• A group structure on U is a triple (e, i, m), where e ∈ U is the identity element, i : U → U
is the inversion function, and m : U × U → U is the multiplication function, satisfying the
usual group axioms.
Note that all of the above structures satisfy the property that, if s is a structure on U and
σ : U → V is a bijection, then σ induces a structure σ · s on V by essentially relabelling each
u ∈ U by σ(u) ∈ V in the specification of the structure s.
For example, let (U, E) be a graph and let σ : U → V be a bijection. We obtain a new graph
(V, σ · E) defined by
σ · E = {(σ(u), σ(u0 )) | (u, u0 ) ∈ E}
As another example, given a linear order ` : [n] → U , we obtain a linear order σ · ` : [n] → V
simply defined by σ · ` = σ ◦ `.
These induced bijections are functorial, in the sense that:
• idU · s = s for all structures s on U .
σ
τ
• (τ ◦ σ) · s = τ · (σ · s) for all structures s on U and bijections U −
→V −
→ W.
The notion of species exploits this functorial property, allowing us to study their properties in an
abstract setting.
1
Definition 1.1. A species is a rule F assigning to each finite set U a finite set F (U ), and to
each bijection σ : U → V a bijection F (σ) : F (U ) → F (V ), such that
• F (idU ) = idF (U ) for all U ; and
σ
τ
• F (τ ◦ σ) = F (τ ) ◦ F (σ) for all bijections U −
→V −
→ W.
(A category theorist would say a species is an endofunctor on core(FinSet).)
We can think of elements of F (U ) as structures on U , leading us to the notation σ · s = F (σ)(s).
Example 1.2. Some examples of species are as follows:
• The species Gra of simple graphs is defined by
Gra(U ) = {(U, E) | E ⊆ U (2) }
σ
Gra(U −
→ V )(U, E) = (V, {{σ(u), σ(u0 )} | {u, u0 } ∈ E})
• The species Perm of permutations is defined by
Perm(U ) = {(U, f ) | f : U → U bijection}
σ
Perm(U −
→ V )(f ) = σ ◦ f ◦ σ −1
• The species Lin of linear orders is defined by
Lin(U ) = {(U, f ) | f : [n] → U bijection}
σ
Lin(U −
→ V )(f ) = σ ◦ f
• The species E of sets is defined by
E(U ) = {U }
σ
and E(U −
→ V )(U ) = V
• The species X of singletons is defined by
(
{U } if |U | = 1
X(U ) =
∅
otherwise
• The species 1 of emptiness is defined by
(
{U } if U = ∅
1(U ) =
∅
otherwise
• The empty species 0 is defined by
0(U ) = ∅
for all finite sets U ; and 0(σ) is simply the empty function for all bijections σ : U → V .
2
2
Operations on species
Certain examples of combinatorial structures motivate the definition of various operations on
species.
Addition
Given species F and G, the sum of F and G is the species F + G defined by
(
F (σ)(s) if s ∈ F (U )
(F + G)(U ) = F (U ) t G(U ) and (F + G)(σ)(s) =
G(σ)(s) if s ∈ G(U )
Intuitively, an (F + G)-structure on a set U is either an F -structure or a G-structure. (This
intuition isn’t quite accurate; for example, an (F + F )-structure isn’t just an F structure, it’s
either an F -structure ‘from the left F ’ or an F -structure ‘from the right F ’.)
Example 2.1. Let E+ denote the species of non-empty sets, defined by
(
{U } if U 6= ∅
E+ =
∅
if U = ∅
The fact that every set is either empty or non-empty will be expressed by the species equation
1 + E+ = E
Multiplication
Given species F and G, the product of F and G is the species F · G defined by
G
(F · G)(U ) =
F (U1 ) × G(U2 )
(U1 ,U2 )∈Part(U )
where Part(U ) denotes the set of (ordered) partitions of U .
Intuitively, an (F · G)-structure is defined by partitioning U into two sets U1 and U2 , endowing
U1 with an F -structure, and endowing U2 with a G-structure.
Example 2.2. A derangement of a set U is a permutation of U with no fixed points. An
arbitrary permutation σ of a finite set U can be specified by first choosing a set U1 of elements
to be fixed by σ, and then choosing a derangement of the set U2 = U \ U1 . This fact can be
expressed by the species equation
Perm = E · Der
3
With addition and multiplication under our belt, we can now describe more complicated species.
Example 2.3. A finite set U is either empty, or can be linearly ordered by choosing a least
element and a linear ordering of the remaining elements. Thus a linearly ordered set either. . .
• . . . is empty, i.e. has a 1-structure; or
• . . . can be partitioned as (U1 , U2 ), where U1 is a singleton (i.e. has an X-structure) and U2
is linearly ordered.
This can be expressed by the species equation
Lin = 1 + X · Lin
Composition
It is often useful to consider a species F as being substituted into a species G. For example, a
hedge is a list of trees, a graph is a set of connected graphs, and so on. Thus, given species F
and G, their composite is the species G ◦ F defined by
(G ◦ F )(U ) = (P, (sV : V ∈ P ), t)
where
• P is a partition of U ; and
• sV is an F -structure on V for each V ∈ P ; and
• t is a G-structure on the elements of the partition P .
Intuitively, a (G ◦ F )-structure of U is a G-structure of F -structures on U : we partition U into a
bunch of F -structures, and assign a G structure to the new set of F -structures.
Example 2.4. The fact that a graph is a set of connected graphs can be expressed by the species
equation
Gra = E ◦ CGra
Example 2.5. Let U be a finite set and let f : U → U be any endofunction. An element c ∈ U
is cyclic if f k (c) = c for some k > 0. Since U is finite, given any u ∈ U there is some k ≥ 0 such
that f k (u) is cyclic; let k(u) be the least such value of k, e.g. k(c) = 0 for all cyclic c ∈ U .
Each cyclic c ∈ U is thus the root of a tree Tc , whose vertex set is Vc = {u ∈ U | f k(u) (u) = c}
and whose edges are {u, f (u)} for all u ∈ Vc \ {c}. There is then a natural identification between
f and the permutation of the set {Tc | c ∈ U cyclic}.
4
This shows that the species of endofunctions is equivalent to the species of permutations of rooted
trees; we denote this by the species equation
Perm ◦ RTree = End
The following example combines all three operations we’ve seen so far.
Example 2.6. A finite set U is either empty, or can be given the structure of a rooted tree by
choosing a root and a set of sub-rooted-trees, such that the root of the big tree has edges to the
roots of the sub-trees. Thus a rooted tree either. . .
• . . . is empty, i.e. has a 1-structure; or
• . . . can be partitioned as (U1 , U2 ), where U1 is a singleton (i.e. has an X-structure) and U2
is a set of rooted trees (i.e. has an (E ◦ RTree)-structure.
This can be expressed by the species equation
RTree = 1 + X · (E ◦ RTree)
Differentiation, pointing, cross product, . . .
There are more interesting operations on species; unfortunately this talk doesn’t permit enough
time to go into them, but please see the references listed at the end of these notes!
3
Generating series
Associated with each species F is a formal power series F (x).
Definition 3.1. Let F be a species. The generating series of F is defined by
F (x) =
X
n≥0
fn
xn
n!
where fn = |F ([n])| is the number of F -structures on [n] (and hence on any set of size n).
Before you get too excited, note that it is not the case that F (x) = G(x) ⇒ F = G, as illustrated
by the following example:
5
Example 3.2. Perm(x) = Lin(x). To see this note that for all n ≥ 0 we have
Perm([n]) = Lin([n]) = {f : [n] → [n] | f bijective}
So Permn = Linn = n! for all n ≥ 0.
Having been cautioned, we can continue to look at some other examples.
Example 3.3.
• We just saw that Permn = Linn = n! for all n ≥ 0. Hence
Perm(x) = Lin(x) =
X
n≥0
n!
xn X n
1
x =
=
n!
1−x
n≥0
• Each set has exactly one set structure, hence En = 1 for all n ≥ 0. This proves that
E(x) =
X xn
n≥0
n!
= ex
• Only sets of size 1 have the structure of a singleton, hence X1 = 1 and Xn = 0 for all n 6= 1.
Thus
x
x
x2
X(x) = 0 · + 1 · + 0 ·
+ ··· = x
0!
1!
2!
• The power set species is defined by
P(U ) = {(V, U ) | V ⊆ U }
So Pn = |P([n])| = 2n for all n ≥ 0. This proves that
P(x) =
X
2n
n≥0
xn X (2x)n
=
= e2x
n!
n!
n≥0
Theorem 3.4. Let F and G be species. Then
(a) (F + G)(x) = F (x) + G(x);
(b) (F · G)(x) = F (x)G(x);
(c) (G ◦ F )(x) = G(F (x)).
This theorem allows us to count the number of structures of a given kind
6
Example 3.5. We saw earlier that Perm = E · Der. This proves that
Perm(x) = E(x)Der(x)
−x
1
e
Hence 1−x
= ex Der(x), so Der(x) = 1−x
. By examining the power series expansion of e−x 1 − x,
we can find the number of derangements of a set of size n.
Example 3.6. We saw the species equation Lin = 1 + X · Lin, so that Lin(x) = 1 + xLin(x).
Rearranging gives
X xn
X
1
n!
xn =
Lin(x) =
=
1−x
n!
n≥0
n≥0
This provides a proof that there are n! linear orderings on a set of size n, without resorting to
elementary counting arguments.
Theorem 3.7 (Cayley’s formula). The number of trees on a set with n elements is nn−2 .
Proof. We’ll first prove that Lin◦RTree = BiRTree. The former species is the species of linearly
ordered sets of trees, and the latter species is the species of birooted trees, i.e. trees with two
distinguished vertices (the ‘head’ and the ‘tail’). The natural correspondence is given as follows:
• Given a linearly ordered collection (T1 , T2 , . . . , Tn ) of rooted trees, we obtain a new tree T
whose edges are those of the Ti , together with an edge joining the root of Ti with the root
of Ti+1 . The root of T1 is chosen to be the head, and the root of Tn is chosen to be the tail.
• Given a tree T with a head h and a tail t, there is a unique path h = u0 → u1 → · · · → un = t
from h to t in T . Sprouting from each ui is a sub-tree Ti with root ui . We thus obtain a
sequence (T1 , T2 , . . . , Tn ) of rooted trees.
We’ve already seen that Lin(x) = Perm(x), and hence
(Lin ◦ RTree)(x) = (Perm ◦ RTree)(x)
Example 2.5 showed that Perm ◦ RTree = End. Putting this all together, we see that
End(x) = (Perm ◦ RTree)(x) = (Lin ◦ RTree)(x) = BiRTree(x)
Hence End(x) = (BiRTree)(x).
This proves that nn = Endn = BiRTreen = n2 Treen , and hence
Treen = nn−2
as required.
7
4
Property, structure and stuff*
This section didn’t make it to the actual talk, and requires some familiarity with basic notions in
category theory.
Logicians, and especially category theorists, like to distinguish between a property of a mathematical object, and a structure on a mathematical object. One can even go further and talk
about a stuff on a mathematical object.
Intuitively,
• A property of an object C is something which is either true or false of C—it is something
that can only happen in exactly one way.
• A structure on an object C is something which is chosen in addition to C, and may be
chosen in more than one way, but which nonetheless preserves the C-ness of C.
• A stuff on an object C is something which is chosen in addition to C, and may or may not
be related to C.
The following definitions make this more formal.
Definition 4.1. C and D are categories and U : D → C is a functor, then. . .
• A D-object is a C-object with extra properties if U is full and faithful, i.e. if U induces a
bijection D(A, B) ∼
= C(U A, U B);
• A D-object is a C-object with extra structure if U is faithful, i.e. if U induces an injection
D(A, B) → C(U A, U B);
• A D-object is a C-object with extra stuff regardless.
Example 4.2. The forgetful functor U : AbGp → Groups is full and faithful. Indeed, given
any two abelian groups G, H, the abelian group homomorphisms from G to H are precisely the
group homomorphisms from G to H. This shows that abelian groups are groups with a property.
Example 4.3. The functor U : Graphs → Sets that sends a graph (V, E) to its vertex set V is
full, since any two graph homomorphisms (V, E) → (V 0 , E 0 ) are induced by their map on vertices.
However, U is not full, for example the (unique) function f : {1, 2} → {1} does not induce a graph
homomorphism ({1, 2}, {{1, 2}}) → ({1}, ∅). This shows that graphs are sets with a structure,
but not merely sets with a property.
8
Example 4.4. The functor U : Sets × Sets → Sets acting as the first projection is not faithful.
To see this, note that the induced map
Sets × Sets((N, N), (N, N)) → Sets(N, N)
sending (f, g) 7→ f is not injective, since idN is in the image of (idN , f ) for any f : N → N. This
shows that pairs of sets are not sets with structure, and certainly not sets with a property; they
are sets with a stuff.
Recall that a species is a functor F : B → B, where B is the category of finite sets and bijections.
Weakening this notion to be a functor F : B → Sets, the Grothendieck construction yields an
equivalent description of a species F as a faithful functor G → Sets, where G is some groupoid.
Going backwards and removing this requirement of faithfulness, the Grothendieck construction
yields that an arbitrary functor G → Sets, where G is a groupoid, is equivalent to a functor
B → Gpds from the category of finite sets and bijections to the category of small groupoids and
functors.
We obtain the following definition.
Definition 4.5. A stuff type is a functor F : B → Gpd.
That is, to each finite set U we assign a groupoid F (U ), and to each bijection σ : U → V we
assign a groupoid isomorphism F (σ) : F (U ) → F (V ).
Our theory of generating functions now also generalises provided we take the groupoid cardinality
of F ([n]) instead of its set cardinality (which coincide when F ([n]) is a set).
Definition 4.6. Let G be a groupoid. The groupoid cardinality of G, denoted |G| is the
element of [0, ∞] defined by
X
1
|AutG (g)|
[g]∈π0 (G)
where π0 (G) is the set of connected components of G.
Note that when G = X is a set, this becomes
X1
= |X|
1
x∈X
and therefore coincides with the usual notion of cardinality.
This assigns combinatorial meaning to arbitrary power series of the form
an ≥ 0 for all n ≥ 0.
9
P
n
n≥0 an x ,
provided