A bunch of dots

A collection of all free trees up to size 15 (all 13188 of them), as SVG images, as well as an explanation of how they were generated.

Short summary

Trees are represented in memory as ordered rooted trees (the "standard" recursive tree representation: a tree is a list of children trees). They are also "named" by labeling each subtree with its size and writing down these labels in prefix depth-first traversal order. We define a total order on these trees as the lexicographic order of their names.

Ordered rooted trees are "canonized" into rooted trees by sorting the children trees in decreasing order.

A free tree is represented as the biggest equivalent rooted tree.

Longer and more friendly description

So really, what is this all about?

The results

Graphical lists

(Note that they might take a few minutes to load and render)

Sizes 1 to 10

Sizes 11 to 12

Size 13

Size 14 (part 1) (part 2)

Size 15 (part 1) (part 2) (part 3) (part 4) (part 5)

Text lists

Tree representation

Name representation

Both tree and name representation in valid Lua code

Downloads

Source code. It is very messy and would need a complete rewrite, but it's here for information purposes: tar.gz zip

Compressed archive of all SVG images: tar.gz zip