Tabrizi

Martin Pépin

Sergey Dovgal

Julien David

Rencontrer Frédérique Peschanski

Hsienkuei Hwang

Cyril Banderier

Mireille Bousquet Mélou

Gérard Duchamp

Pierre Nicodème

Andrea Sportiello

Julien Courtiel

Danièle Gardy

Noam Zeilberger

Clément Requilé

Elie De Panafieu

Thierry Monteil

Davide Barbarossa

Jawher Jerray

Le Thanh

Dung Nguyen

Enrico Bettiol

Alexandros Singh

Sarah Zouinina

Tiphaine Viard

Dina Faneva

Ugochukwu Onwudebelu

Juan José Figueroa

Raphaël Monat

Ghiles

Emacs, Sagemath Neil Sloane Ainsi Que L A T E X, T E X

Saer Alkhyat

Ayman Alhajjeh

Anas Shekfa

Yannis Bensalah

Jean Peyen

Arsalan Riaz

Omar Altinawi

Osmana Traore

Saad Nahlawi

Abdulrahman Hamdan

Rumi (1207 1273), Diwane

Shamse

Résumé

Dans cette thèse nous étudions des classes d'arbres étiquetés selon différents modèles d'étiquetages croissants. Ces arbres sont utiles dans la modélisation de nombreux processus.

Nous adoptons dans nos recherches différents points de vues complémentaires (combi natoire, probabiliste ou informatique) afin d'enrichir les résultats connus sur les arbres crois sants classiques et de proposer de nouvelles classes d'arbres moins contraints que les modèles existants dans la littérature.

Nous proposons plusieurs nouveaux modèles d'arbres, dans l'idée de pouvoir représenter un processus d'évolution où l'historique des évolutions est enregistré. Pour ces nouvelles classes d'arbres nous montrons leur liens étroits avec des objets classiques en combinatoire comme les permutations, les partitions d'ensemble, ainsi que les graphes. Nous les étudions également de façon plus détaillée en terme probabiliste pour mieux comprendre la forme typique des grandes structures.

Ainsi, nous définissons un processus d'évolution paramétrable qui recouvre ces nouvelles classes d'arbres ainsi que d'autres classes encore plus générales. Cela nous mène à définir plusieurs nouveaux modèles d'étiquetages croissants sur les arbres. Nous réussissons aussi à avoir des formes universelles pour l'énumération asymptotique des classes d'arbres issues de ce processus d'évolution en utilisant notamment des idées empruntées aux sommations de Borel.

Du côté algorithmique l'étude des structures arborescentes nécessite la génération et la mémorisation d'arbres de grandes taille ce qui nous mène à élaborer des algorithmes de génération aléatoire uniforme efficaces qui nous permettent de faire des simulations non bi aisées sur des arbres de grandes taille. Du fait que nous sommes en mesure d'engendrer des arbres grands, une autre problématique apparaît. Celleci concerne leur représentation en mémoire. En particulier, nous nous sommes aperçus qu'une compression efficace serait in téressante afin de manipuler et étudier expérimentalement ces structures arborescentes. Notre étude porte alors sur le taux compression moyen des arbres croissants classiques et elle nous permet de définir une nouvelle structure de données compactifiée pour les arbres binaires de recherche.

Abstract

In this thesis we study classes of trees labelled according to different increasing labellings. These trees are useful in the modelisation of various processes.

In our research different we adopt different but complementary points of view (combi natorial, probabilistic or algorithmic) to enrich the results on classical increasing trees and propose new tree classes that are less constrained than existing models in the literature.

We propose several new tree models, which each represent a process of evolution where the histories of evolutions are registered. For these new classes of trees we show their close links with classic combinatorial objects such as permutations, set partitions and graphs. We also study them in more detail in probabilistic terms to have a better understanding of the typical shape of large structures.

Then, we define a parametrizable evolution process that covers these new classes of trees as well as other even more general classes. This leads us to define several new models of increasing labellings on trees. We also derive universal forms for the asymptotic enumeration of tree of classes of trees resulting from this evolution process using, in particular, ideas borrowed from Borel's summations.

On the algorithmic side, the study of tree structures requires the generation and storage of large trees. This leads us to develop uniform random generation algorithms which allow us to make unbiased simulations on large trees. Since we are able to generate large trees, another problem arises concerning their representation in memory. In particular, we have found that efficient compression would be useful for manipulating and studying experimentally these tree structures. Our study then focuses on the average compression ratio of increasing trees and it allows us to define a new compacted representation of binary search trees. v

List of Symbols n k

Stirling cycle numbers (First kind)

n k

Stirling partition numbers (Second kind) S n

The set of all permutations of n elements n k

Introduction

Trees are poems that the earth writes upon the sky.

Kahlil Gibran (1883 1931), Sand and Foam.

Tree structures are widely known and commonly studied objects which applications in vari ous fields and disciplines ranging from computer science and mathematics to biology, phy logenetics and sociological research.

In computer science, some examples of trees include tree structures that are used as represen tations of the abstract syntactic structure of source code written in a programming language.

In this context they are called abstract syntax trees. In computational linguistics, a parse tree represents the syntactic structure of a string according to some contextfree grammar. Parse trees together with abstract syntax trees are used as main steps in the compiling process of a program. See [ALSU06, Muc97, GvRB + 12] for some references on the subject.

Other examples include, markup languages such as XML that have underlying tree structures that can be used and processed subsequently by the Document Object model, see [START_REF] Harold | XML in a Nutshell[END_REF] for an introduction. Finally, in data structures, trees are used as efficient structures to store and extract information. The most famous examples are binary search trees, redblack trees and AVL trees, some references include [START_REF] Clifford | Introduction to Algorithms[END_REF][START_REF] Sedgewick | Algorithms 4th Edition[END_REF].

On one hand, tree structures are naturally defined as subclasses of directed acyclic graphs (or DAGs) that are very common in graph theory because they can model many different kinds of information and they are in direct relation with partial orders as well. On the other hand directed acyclic graphs appear naturally in computer science in the context of tree structures that are compacted by sharing substructures. Compression of data structures is not only studied computer science where it is a central tool in order to save memory, but is also important in different fields such as information theory and combinatorics. There, it is related to the central concepts of symmetries, entropy and Shannon information, see [START_REF] Thomas | Elements of Information Theory[END_REF] for an overview on information theory and compaction of data structures.

Trees can also be labelled, such that each node of the tree contain some label. We have already mentioned trees used in data structures, in which we manipulate data. In combinatorics, people are interested in many different kinds of tree labellings. Some books on the subject include [START_REF] Chauvin | Arbres pour l'algorithmique[END_REF][START_REF] Flajolet | Analytic Combinatorics[END_REF]. An important case of labellings is the increasing labelling, where the labels in the nodes of the tree are increasing along branches. Some models include increasing trees which have been introduced by Bergeron, Flajolet and Salvy in [START_REF] Bergeron | Varieties of increasing trees[END_REF], where the authors study trees with no label repetitions. Other models include [START_REF] Prodinger | On monotone functions of tree structures[END_REF], where the authors study increasing trees with label repetitions and more re cently [START_REF] Bodini | On the number of increasing trees with label repetitions[END_REF]. Label repetitions in concurrency theory can represent synchronisation of processes as in [START_REF] Genitrini | Combinatoire énumérative et analytique en Logique Propositionnelle et en Théorie de la Concurrence: Vers une quantification de l'expressivité des modèles[END_REF]. Other studies include [START_REF] Kuba | Combinatorial families of multilabelled increasing trees and hooklength formulas[END_REF] in which the authors look at increas ing trees that are multilabelled, that is, a node can contain several labels.

This kind of notion is adapted to the study of several tree classes like binary search trees that are equivalent to increasing binary trees as well as recursive trees, and plane oriented (or heap ordered) trees, and monotonic trees, see [START_REF] Drmota | Random trees: An interplay between combinatorics and probability[END_REF].

Increasing trees are adapted to the study and analysis of dynamic evolution processes, such that phylogenetic trees that represent the evolutionary relationship among species. At each bifurcation (or multifurcation) of the tree, the descendant species from distinct branches have differentiated. Increasing trees can usually described as an incremental process where nodes are inserted at different iteration steps according to some distribution as in [START_REF] Panholzer | Level of nodes in increasing trees revisited[END_REF]. This models the fact that at any given time, each existing species is equally likely to give rise to new species. More information on trees in biology and phylogenetics can be found in [START_REF] Felsenstein | Inferring phylogenies[END_REF][START_REF] Steel | Phylogeny Discrete and Random Processes in Evolution[END_REF]. These tree models can also be used as simple models for epidemics or other evolution processes that admit incremental modelisation.

In this thesis we study various classes of trees under different increasing labellings. Our perspective, varies from that of a combinatorialist, with questions of enumeration, bijections and asymptotics, to the one of a probabilist, with analysis questions and determination of limit random laws, to that of a computer scientist, where questions relating algorithm designs, data structures and random generation are dealt with.

These different points of views, allow us to make rigorous theoretical statements, about the objects of study and then design practical algorithms that manipulate these objects.

This thesis consists of three main parts. First, we introduce three new models of increas ing trees, which are suitably interpreted as evolutionary trees, but they are also adapted to represent other evolution processes such as that of programs in concurrency theory.

The underlying structure of these tree models is the one of Schröder trees that were studied by Ernst Schröder [START_REF] Schröder | Vier combinatorische Probleme[END_REF] in connection with evolutionary trees. However, his framework did not model the of new species (i.e differentiations) over time, which we do by considering labellings on internal nodes. These trees are counted by their number of leaves and inter nal nodes bear integer labels. The first model called increasing Schröder trees only allows for one species to evolve at a fixed period of time, while the other two models strict mono tonic Schröder trees and strict monotonic general Schröder trees, allow for several species to evolve simultaneously.

For all three models, we will also study the average value of some parameters, in order to have a better understanding of the typical shape of large random trees that belong to this classes. We will also see how these models relate to classical objects in combinatorics such as permutations, set partitions and graphs. In particular, we will exhibit relations between cycles in permutations and the number of internal nodes or the depth of a fixed leaf. We will also see how Eulerian numbers and Stirling numbers of both kinds relate on the tree structure.

The second main part of our research lies in the presentation of a general parameterisable evolution process for classes of increasing Schröder trees that encompasses all three models already presented but also many others. This will also allow us to introduce weakly increasing labellings on tree structures in a new way that is different from [START_REF] Prodinger | On monotone functions of tree structures[END_REF]. For this general evolution process, we will be mainly concerned with the asymptotic enumeration of these classes of trees. Our theorems give general asymptotic formulae that are in the same spirit as the theorem for universal asymptotic behaviour of simply generated trees in [START_REF] Flajolet | Analytic Combinatorics[END_REF].

On a theoretical level, we see that the labellings that we add to the tree structures which al lows for repeated labelling and weak increasing labelling along branches are easily specified using ordinary generating functions. However, the generating functions are then invariably divergent. Therefore, we develop a general method which is related to Borel summations, which allows to capture the asymptotic behaviour.

Finally, the last axis of our research concerns data compression. We will study the average compaction rate of trees under the increasing labelling distribution. Our aim is to extend already known results on the average compaction of trees under the uniform distribution that has been studied under the name of "common subexpression recognition" in [START_REF] Flajolet | Analytic variations on the common subexpression problem[END_REF] and more recently by [START_REF] Bousquetmélou | XML Compres sion via Directed Acyclic Graphs[END_REF]. For instance, we will show that the average compaction of binary trees under the increasing labelling distribution is better than the average compaction under uniform distribution. By the word 'better' here, we mean that we gain an asymptotic order in the average compaction rate. In light of our theoretical results on the compaction of binary trees, we will propose a new lossless data structure based on the compaction of binary search trees. In the same way we study Pólya trees under the increasing labelling distribution.

Plan of the thesis:

We start in Chapter 2 by presenting the main theoretical tools that we will use to build our results. Chapter 3 contains a presentation of the different known combinatorial objects that are used throughout the thesis. Chapter 4 introduces the three new classes of increasing Schröder trees, it contains a thorough study of these three classes in terms of enumeration, asymptotics, typical shapes, and relationship with classical combinatorial objects. In Chap ter 5, we present a general evolution process that includes the three models of increasing Schröder trees as parametrisations. This chapter is mainly concerned with the asymptotic enumeration of the different classes of trees that can be produced with the evolution process. Then, Chapter 6 is dedicated to the study of average tree compaction of two tree models under increasing labelling distribution. Finally, in Chapter 7, we talk about the uniform random generation of classes of trees that are the result of the evolution process defined in Chapter 5.

Ainsi mon dessein n'est pas d'enseigner la méthode que chacun doit suivre pour bien conduire sa raison, mais de faire voir en quelle sorte j'ai tâché de conduire la mienne. 1 René Descartes (1596 1650), Discours de la méthode.

1 Thus my design is not here to teach the Method which everyone should follow in order to promote the good conduct of his Reason, but only to show in what manner I have endeavoured to conduct my own. This chapter presents briefly the main concepts and mathematical tools that will be used throughout this thesis.

Power series

Let A be a commutative rings and z an indeterminate. We denote by A [[z]] the ring of formal power series in z with coefficients in A.

Unless otherwise stated we will work with power series in C[ [z]] with elements of the form:

A(z) = n≥0 A n z n .
The function A(z) is then an element of A [[z]]. Power series are useful in analysis especially as Taylor series. Émile Borel a french mathematician showed that every power series is the Taylor series of some smooth function. For example, let for all n ≥ 1, A n = 1, B n = 1 n! then,

A(z) = 1 1 -z , B(z) = exp(z).
Power series are used as a basis for generating functions in combinatorics.

Depending on the values of the indeterminate z the function may converge or diverge. There is always a number R ≥ 0, such that the power series converges for all values z < R and diverges when z > r. This value R is called the radius of convergence of the power series.

As it will be seen in Section 2.4, the radius of convergence plays an important role in deter mining the asymptotic behaviour of a combinatorial class.

Power series behave nicely with algebraic operations that can be defined on them to combine them and form new power series. Table 2.1 gives a summary of some of the most basic oper ations. When defining or combining power series together we consider the indeterminate z as a formal variable without considering the questions of convergence and uniformity. These questions will be inverstigated when looking for asymptotic behaviour of power series seen as counting objects.

A good introduction to the subject with advanced operations on formal power series can be found in the works of Goulden, Jackson and Wilf among others [START_REF] Goulden | Combinatorial Enumeration[END_REF][START_REF] Herbert S Wilf | Generatingfunctionology[END_REF].

Using the definition of a power series a polynomial is an element of A [[z]] with only a finite number of nonzero coefficients.

The definition of formal power series can be extended to the multivariate case. Therefore A [[z, u]] has elements of the form:

A(z, u) = n≥0 k≥0 A n,k u k z n 2
In this thesis we will use ∂ z for d dz .

Coefficient extraction

[z n ]A(z) = A n Addition C(z) = A(z) + B(z) ∀n ≥ 0, C n = A n + B n Cauchy Product C(z) = A(z) • B(z) ∀n ≥ 0, C n = n k=0 A k B n-k Derivative C(z) = ∂ z A(z) 2 ∀n ≥ 0, C n = (n + 1)A n+1 Integral C(z) = z 0 A(z) ∀n ≥ 1, C n = A n-1 n Exponential series C(z) = exp(z) ∀n ≥ 0, C n = 1 n! Logarithmic series C(z) = log(1 -z) -1 ∀n ≥ 1, C n = 1 n Binomial series C(z) = (1 + z) k ∀n ≥ 0, C n = k n Table 2
.1: Basic operations on power series And we have

[z i ] n≥0 k≥0 A n,k u k z n = k≥0 A i,k u k
In order to extract both coefficient in the same time we denote [z i u j ]A(z, u) = A i,j .

Symbolic Methods

This section is mostly based on [FS09, Ch 1 and 2].

Definition 2.2.1. A combinatorial class set of objects on which a size notion has been defined

such that the size s of an object is always positive s ≥ 0 and the number of objects of a fixed size is finite.

Symbolic methods are methods that help constructing combinatorial classes. These methods give the correspondence between operations to construct classes of combinatorial objects and their corresponding operations on the generating function level.

Notation. We will denote combinatorial classes with calligraphic capital letters like A, B, C, and the notation A n will refer to the combinatorial class defined as the subset of elements of A that have size n.

Ordinary generating functions

Ordinary generating functions are usually used to specify combinatorial objects that are un labelled. However, in this thesis we will see how they can be used to specify increasing structures.

Definition 2.2.2. The ordinary generating function (or OGF) of a sequence A n is the formal power series

A(z) = n≥0 A n z n .
Ordinary generating functions are also referred to simply as generating functions. Accord ing to Georges Pólya in [START_REF] Pólya | Mathematics and Plausible Reasoning: Induction and Analogy in Mathematics[END_REF] the name generating functions was coined by PierreSimon Laplace but its use dates back to Leonhard Euler.

We start with the basic operators. The generating function of the neutral class E(z) (contains a single object of size 0) and the atomic class (contains a single object of size 1) Z(z)

E(z) = 1 Z(z) = z.
The combinatorial sum (or disjoint union) between two combinatorial classes, create a new class by putting together all the elements of each class. It might be the case that some element are common to both classes, in which case we colour each element with a new colour and add both to the new class. The size of an element in the new class is inherited from the class it came from.

The Cartesian product forms all possible ordered pairs between two classes. The size of an object (which is a pair) is obtained by adding the size of both objects contained in it. The Sequence is defined for a class A as the infinite sum of The substitution or (composition) is defined by

Sum A = B + C A(z) = B(z) + C(z) Cauchy Product A = B × C A(z) = B(z) • C(z) Sequence A = Seq(B) A(z) = 1 1 -B(z) Pointing A = Θ(B) A(z) = z∂ z B(z) Substitution A = B • C A(z) = B(C(z)) Multiset A = MSet(B) A(z) = n≥1 (1 -z n ) -Bn
B • C = n≥0 B n × Seq k (C)
The Multiset construction can be decomposed into MSet(B) ∼ = β∈B Seq ({β}) .

In fact a multiset can always be reorganised as a product of sequences of each element of B. For instance if B = {1, 2, 3}, the element {1, 2, 1, 3, 1, 2} can be seen as {1, 1, 1, 2, 2, 3}.

Therefore we can get also an alternative form for the multiset construction,

A(z) = β∈B (1 -z |β| ) -1 = n≥1 (1 -z n ) -Bn = exp n≥1 B n log (1 -z n ) -1 = exp B(z) 1 + B(z 2 ) 2 + B(z 3 ) 3 + . . . .
In this section we focus on the description of construction operators but many examples will follow in Chapter 3.

Exponential generating functions Definition 2.2.3. The exponential generating function (or EGF) of a sequence A n is the formal power series

A(z) = n≥0 A n z n n! .
Exponential generating functions will be denoted for short EGF. They are known to be adapted to labelled combinatorial structures.

Definition 2.2.4.

A labelled combinatorial class is a combinatorial class, such that each object is labelled with labels in {1, . . . , n}, where n is the total size of the object and the labels are all distinct.

The neutral and the atomic class objects are the same as in Section 2.2.1 but now the atomic class refer to the only object of size 1, that is labelled 1. If we have two labelled objects β ∈ B and γ ∈ C, their labelled product is written by β ⋆ γ , is a set consisting of welllabelled ordered pairs (β ′ , γ ′ ) that reduce to (β, γ). If β has size i and γ size j. If n = i + j, then the number of elements in β ⋆ γ is n i . The labelled product of two classes B and C, denoted B ⋆ C, is then obtained by forming ordered pairs from B × C and performing all possible orderconsistent relabellings. We have,

Disjoint sum

A = B + C A(z) = B(z) + C(z) Labelled Product A = B ⋆ C A(z) = B(z) • C(z) Sequence A = Seq(B) A(z) = 1 1 -B(z) Set A = Set(B) A(z) = exp(B(z)) Cycle A = Cyc(B) A(z) = log 1 1 -B(z) Boxed product A = B □ ⋆ C A(z) = z 0 (∂ t B(t)) • C(t)dt
B ⋆ C = β∈B,γ∈C (β ⋆ γ).
The sequence is defined for a class A as before Seq(A) = {ϵ} + A + (A ⋆ A) + (A ⋆ A ⋆ A) + . . .

We can define a ksequence, Seq

k (A) = A ⋆ • • • ⋆ A k A sequence is also Seq(A) = k≥0 Seq k (A).
From this a kset, denoted by Set k (A), corresponds to the quotient class of elements of Seq k (A)/R, where R is the equivalence relation that identifies two sequences when the com ponents of one are a permutation of the components of the other. From here the set class is simply Set(A) = k≥0 Set k (A).

In the same spirit, we can define a kcycle, denoted by Cyc k (A), corresponding to the quo tient class of elements of Seq k (A)/S, where S is the equivalence relation that identifies two sequences when the components of one are a cyclic permutation of the components of the other. From here the cycle class is simply

Cyc(A) = k≥0 Cyc k (A).
The boxed (or Greene) product is used for order constraint which is very useful for increasing structures. It has been introduced by Greene in his thesis [START_REF] Daniel H Greene | Labelled Formal Languages and Their Uses[END_REF]. It is defined as the subset of the product B ⋆ C such that the smallest label is constrained to in the B component. For consistency we also need to have B 0 = 0. We get for its coefficients

A n = n k=1 n -1 k -1 B k C n-k
Remark 2.2.5. A simple relation can be deduced directly between a sequence and a set of cycles.

Seq(A) = Set(Cyc(A)). Since, 1 1 -A(z) = exp log 1 1 -A(z)
.

A combinatorial example of this fact can be seen on permutations in Section 3.1.

Combinatorial Borel and Laplace transforms

These two transforms are known to be 'bridges' between OGF and EGF. Since they trans form a generating function from one type to the other. The combinatorial Borel transform is defined by

B n≥0 a n z n = n≥0 a n z n n! ,
and the combinatorial Laplace,

L n≥0 a n z n n! = n≥0 a n z n .
Therefore the Laplace transform converts an EGF to an OGF while the Borel transform does the inverse. The Laplace transform can be analytic under suitable conditions of conver gence and can be defined as:

Lf (z) = ∞ 0 f (zx) e -x dx.
While the Borel transform can be defined by:

Bf (z) = 1 2iπ c+i∞ c-i∞ e zt t f 1 t dt,
where c is greater than the real part of all singularities of f ( 1 t ) t -1 . Some simple rules can be directly inferred from these definitions:

• Lf ′ = 1 z (Lf -f 0 ). • L( f ) = zLf . • B(zf ) = f . • B( f -f 0 z ) = (Bf ) ′ . • Bf ′ = (Bf ) ′ + z(Bf ) ′′ .
For more information on these transforms and on new operators for symbolic methods see [START_REF] Bodini | The Ordered and Colored Products in Analytic Combinatorics: Application to the Quantitative Study of Synchronizations in Concurrent Processes[END_REF] in which the authors introduce new operators for the symbolic method. More detailed accounts are also found in the thesis of [START_REF] Dien | Concurrent process and combinatorics of increasingly labeled structures : quan titative analysis and random generation algorithms[END_REF].

These transforms and especially the Borel one, will be very useful to us in the subsequent chapters. This is due to the fact that many of our specifications will made in the unlabelled world while the objects of study will belong to the labelled one. Therefore, we will be passing from OGFs to EGFs in order to compute asymptotics.

Combinatorial Borel transforms are closely related to Borel summation with the idea of sum ming divergent power series introduced by Émile Borel in 1899.

Analytic methods for asymptotics

Most of the material of this section is taken from [START_REF] Flajolet | Analytic Combinatorics[END_REF]ch 4,6,7]. We start this section with a reminder of Cauchy's coefficients formula.

Theorem 2.4.1. Let f (z) be analytic in a region Ω containing 0 and let λ be a simple loop around 0 in Ω that is positively oriented. Then, the coefficient f n = [z n ]f (z) admits the integral representation

f n = 1 2iπ γ f (z) dz z n+1 .
This formula, will be a major technique in the proof of the following transfer Theorems which we will give the statements without proofs. Cauchy's coefficients formula is a direct application of the known residue theorem in complex analysis.

We continue by defining some types of functions for which there exists some general the orems that allows mechanical procedures to extract asymptotic equivalent from them. The interesting part for us, is to understand to which type does the generating function of a com binatorial class belongs to. The simplest types of functions are the rational and meromorphic functions.

Definition 2.4.2. A function f (z) is a rational function, if and only if it is of the form N (z) D(z) , where N (z) and D(z) are polynomials. Rational functions that are analytic at the origin, which is the case for some generating functions D(0) = 0.

Definition 2.4.3. A function h(z

) is meromorphic at z 0 if and only if, for z in a neighbourhood of z 0 with z = z 0 , it can be represented as f (z) g(z) , with f (z) and g(z) being analytic at z 0 . In that case, it admits near z 0 an expansion of the form

h(z) = n≥-M h n (z -z 0 ) n .
If h -M = 0 and M ≥ 1, then h(z) has a pole of order M at z = z 0 and the coefficient h -1 is called the residue of h(z) at z = z 0 .

The main goal of analytic methods is to derive asymptotic information from generating func tions.

In simple words, a singularity of a function f (z) is a point where f (z) stops of being analytic. The search for the dominant singularity (the one that is nearest to the origin) of a generating is essential in deriving asymptotic information from a generating function.

Pringsheim's theorem applies to generating functions and allows one to restrict its attention to positive real axis in search for the dominant singularity of a combinatorial generating function (the power series has nonnegative coefficients). Theorem 2.4.4. (Pringsheim's Theorem). If f (z) is representable at the origin by a series expansion that has nonnegative coefficients and radius of convergence R, then the point z = R is a singularity of f (z).

The following result is known as The First Principle of Coefficient Asymptotics in Analytic combinatorics. The location of a function's singularities dictates the exponential growth (A n ) of its coefficient. Theorem 2.4.5. (Exponential Growth Formula). If f (z) is analytic at 0 and R is the modulus of a singularity nearest to the origin. Then,

f n = 1 R n θ(n),
where θ(n) is a subexponential factor, that is lim sup |θ(n)|

1 n = 1.
The Second Principle of Coefficient Asymptotics relates subexponential factors of coeffi cients to the nature of singularities. For rational and meromorphic functions the results can be obtained simply.

For rational functions, the next theorem gives an exact finite expression for the coefficients of a function in term of its poles.

Theorem 2.4.6. (Expansion of rational functions). If f (z) is a rational function that is analytic at zero and has poles at points α 1 , α 2 , . . . , α m , then its coefficients are a sum of exponential-polynomials: there exist m polynomials {Π j (x)} m j=1 such that, for n larger than some fixed n 0 ,

f n = [z n ]f (z) = m j=1 Π j (n)α -n j .
The degrees of Π j is equal to the order of the pole of f (z) at α j minus one.

We can define a similar expansion for meromorphic functions.

Theorem 2.4.7. (Expansion of meromorphic functions). Let f (z) be a function meromorphic at all points of the closed disc |z| ≤ R, with poles at points α 1 , α 2 , . . . , α m . Assume that f (z) is analytic at all points of |z| = R and at z = 0. Then there exist m polynomials {Π j (x)} m j=1 such that:

f n = [z n ]f (z) = m j=1 Π j (n)α -n j + O R -n .
Furthermore the degree of Π j is equal to the order of the pole of f at α j minus one.

We give below an example of application of this Theorem that covers many different inter esting combinatorial classes.

Example 2.4.8. Let f (z) = 1 2 -exp(z)

, which is the generating function of Surjections (also known as Ordered Bell numbers) as will be seen in Section 3.2. The function has a pole of order 1 at log 2 which is the singularity of smallest modulus. The next pole is equal to log 2 + 2iπ ≈ 6.32130292. From Theorem 2.4.7:

f n ∼ n→∞ Π 1 1 log 2 n ,
where Π 1 is a polynomial of degree 0 (i.e a constant). To determine it we see that

f (z) ∼ z→log 2 - 1 2 1 z -log 2 ,
So that asymptotically,

f n ∼ n→∞ 1 2 1 log 2 n+1 .
Some other very good accounts on methods for obtaining asymptotics of generating functions include researches of Bender, De Bruijn, Odlyzko and Wilf. See [WdB60, Wil05, Odl95, Ben74].

Singularity analysis

The main idea of the process of singularity analysis is the existence of a correspondence between the asymptotic expansion of a function near its dominant singularities and the as ymptotic expansion of the function's coefficients.

It extends the analysis of meromorphic functions since it allows for functions whose singular expansion involves fractional powers and logarithms.

It is based on two ingredients : A catalogue of asymptotic expansions for coefficients of func tions that are in standard scale (these functions occur in the singular expansion) and secondly, transfer Theorems which allow the extraction of the asymptotic order of the coefficients that are error terms in the singular expansion.

Its development is due to a pioneering paper of Flajolet and Odlyzko in 1990 [START_REF] Flajolet | Singularity Analysis of Generating Functions[END_REF] and is also detailed with examples in [START_REF] Flajolet | Analytic Combinatorics[END_REF]Chapter VI].

Let S denote the set of the following singular functions:

S = {(1 -z) -α λ(z) β | α, β ∈ C}, λ(z) = 1 z log 1 1 -z ≡ 1 z L(z).
Definition 2.4.9. (Delta domain) Given two numbers ϕ and R, with R > 1 and 0

< ϕ < π 2 ,
the open domain ∆(ϕ, R) is defined as

∆(ϕ, R) = {z | |z| < R, z = 1, |arg(z -1)| > ϕ}.
A domain is a ∆domain at 1 if it is a ∆(ϕ, R) for some R and ϕ. For a complex number ζ = 0, a ∆domain at ζ is the image by the mapping z → ζz z of a ∆domain at 1. A function is ∆-analytic if it is analytic in some ∆domain.

The catalogue of asymptotic expansions is based on the following two Theorems.

Theorem 2.4.10. (Standard function scale). Let α be an arbitrary complex number in C\Z ≤0 . The coefficient of z n in f (z) = (1 -z) -α admits for large n a complete asymptotic expansion in descending powers of n,

[z n ]f (z) = n α-1 Γ (α) 1 + ∞ k=1 e k n k
, where e k is a polynomial of degree 2k. In particular:

[z n ]f (z) = n α-1 Γ (α) 1 + α(α -1) 2 n + α(α -1)(α -2)(α -3) 24 n 2 + O 1 n 3 .

Function Coefficients

(1 -z)

3 2 1 √ π n 5 3 4 + 45 32 n + O 1 n 2
(1 -z)

1 2 log 1 1 -z - 1 √ π n 3 1 2 log n + γ + 2 log 2 -2 2 + O log n n (1 -z) -1 2 log 1 1 -z 1 √ π n log n + γ + 2 log 2 + O log n n
Table 2.4: Some functions of the standard scale and the asymptotics of their coefficients according to Theorem 2.4.10 and Theorem 2.4.11 Theorem 2.4.11. (Standard function scale, logarithms). Let α be an arbitrary complex num ber in C\Z ≤0 . The coefficient of z n in the function

f (z) = (1 -z) -α 1 z log 1 1 -z β 2 Methods
admits for large n a full asymptotic expansion in descending powers of log n,

f n = [z n ]f (z) = n α-1 Γ (α) (log n) β 1 + C 1 log n + C 2 log 2 n + O 1 log 3 n ,
where

C k = β k Γ (α) d k d s k 1 Γ (s) | s=α .
A summary of some applications of these two Theorems can be found in Table 2.4. They serve as a first basis for the process of singularity analysis. Some special cases for values of α and β are discussed in [START_REF] Flajolet | Analytic Combinatorics[END_REF]p. 386].

The second part needed for the process of singularity analysis is the transfer Theorems. In the following we give the statement of the Big -Oh transfer, however other transfer theorems exist.

Theorem 2.4.12. (Transfer, BigOh). Let α and β be arbitrary real numbers, and let f (z) be a function that is ∆-analytic. Assume that f (z) satisfies in the intersection of a neighbourhood of 1 with its ∆-domain the condition

f (z) = O (1 -z) -α (log 1 1 -z ) β .
Then,

[z n ]f (z) = O n α-1 (log n) β .
Staring from the expansion of a function at its singularity (its singular expansion) it is possible to justify termbyterm transfer which is the core of singularity analysis and by applying the Standard scale Theorems jointly with the transfer Theorems we get the following.

Theorem 2.4.13. From [START_REF] Flajolet | Analytic Combinatorics[END_REF] (Singularity analysis, single singularity). Let f (z) be a func tion analytic at 0 with a singularity at ζ, such that f (z) can be continued to a domain of the form ζ . ∆ 0 , for a ∆domain ∆ 0 where ζ . ∆ 0 is the image of ∆ 0 by the mapping z → ζz.

Assume that there exist two functions σ and τ , where σ is a (finite) linear combination of functions in S and τ ∈ S, so that

f (z) = σ(z/ζ) + O(τ (z/ζ)) as z → ζ in ζ . ∆ 0 .
Then, the coefficients of f (z) satisfy the asymptotic estimate

f n = ζ -n σ n + O(ζ -n τ ⋆ n ), where σ n = [z n ]σ(z)
⋆ n = n a-1 (log n) b , if τ (z) = (1 -z) -a λ(z) b .
As an illustration of this scheme we take the following example.

Example 2.4.14. Let f (z) = e -z the numerator and get,

R(z) = e -3 4 √ 1 -z + e -3 4 √ 1 -z + O (1 -z) 3 2
.

We can now use transfer Theorems for each term independently.

[z n ] e -3 4 √ 1 -z = e -3 4 √ π n 1 - 1 8n + O 1 n 2 [z n ]e -3 4 √ 1 -z = -e -3 4 2 √ π n 3 1 + 3 8n + O 1 n 2
As a conclusion we have,

[z n ]R(z) = e -3 4 √ π n - 5 8 -e -3 4 √ π n 3 + O 1 n 5 2
.

Asymptotics of linear differential equations

As it has been noted in Section 2.2 some operations on generating functions such as pointing give rise to differential operators. Especially, when the specification is recursive, it often leads to linear differential equations that may not be solvable with exact functions. However, if we are looking to extract asymptotic information the task does not require an exact solu tion and in many cases the asymptotics can be extracted mechanically from the differential equation.

The study of solutions of linear differential equations in the complex plane and their asymp totic expansions can be found in Wasow [START_REF] Wasow | Asymptotic expansions for ordinary differential equations[END_REF], Henrici [START_REF] Henrici | Applied and computational complex analysis[END_REF] and [START_REF] Lindsay | Ordinary Differential Equations[END_REF]. Flajolet and Sedgewick in [START_REF] Flajolet | Analytic Combinatorics[END_REF] reformulated some theorems for the Analytic combinatorics framework which we state some results.

Suppose that we have a linear differential equation (ODE) of the form

c 0 (z) ∂ r y(z) + c 1 (z) ∂ r-1 y(z) + • • • + c r (z) y(z) = 0. (2.1)
The integer r is said to be the order of the ODE, and it is assumed that there exists a simply connected domain Ω in which the coefficients c i (z) are analytic at a point z 0 where c 0 (z 0 ) = 0. Therefore, in the neighbourhood of z 0 there exist r linearly independent analytic solutions of Equation (2.1). This is guaranteed by an existence theorem to be found in [START_REF] Wasow | Asymptotic expansions for ordinary differential equations[END_REF]. As a result singularities can only occur at points ζ that are roots of the leading coefficient c 0 (z).

For simplicity we will denote c j ≡ c j (z) and rewrite Equation (2.1),

∂ r y(z) + d 1 (z) ∂ r-1 y(z) + • • • + d r (z) y(z) = 0. (2.2)
Where

d i (z) = c i (z) c 0 (z)
. As a result, the functions d i (z) are now meromorphic in Ω.

Let f (z) be a meromorphic function. We define ω ζ (f ) to be the order of the pole of f at ζ.

In the following we give two definitions and the main asymptotic result.

ω ζ (d 1 ) ≤ 1, ω ζ (d 2 ) ≤ 2, . . . , ω ζ (d r ) ≤ r,
The singularity is otherwise irregular.

In fact the case of regular singularities is more easy to handle and fortunately in this thesis all differential equations appearing will have regular singularities.

I(θ) = θ r + δ 1 θ r-1 + • • • + δ r ,
where

δ j = lim z→ζ (z -ζ) j d j (z).
The indicial polynomial is used to extract information about the dominant asymptotic be haviour. More formally, at a regular singular point, the Equation (2.2) transforms to

D[(z -ζ) θ ] = I(θ)(z -ζ) θ-r + O (z -ζ) θ-r-1 ,
where D is the differential operator of Equation (2.2). The next Theorem shows the general form of solutions of these differential equations near a regular singularity ζ.

(z -ζ) θ j H j (z -ζ),
where θ 1 , θ 2 , . . . , θ r are the roots of the indicial polynomial and each H j is analytic at 0. In the case of roots differing by an integer (or multiple roots), the solutions may include additional logarithmic terms involving nonnegative powers of log(z -ζ).

A specialisation of this last Theorem to account for cases where some logterms might appear is given in the following which is a specialisation of Theorems found in [START_REF] Lindsay | Ordinary Differential Equations[END_REF] and written in [START_REF] Genitrini | Asymptotic enumeration of compacted binary trees of bounded right height[END_REF].

:= lim z→ζ (z -ζ)d 1 (z) ≥ 0.
Then, the vector space of all analytic solutions defined in a slit neighbourhood of ζ has a basis of r functions, where r -1 functions are of the form

(z -ζ) m H m (z -ζ), m = 0, 1, . . . , r -2
with functions H m being analytic at 0 and satisfying H m (0) = 0. The rth basis function depends on δ 1 :

3 n k = n(n -1) . . . (n -k + 1
) represents the descending factorial.

(1) For δ 1 ∈ {0, 1, . . . , r -1} it is of the form

(z -ζ) r-1-δ 1 H(z -ζ) log(z -ζ), (2) For δ 1 ∈ {r, r + 1, . . . } it is of the form (z -ζ) r-1-δ 1 H(z -ζ) + H 0 (z -ζ) (log(z -ζ)) k , with k ∈ {0, 1}, (3) For δ 1 / ∈ Z it is of the form (z -ζ) r-1-δ 1 H(z -ζ),
where H is analytic at 0, with H(0) = 0.

For linear differential equations the constants in the asymptotic development are usually hard to compute. So that our results will depend in general on some constant that exists but for which we do not know the value.

As an example of application of this last theorem we give the following.

Example 2.4.19. Let h(z) be analytic at 0 and satisfy

(-2 z -1) ∂ h (z) + (1 -z) ∂ 2 h (z) = 0,
with initial conditions h(0) = 0 and h ′ (0) = 1. The equation is in the form of Equation (2.1), after dividing by the highest derivative we get,

∂ 2 h (z) + (-2 z -1) ∂ h (z) 1 -z = 0.
The value z = 1 is a regular singularity and moreover ω 1 ( (-2 z -1) 1 -z ) = 1. We have,

δ 1 = lim z→1 (-2 z -1) (z -1) 1 -z = 3.
Then the basis of solutions around z = 1 contains 2 functions:

H 0 (z -1)(z -1) and H 2 (z - 1)(z -1) -2 + H 3 (z -1)(log(z -1)) k with k ∈ {0, 1}
where H i (z -1) are analytic functions around z = 1. Finally we find,

[z n ]h(z) ∼ n→∞ c n,
for some constant c that depends on the value of the function H 2 (0). This chapter is dedicated to the presentation of the main classical combinatorial classes and objects that we will be using frequently as well as the notations that we will adopt for them.

Combinatorics is an area of mathematics concerned with counting and studying certain prop erties of finite structures. It is closely related to many other areas of mathematics and has many applications ranging from logic to statistical physics, from evolutionary biology to computer science, etc.

The first question that arise after defining a combinatorial class of objects is usually the enu meration problem, in which ideally we look for an explicit formula, or at least finding some recurrence relation that counts the objects.

An important question arises when two sets of objects have the same cardinality (same num ber of objects) then we usually seek to find bijections between these two sets.

Then comes the question of statistics and random generating. What is the typical shape of an object taken randomly in the set of all possible objects. A related question is the question of random generation. Is it possible to efficiently generate random objects in the set of all possible ones?

Counting objects to our knowledge dates back to earliest civilisations such as Babylonians, Indians and Greeks. In the 6th century BCE, ancient Indian physician Sushruta asserts in Sushruta Samhita that 63 combinations can be made out of 6 different tastes, taken one at a time, two at a time, etc., thus computing all 2 6 -1 possibilities. An interesting account on the roots of combinatorics have been published by Biggs in [START_REF] Linstead | The roots of combinatorics[END_REF].

A famous example is also given by a page of Plutarch's Moralia where following statement appears "Chrysippus says that the number of compound propositions that can be made from only ten simple propositions exceeds a million. (Hipparchus, to be sure, refuted this by show ing that on the affirmative side there are 103049 compound statements, and on the negative side 310 952.)"

This was related by Stanley in [Sta97]. The number 103049 corresponds exactly to the 10th number of what is nowadays known as Hipparchus of Rhodes and Schröder numbers refer enced under EIS A001003 2 . We will come back to these numbers in Section 3.5.3 to define them more precisely and see their relationship to tree structures as suggested by Schröder.

Permutations

Permutations are one of the most famous object of study in combinatorics. The permutations of a set of n elements represent the number of possible ways to rearrange the elements be tween each others. In a paper [START_REF] Lyle | An account of early statistical inference in Arab cryptology[END_REF] of 2011 by Broemeling talks of an Arab mathematician and cryptographer AlKhalil who lived in the 8th century, , wrote the Book of Cryptographic Messages. It contains the first known use of permutations and combinations, to list all possi ble Arabic words with and without vowels.

The way of determining the number of permutations of a set of n elements was also known to Indians. Bhāskara an Indian mathematician and astronomer who lived in the 12th century wrote a treatise in mathematics in which we find: "The product of multiplication of the arith metical series beginning and increasing by unity and continued to the number of places, will be the variations of number with specific figures."

This was reported by by Biggs in [START_REF] Linstead | The roots of combinatorics[END_REF]. He also cites a second example that involves references to permutations which the medical treatise of Susruta, which may be as old as the 6th century B.C. However, it is difficult to date this document with certainty.

Permutations can be defined as bijections from a set P onto itself. All permutations of a set with n elements form a symmetric group, denoted P n ,where the group operation is the functional composition. Then we have that,

|P n | = n! = n • (n -1) • • • • • 2 • 1
A permutation of n elements can be represented in a two line matrix where each element of the first line is sent to its corresponding place in the rearrangement see Figure 3.1 for an example. The first line can be omitted if the context is not ambiguous. Throughout this thesis we will denote a single permutation by usually by σ = (σ 1 , σ 2 , . . . , σ n ) and call it the standard notation. We will also introduce the cycle notation in the next section. So the permutation in Figure 3.1 can be written simply as σ = (3, 4, 6, 2, 5, 1) and S n for the set of all permutations of n elements.

The orbit of an element x under the action of a permutation σ denoted by O σ (x) is the subset of successive applications of σ on x that is,

O σ (x) = {σ k (x), k ∈ N}.
Permutations can be used in many different areas such that computer science, quantum physics, and biology to model RNA sequences. Some of the most important books in the literature on permutations include [Bón12, GKP94, FS09, Knu05].

There are many statistics that can be defined on permutations and extensive ongoing re searches are dedicated to them. We give in the next sections some statistics that we will be use.

As for their specification in the language of symbolic method presented in Section 2.2. A permutation is a sequence of integers. In the labelled universe this gives:

P = Seq (Z) ,
that translates to,

P (z) = 1 1 -z .
The coefficients of this sequence are found in EIS A000142. Alternatively we can use Re mark 2.2.5 and get that P can also be specified as a set of cycles. In the next section we see more details about this last decomposition.

Cycles

A cycle in a permutation σ, correspond to a subset of elements of that permutation whose elements trade places with one another. On the group level a cycle in a permutation σ of n elements corresponds to the orbit of one element of this permutation. Finally, the notion of cycle also corresponds to the cycles that appear in the graphical representation of the permutation.

Two different elements in a permutation can be in the same cycle. A permutation can al ways be decomposed uniquely into a set of disjoint cycles. For example the permutation in Figure 3.1 can be seen as σ = (3, 4, 6, 2, 5, 1) = (1, 3, 6)(2, 4)(5).

Therefore, we can write another specification for permutations in the language of symbolic method based on Remark 2.2.5. A permutation is simply a set of disjoint cycles of numbers.

P = Set(Cyc(Z)),
which gives

P (z) = exp log 1 1 -z = 1 1 -z .
Now if we take the set of all permutations of size n denoted S n and partition its element following the number of cycles each permutation has. A permutation can have between 1 and n cycles. This partitioning is well known and the numbers are called Stirling cycle numbers (or Stirling numbers of the first kind) that we will denote by n k . See

. , n}

A recurrence relation for these numbers is defined as follows. 0 0 = 1. Then ∀n > 0, n 0 = 0 and n n = 1. Then when n ≥ 2 and

1 ≤ k ≤ n -1 n k = n -1 k -1 + (n -1) n -1 k .
The signature of a permutation σ of size n denoted sgn(σ) is defined as

sgn(σ) = (-1) n-m ,
Where m is the number of cycles of σ. We say that the permutation is even if sig(σ) = 1 and odd if it is -1. Now, we can define the alternating group (also group of even permutation) which is de noted Alt n to be the subgroup of P n that contains even permutations.

Eulerian numbers and runs

We give two successive definitions of descent and runs and see the relation between each others.

Definition 3.1.1. From [Bón12] Let σ be a permutation of S n then i is a descent of σ, if σ i > σ i+1 . Similarly, we say that i is an ascent or rise if σ i < σ i+1 .
For example, σ = (3, 4, 6, 2, 5, 1), has 2 descents which are {6, 2} and {5, 1}. A set of ascend ing sequences in a permutation is called a run in [START_REF] Ronald L Graham | Concrete Mathematics: A Foundation for Computer Science[END_REF] or a rise in [START_REF] Comtet | Advanced Combinatorics: The Art of Finite and Infinite Expansions[END_REF]. Formally we give the following definition.

Definition 3.1.2. An ascending run (respectively a descending run) of a permutation σ is a maximal increasing (respectively decreasing) subsequence. That is

(σ i , σ i+1 , . . . , σ j ) (1 ≤ i ≤ j ≤ n) such that if i ≤ p ≤ q ≤ j, then σ p ≤ σ q (respectively σ p ≥ σ q ).
For example, the ascending runs of σ = (3, 4, 6, 2, 5, 1) are {3, 4, 6}, {2, 5} and {1}. The number of permutations of size n with k descents are called Eulerian numbers which are de noted n k . We also denote by r(n, k) the number of permutations of size n having k ascending runs. We have the following result. If σ has k -1 descents, then σ can be decomposed into k asending runs. Which leads to the following equality

Result 3.1.3. ∀n ≥ 1, k ≥ 1, n k -1 = r(n, k).
There is a simple recurrence relation on these numbers. We have that for, 1 0 = 1 and for n ≥ 2, and k = 0

or k = n -1, n k = 1. Then for n ≥ 3, 1 ≤ k ≤ n -2 n k = (n -k) n -1 k -1 + (k + 1) n -1 k .
The first values of the Eulerian numbers are depicted in

Set partitions and Surjections

A set partition is a partition of finite set into a number of nonempty subsets (also called boxes). For example there is 1 partition of 3 elements into 1 subset, 3 into 2 subsets and 1 into 3 subsets as depicted in Figure 3.2.

These numbers have been studied in the 19th century even though they were known from more ancient times. See [Con12, Gar78, Knu13, FS09] for some references on the subject. The total number of set partitions for a fixed size n is counted by what is called Bell numbers which we will denote b n . We already saw that b 3 = 5. It is still possible to write a sum for B n in term of n k by multiplying the numbers by k! and call them Ordered Stirling partition numbers.

(S n ) n≥0 = 1, 1,
1 ≤ k ≤ n -1 n k = n -1 k -1 + k n -1 k .
1 subset 2 subsets 3 subsets [{1, 2, 3}] [{1, 2}, {3}] [{1}, {2}, {3}] [{3}, {1, 2}] [{2}, {1}, {3}] [{1, 3}, {2}] [{1}, {3}, {2}] [{2}, {1, 3}] [{2}, {3}, {1}] [{2, 3}, {1}] [{3}, {1}, {2}] [{1}, {2, 3}] [{3}, {2}, {1}]
S n = n k=1 k! n k .
Once again if we let B be the class of ordered partition, using the EGF scheme of the symbolic method we see that this time we have sequences nonempty set, thus,

B = Seq (Set ≥1 (Z)) .

Which leads to

B(z) = 1 1 -(e z -1) = 1 2 -e z .

Integer partitions and compositions

It is possible that prehistorical used astragalus of hucklebone of certain animals to play games with them. Since a grouped number of these bones are not rare to be found during archaeo logical excavations. But ancient Egyptians used these bones to determine moves in simple board games. But it is during middle ages that systematic use of of dice games. The first studies on this subject goes back to Cardano (1501 1576) with a book titles "Book on game of chance" and a manuscript by Galileo (1564 1642) with some frequencies on sums of dices, see [START_REF] Linstead | The roots of combinatorics[END_REF] for more details.

An integer partition is a way of writing an integer n as a sum of positive integers. If the order of the elements in the sum matters then it is called an integer composition.

To illustrate the differences between integers partitions and compositions see Figure 3.4 and Figure 3.5.

Compositions can be seen as sequences of integers. It we denote C to be the class of integer compositions, then in the realm of OGF the class of positive integers can be written as I = Seq ≥1 (Z). We can then write: C = Seq (I) , which translates to,

C(z) = 1 1 -z 1-z = 1 -z 1 -2z .
By coefficient extraction wee see easily that,

C n = 2 n-1 .
The first coefficients are, This sequence is referenced under EIS A000079. Let us define C n,k to be the number of composition of integer n into k parts. We can write the integer n as a sequence of points and put k -1 bars to split this integer into k distinct parts. The number of possible places to place the bars is n -1 and we want to place k -1 of them. Therefore, Partitions on the other hand can be specified using multisets of elements. Since the ordering of the summands does not matter. If we let IP be the class of integer partitions then,

(C n ) n≥1 = 1,
C n,k = n -1 k -1 . 4 3 + 1 2 + 2 2 + 1 + 1 1 + 1 + 1 + 1
IP = MSet (I) , So that, IP (z) = m≥1 1 (1 -z m )
.

The first coefficients are,

(IP n ) n≥1 = 1, 1,
4 3 + 1 1 + 3 2 + 2 2 + 1 + 1 1 + 2 + 1 1 + 1 + 2 1 + 1 + 1 + 1

Graphs

A graph is a set of vertices together with links between pairs of vertices. Definition 3.4.1. A graph (or an undirected graph) is a pair G = (V, E), where V is a set whose elements are called vertices, and E ⊆ {{x, y} | (x, y) ∈ V 2 } is a set of pairs (sets with two distinct elements) of vertices, whose elements are called edges.

The degree of a vertex v in a graph G is denoted D G (v) or simply D(v). It is defined by the number of vertices adjacent to v (also called the neighbors). As in the case of graphs, multigraphs can also be labelled to form labelled multigraphs.

Result 3.4.5. Let G n be the number of graphs on n labeled nodes then for n ≥ 1, A connected graph is a graph in which there is a path between any pair of vertices.

G n = 2 ( n 2 )

Trees

Trees are important structures, they are used extensively in computer science for compilers, sorting algorithms, efficient database, representing lists,…. Their study is also relevant in biology and phylogenetics and many other areas. In mathematics, people have been interested in the systematic study of their properties. Modern studies date back to Francis Galton and his investigation of the extinction of family names [START_REF] Galton | Problem 4001[END_REF] as well as Ernst Schröder in [START_REF] Schröder | Vier combinatorische Probleme[END_REF]. Some good introductions to trees in combinatorics and probability theory can be found in [Drm09, FS09, CCG18].

Formally a tree is a connected graph without cycles. Definition 3.5.1. A rooted tree is a tree where a certain node is distinguished called the root node.

Throughout this thesis we will be treating rooted trees and in the figures we will draw them upsidedown such that the root node is always at the top, see Figure 3.9 for an example.

Trees are planar graphs since they can be embedded into a plane without crossings. However a tree can have different embeddings. Therefore counting families of trees with different embeddings or not makes a difference. If we are counting a family of planar trees then we need to consider all different embeddings of the tree. The vocabulary of trees will be a bit different from the graph one. Therefore, we will refer to the vertices of the tree as nodes. We say that a tree r is a subtree of a if a is the parent of the root if r (we also say that r is a child of a). The degree (or arity) of a node a in t is its number of childen which corresponds to D(a) -1 on the underlying graph structure (the minus 1 is to substract the parent node). This will be denoted by d t (a) or d(a).

Finally, nodes of degree > 0 are called internal nodes while nodes of degree 0 are referred to as leaves. Definition 3.5.2. A planar tree (or ordered tree) is a tree where subtrees of a common node are ordered between each others (and represented from left to right).

In Figure 3.9, if we are considering planar trees then the two trees are different. However the underlying graph is the same. Therefore if we were counting nonplane trees these two would be the same. Definition 3.5.3. A labelled tree is a tree which the underlying graph is a labelled graph. Remark 3.5.4. Usually the term labelled trees is used to denote a tree where each node has a different label, and if the tree has n nodes then the labels range from 1 to n. But it is more suitable to call it a bijective labelling between the nodes and the set [n]. Definition 3.5.5. A tree that has n nodes is a weakly labelled tree if each node is labelled by an integer, and if k is the maximum label in the tree, then all labels from 1 to k appear in the tree.

It is easy to see that the number of different labellings (or bijective labellings) of a tree with n nodes is n!.

The number of weak labellings of a tree is counted by ordrered Bell numbers (also ordrered set partitions), see Section 3.2 for more details on it. We need to define an ordering on the nodes of the tree so that we can talk of first, second node, etc.

The idea is to take an ordered set partition of n. If the partition has k parts, then the tree will be labelled from 1 to k. The integers in the first subset of the partitions represent the nodes that take label 1 and so on.

Simple varieties of trees

Have been introduced by Meir and Moon in [START_REF] Meir | On the altitude of nodes in random trees[END_REF]. We start by defining the concept of a degree function which is a function that groups all possible arities that a simple tree can be built with. Definition 3.5.6. Let Ω be a multiset of integers that does not contain 0. Then the colored degree function ϕ(u) of Ω is:

ϕ(u) = ω∈Ω u ω .
Each different colored degree function gives a different variety of simple trees. The colored degree function defines the set of allowed arities and colors for the nodes in a tree. It is then possible to write ϕ(u) as a power series

ϕ(u) = n≥1 ϕ n u n .
Therefore ϕ i represents the number of colors of nodes of arity i. From Definition 3.5.7 of simple trees we can specify these families in the OGF universe. Let ϕ(u) be a degree function, then,

T = Z × (1 + (ϕ • T ))
In other word a tree is either a leaf or an internal node with a degree and a color as in ϕ. From the specification we get

T (z) = z (1 + (ϕ(T (z))) . ( 3
∃τ, 0 ≤ τ ≤ R, φ(τ ) -τ φ′ (τ ) = 0.
A class of tree that satsifies these conditions is said to belong to the smooth inversefunction schema. The schema is said to be aperiodic if φ(u) is an aperiodic function of u.

Theorem 3.5.15. [FS09, Theorem VII.2] Let y(z) belong to the smooth inversefunction schema (i.e it satsifies Condition 3.5.13 and Condition 3.5.14 ) in the aperiodic case. Then, let τ be the positive root of the characteristic equation and ρ = τ / φ(τ ), we have,

[z n ]y(z) = φ(τ ) 2 φ′′ (τ ) ρ -n √ π n 3 1 + O 1 n .

Pólya trees

Pólya trees are rooted, nonplane trees where the size of the tree is taken to be its total number of nodes. Using the symbolic method seen in Section 2.2. We can define the class H of Pólya trees as follows: There is no known close formula for the resulting generating function but nontheless they can be studied for asymptotic enumeration using the functional equation resulting from the specification. The first values of H n are: 3.11.

H = Z × MSet(H).

Schröder trees

Schröder trees have first been studied by Ernst Schröder in a famous paper of 1870 [START_REF] Schröder | Vier combinatorische Probleme[END_REF].

Definition 3.5.16 (see [START_REF] Flajolet | Analytic Combinatorics[END_REF]p. 69]). A Schröder tree is a rooted plane tree whose internal nodes all have arity at least 2. The size of a Schröder tree is its number of leaves.

Note that a Schröder tree is an unlabelled combinatorial structure (neither the leaves nor the internal nodes are labelled). In the context of analytic combinatorics the combinatorial class S of Schröder trees is thus specified as

S = Z ∪ Seq ≥2 S. (3.2)
Its combinatorial meaning is direct in the context of decomposable objects (see Flajolet and Sedgewick [START_REF] Flajolet | Analytic Combinatorics[END_REF] for a detailed introduction to the combinatorial specification): An object from S is either a leaf (represented by the single atom Z, of size 1), or it is composed of an internal node, parent of a sequence of at least two elements from S. Not that, in the specification, the internal nodes are omitted (because they are of size 0): the expression Seq ≥2 S is a abbreviation of E × Seq ≥2 S where E stands for an atom of size 0 and Seq ≥2 S is a sequence of at least two elements from S.

Once the combinatorial specification is given, the classical symbolic method presented in Section 2.2, translates automatically the equation specifying the objects into a functional equation satisfied by the (ordinary) generating functions associated to the structures. The generating function of S is defined as the formal series S(z) = n≥1 s n z n where s n is the number of Schröder trees of size n (i.e. with n leaves). Using the symbolic method on Equation (3.2), we get that

S(z) = z + S(z) 2 1 -S(z) . (3.3)
An elementary iteration allows us to extract the first coefficients of the sequence (s n ) n∈N :

(0,
S(z) = 1 + z - √ 1 -6z + z 2 4 .
This is sufficient to get the following asymptotic equivalent of s n when n tends to infinity:

s n = 3 √ 2 -4 4 √ π n -3/2 3 -2 √ 2 -n (1 + O( 1 /n)) .
We refer the reader to [FS09, page 69] for a more detailed analysis of this generating func tion S. Figure 3.12 depicts all trees of size 4. Variants of Schröder trees can be defined, by allowing the node degrees in some fixed set. For instace:

S = Z ∪ (S × S × S) . (3.4)
Which gives Shröder such that internal nodes have arity 3.

Remark 3.5.17. In we fix the node degree of a Schröder tree to be d, then, we get the class of plane dary tree. This is because of the fact that in this case the number of internal nodes is correlated to leaves.

Increasing trees

A labelled tree is increasing when all the paths from the root to a leaf are (strictly) incresing.

3 Different families of increasing trees can be considered. Even if the name 'increasing trees' is classically used to denote a more specific families of trees.

Definition 3.5.18. Let ϕ(u) be a colored degree function as defined in Definition 3.5.6. The class of increasing trees parametrized by ϕ(u) contains all trees that are labelled and rooted.

Let n be the number of nodes in the tree. Then the label on the nodes in the tree goes from 1 3

In fact Strict increasing trees would have been a more accurate name but the name increasing trees has become widely known. In this thesis the distinction is important since we will consider some families of trees that are not necessarily strictly increasing.

to n. Additionally, all paths from the root to a leaf are strictly increasing. The size of a tree is the total number of nodes.

A consequence from the definition is that increasing trees have no label repetitions. Flajolet, Bergeron and Salvy in [START_REF] Bergeron | Varieties of increasing trees[END_REF] introduced a systematic study of increasing trees in terms of asymptotics and parameters on these trees. It should be noted that other families of increasing trees have also beend described in the literature such that the ones studied in [START_REF] Janson | Generalized Stirling permutations, families of increasing trees and urn models[END_REF][START_REF] Kuba | Combinatorial families of multilabelled increasing trees and hooklength formulas[END_REF].

It is possible to construct plane or nonplane varieties of trees depending on how we interpret the colored degree function

T = Z □ ⋆ Seq Ω (ϵ + T ) T = Z □ ⋆ Set Ω (ϵ + T )
Where Ω is a multiset of of integers defined as in Section 3.5.1. If we denote

ϕ(u) = ω∈Ω u ω .
The operators Seq Ω and Set Ω can be defiend as follows:

Seq

Ω (A) = k≥0 ϕ k Seq k (A).
The set operators on Ω can be defined similarly.

So that for the Seq operator:

ϕ(u) = ω∈Ω u ω ,
and for the Set operator:

ϕ(u) = ω∈Ω u ω u! .
The specifications translate to the following integral form Increasing trees can often be described as the result of a dynamic construction: the nodes are added one by one at successive integertimes in the tree (their labels being the time at which they are added). This description sometimes allow to apply probabilistic method to prove theorems about some characteristics such as the height of the tree, and it also often gives a very efficient way to generate large trees from the considered class using simple, iterative and local rules.

T (z) = z 0 1 + ϕ(T (u)) du. ( 3

Incremental process for increasing trees

In this section we present an incremental processes for two models of increasing trees and for binary search trees. The idea we want to build a random tree of the desired class such that when we stop the process and have a tree of size n. All trees of size n are equiprobable in other words the underlying distribution is the uniform distribution. It is not possible for all varieties of increasing trees to admit a construction using successive insertions see [START_REF] Panholzer | Level of nodes in increasing trees revisited[END_REF] for more details.

We illustrate this incremental process on three classes of trees: recursive trees, increasing binary trees and binary search trees.

Recursive trees are a simple model of trees which were originally designed as a simple model for the spread of epidemics [START_REF] John W Moon | The distance between nodes in recursive trees[END_REF]. Combinatorially, a recursive tree is a rooted nonplane (i.e. the order of siblings is irrelevant) tree whose nodes are labelled from 1 to the number of nodes in such a way that each label appears exactly once, and the labels increase along all branches. We denote by R n the class of all nnode recursive trees. Now, consider a sequence of random trees (t n ) n≥1 built recursively as follows: t 1 has only one node, labelled by 1. Given t n-1 , attach a new child labelled by n to a node picked uniformly at random among the n -1 nodes of t n-1 . Then, it is known that for all n ≥ 1, t n is a tree taken uniformly at random in R n , the set of all nnode recursive trees.

Both analytic combinatorics and probabilistic methods, as well as a bijection with permuta tions, have been used to understand the typical shape of a large recursive tree: it is known that the degree of the root grows as ln n (see [START_REF] Drmota | Random trees: An interplay between combinatorics and probability[END_REF]Sec. 6.1]), the height as c ln n (for an explicit constant c -see [START_REF] Pittel | Note on the heights of random recursive trees and random mary search trees[END_REF]), the proportion of nodes of arity k ≥ 0 converges to 2 -k (see [Drm09, Th. 6.8]).

Incresing binary trees are rooted plane binary trees. Internal nodes are labelled from 1 to n such that along each branch of the tree, the labels are strictly increasing. We denote by B n the class of all node binary increasing trees. The evolution process that builds this class of trees is defined by the follwing. Consider a sequence of random trees (g n ) n≥1 built recursively as follows: g 1 has a single internal node labelled 1 and two leaves attached to it. Given g n-1 , replace a leaf picked up uniformly at random with a new node labelled n that has two leaves attached to it. Then, g n is a tree which contains n internal nodes. It is known that for all n ≥ 1, g n is a tree taken uniformly at random in B n .

Binary search trees form an important and classical data structure. The structure is efficient especially for inserting and searching elements. It is also simple enough to implement. There are many existing studies on this class of trees studied from different point of views, see for instance [START_REF] Flajolet | Patterns in random binary search trees[END_REF][START_REF] Hosam | Evolution of random search trees[END_REF]. We describe the evolution process of these trees in the follow ing. We generate a random tree t n of size n as follows. Suppose we are given a random permutation σ of n elements. At first, t is reduced to the trivial tree consisting of a single root labelled σ 1 . Then, given t n-1 , we compare σ n with the root labelled σ 1 . If σ n < σ 1 , then descend into the left subtree, otherwise into the right subtree. Continue with the root of the chosen subtree as current, according to the same rule. Finally, attach a leaf labelled σ n at the first empty place.

It has been shown in various places [Drm09, MTS18, SM01] that the two models of binary search trees and increasing binary trees are equivalent in the sense that the underlying tree shapes (the one obtained after removing all labels) have the same probability distribution.

Monotonic trees

Prodinger and Urbanek in a paper entitled 'On monotone functions of tree structures' [START_REF] Prodinger | On monotone functions of tree structures[END_REF] introduced a property of a tree labelling. If k = n they call it a monotone bijection. As we see from the definition there is no require ment for the labelling to start at 1.

There exists some research on monotonic trees that study some paramters on these trees such that [MP05, Kir84, Kem93, Bli87] and the thesis of of Morris [START_REF] Morris | On Parameters in Monotonically Labelled Trees[END_REF]. Some more recent studies include models of multilabelled increasing trees by Panholzer and Kuba in [START_REF] Kuba | Combinatorial families of multilabelled increasing trees and hooklength formulas[END_REF].

In Chapter 4, Chapter 5 and Chapter 7 we will be working on trees that are labelled and such that the underlying structure is the one of Schröder trees. Then, we make some definitions.

Definition 3.5.22. A labelled Schröder tree, has the skeleton of a Shröder tree (see Sec tion 3.5.3) and is such that only internal nodes have integer labels.

From the definition we see that the leaves of a labelled Schröder tree are not labelled. There fore, Definition 3.5.23. A monotonic Schröder tree is a labelled Schröder tree, such such that the root node has label 1 and along each branch the labellings are weakly increasing and if m is the largest integer of the tree then all labels from 1 to m appear. Definition 3.5.24. A strict monotonic Schröder tree, is a monotonic Schröder tree, such that along each branch the labellings are strictly increasing. monotonic Schröder trees and strict monotonic Schröder trees allow for a label appearing multiple times. However in strict monotonic Schröder trees the labels appear in different branches of the tree, whereas in monotonic Schröder trees, they can appear in the same branch. See Figure 3.15 for an example of a strict monotonic Schröder tree, however, the right tree on Figure 3.14 is not strict monotonic.

Remark 3.5.25. Our use of monotonic labelling in Definition 3.5.23 and Definition 3.5.24 is connected to the fact that different nodes with the same label can appear in the tree as long as they do not violate the condition for monotonicity. However, in all our models the root always starts with label 1. Therefore, we do not need to fix a parameter k as in [START_REF] Prodinger | On monotone functions of tree structures[END_REF].

We end this section with a final definition Definition 3.5.26. A connected monotonic Schröder tree is a labelled Schröder tree such that the labellings are weakly increasing along branches and when a label i appears for the first time in the tree on node v (v is also the closest node to the root labelled i), then all other occurences of i appear in subtree of v. As a result of this definition we see that when a label i appears in the tree, all other occurences of i are connected. For instance, the tree in Figure 3.15 is not connected because the label 4 appears on different branches. Whereas the tree in Figure 3.16. As a result we see that a connected monotonic Schröder tree is a monotonic Schröder tree but not a strict monotonic Schröder tree in general (since in the latest the same label can appear on different branches).

CHAPTER 4

Three models of increasing

Introduction

The aim of this chapter is to introduce new combinatorial models for phylogenetic trees: the main idea is to add node labels in order to encode chronology in the classical model of trees introduced by Ernst Schröder in 1870 in the seminal paper Vier Combinatorische Probleme [START_REF] Schröder | Vier combinatorische Probleme[END_REF] and presented in Section 3.5.3.

In his paper (see the second problem), Ernst Schröder introduces a simple model of phyloge netic tree model, and enumerate this class of trees by their number of leaves.

In biology, a phylogenetic tree is a classical tool to represent the evolutionary relationship among species. At each branching node of the tree, the descendant species from distinct branches have differentiated themselves in some manner and are no more dependent: the past is shared but the futures are independent.

The main limitation of Schröder's model of phylogenetic trees is that it does not take into account the chronology between the different branching nodes. Since then, probabilistic approaches have been developed to consider this chronology: in particular in the context of binary trees, one can mention, e.g., the stochastic model of Yule [START_REF] Udny Yule | A Mathematical Theory of Evolution Based on the Conclusions of Dr[END_REF] and its generalisation by Aldous [START_REF] John | Probability Distributions on Cladograms[END_REF].

However, to the best of our knowledge, there seems to have been no attempt to combinatori ally enrich Schröder's original model in order to encode the chronology of evolution.

To do so, we consider labelled versions of Schröder trees, where the labels represent the order at which branchings occur. In Figure Figure 4.1 we have represented on the left handside a classical Schröder trees of size 50 (i.e. with 50 leaves), and, on the right handside, a labelled version of the same tree: time is on the vertical axis, from top to bottom, and a node of label x is placed at time x (the horizontal placement is irrelevant).

Discussion of related models: Increasing trees are classical in the literature of combinatorics and biology. Since they simulate evolution processes: for example, Bergeron, Flajolet and Salvy [START_REF] Bergeron | Varieties of increasing trees[END_REF] studied several families of increasinglylabelled trees (see Section 3.5.4 for more details), and, to do so, they developed some tools that are now classical in analytic combinatorics. As an example, one of these classical tools is the integration of the Greene operators. We refer the reader to [START_REF] Drmota | Random trees: An interplay between combinatorics and probability[END_REF] where more recent results on various families of increasing trees and the analytic combinatorics methods to quantitatively study them are surveyed.

However, the nature of our problem combines the models of Schröder trees and that of In creasing trees. From one side, the size notion of the trees is their number of leaves which is total number of living individuals. From the other side, we want that internal nodes be labelled increasingly to denote the appearance time differentiation.

Although our three models of increasing Schröder trees are more involved, our proofs rely on the same three methods used in the literature for the recursive trees: analytic combinatorics, a dynamical evolution and probabilistic methods, and bijections with classes of permutations.

Figure 4.1: A Schröder tree: without chronological evolution (on the lefthand side), and with chronological evolution (on the righthand side): the label of a node is represented as the distance from this node to the root.

Our main contributions: Although, as mentioned above, many variations of the recursive tree have been studied, this chapter together with the pair of papers: the long [BGMN20] and short version [START_REF] Bodini | Ranked Schröder Trees[END_REF] contains the first studies of increasing versions of the classical model of Schröder. We aim at defining an evolution process associating to a given Schröder tree structure an evolution represented by an increasing labelling of its internal nodes. Further more we also focus on relaxing the labelling constraints by allowing repetitions of labels. In the dynamical construction of the trees, allowing repetition of labels mean allowing adding several nodes at once in the tree. Our generalisations can be seen as natural discretetime versions of the classical probabilistic model of Yule trees (see, e.g., [START_REF] Steel | Properties of phylogenetic trees generated by yuletype speci ation models[END_REF]) where the time between two branchings are exponentially distributed.

This work is a part of a longterm overarching project, in which we aim at relaxing the clas sical rules of increasing labelling (described in, e.g., [START_REF] Bergeron | Varieties of increasing trees[END_REF]), by, for example, allowing labels to appear more than once in the tree. The following papers are part of this strand of research: [BGGW20, BGNS20] introduce and study models of label trees with less constrained increasing labelling rules, but also other graphs structures like [BDF + 16] fo cuses on increasinglylabelled "diamonds" and [GGKW20] on a compacted structure that specifies classes of directed acyclic graphs.

In this chapter, we introduce three new different models of Schröder trees with chronolog ical evolution: the increasing Schröder trees, the strict monotonic Schröder trees and the strict monotonic general trees. One important feature of these models is that they can all be simulated efficiently as will be seen in Chapter 7. The first two models are based on some increasingly labelling of Schröder trees, repetition of labels is allowed in the second model.

In the last model increases we increase the expressivity by allowing a new type of internal nodes. For all of the three models, we prove asymptotic results about important character istics of a typical large tree of this class (e.g. root distribution, number of nodes of arity 2, 3, etc, height of the tree, etc -see Table 4.1 where our main results are summarised), and design an algorithm that generates a large tree taken uniformly at random among all trees of a given size in the class. The quantitative analysis of the three models and the design of the random samplers rely on a combination of analytic combinatorics methods (see [START_REF] Flajolet | Analytic Combinatorics[END_REF] for a survey), probabilistic methods (in particular methods developed by Devroye [START_REF] Devroye | On the Height of Random mary Search Trees[END_REF] to study the height of split trees), and bijective methods (we exhibit bijections between our classes of trees and classes of permutations, these are then useful for the analysis of different characteristics and for the design of the generation algorithms). In particular, we exhibit in teresting relations between Stirling numbers and parameters on trees such that the labelling of nodes, the number of internal nodes, and the depth of a leaf.

Generic approach highlighted in the chapter: Similarly to the recursive tree, all of our three models have a generic constrained evolution process. The specificity of each model is induced by small changes of the evolution process: we give here a generic, non precise description of the evolution process, details specific to each family of trees will be detailed in each section:

• Start with a single (unlabelled) leaf; • Iterate the following process: at step ℓ (for ℓ ≥ 1), select a subset of leaves and replace each selected leaf by an internal node with label ℓ attached to an arbitrary sequence of leaves.

Note that the increasing labelling corresponds to the chronology of the construction of the tree: internal nodes labelled by an integer ℓ were added at time ℓ. Our three models differ from each other by different constraints on the set of selected leaves: in our first model, this subset is always of size 1, while it can be bigger in the other two models. The difference between our second model and third model is that internal nodes have arity at least 2 on the second model, while they can have arity 1 in the third model. Importantly, in all three models our Schröder trees can be seen as phylogenetic trees of n species (n being the number of leaves): the labels of internal nodes stand for the times at which different branches of the phylogenetic trees split.

(n -1)! 2 (n-1)(n-2)/2 Θ(n) Θ(n 2 ) Θ(n) Θ(n)
Table 4.1: Summary of the main analytic results of this chapter: behaviour of the charac teristics of a large typical tree of each of the three classes of labelled Schröder trees. The parameter n stands for the size of the trees (i.e. their number of leaves) and the results are asymptotic when n → +∞. (LM stands for "leftmost" and c is a positive constant.)

Plan of the chapter: Each of the three main parts (Section 4.2,Section 4.3 and Section 4.4) is dedicated to one of our three new models of labelled Schröder trees. The organisation inside each section is similar: after defining the model we show theorems about different characteristics of the trees using analytic combinatorics and bijective methods. We then ex hibit the associated dynamical evolution that generates the considered class of trees, and use this evolution process to (a) design an efficient random sampler for this class of trees and (b), in some cases, to prove some probabilistic results about the height of a typical large tree from this class.

Increasing Schröder trees

The first model we are interested in is a generalisation of the Schröder tree, a classical com binatorial structure that was originally introduced in the context of phylogenetics [START_REF] Schröder | Vier combinatorische Probleme[END_REF].

Our generalisation consists in labelling the internal nodes of a Schröder tree -denote by ℓ their number -with the integers {1, . . . , ℓ} with the constraints that each label appears exactly once and a node's label is larger than the label of its parent; such a labelling of a tree is called "increasing", we call such a constrainedlabelled Schröder tree an increasing Schröder tree. In the tree seen as an evolutionary process, the labels can be interpreted as the order of appearance of the different nodes (which, for example, stand for different species). Several classes of increasinglylabelled trees have already been studied in the literature using analytic combinatorics [START_REF] Flajolet | Analytic Combinatorics[END_REF] methods, but these methods applied to the Schröder tree would raise important technical problems. The novelty of our approach is to use a dynamical description of the increasing Schröder tree inspired by its evolutionary interpretation; this allows us to give the first analytical results about this combinatorial structure.

The model and its context

We define rooted trees as genealogical structures: the root is the unique common ancestor of all nodes of the tree, each node except the root has exactly one parent (the root has no parent), nodes that have no children are called leaves, nodes that have at least one child are called internal nodes. The arity of a node is it's number of children. We say that a tree is plane if siblings (nodes that have the same parent) are ordered.

We are interested in an increasinglylabelled variation of Schröder trees that were presented in Section 3.5.3.

Definition 4.2.1. An increasing Schröder tree has a Schröder tree structure and its internal nodes are labelled with the integers between 1 and ℓ (where ℓ is the number of internal nodes) in such a way that each label appears exactly once and each sequence of labels in the paths from the root to any leaf is (strictly) increasing. Increasing trees can, to a certain extent, be specified using the Greene operator □ ⋆ (see, for example, [FS09, page 139]), and the specification can then be translated into an equation satisfied by the exponential generating function of the increasing tree class. Since in our context the size of a tree is the number of its leaves while only internal nodes are labelled, we need to introduce a second variable u to mark the internal nodes. Let us denote by s n,ℓ the number of increasing Schröder trees with n leaves and ℓ internal nodes. Following standard methods in analytic combinatorics we define a generating function that is ordinary for the leaf marks and exponential for the internal node marks: we set S * (z, u) = n,ℓ s n,ℓ z n u ℓ /ℓ!. The specification of this combinatorial class is

S * = Z ∪ U □ ⋆ Seq ≥2 S * .
Using the symbolic method, we obtain the following equation satisfied by S * (z, u):

S * (z, u) = z + u v=0 S * (z, v) 2 1 -S * (z, v) dv.
Although this integral equation could be analysed further in order to get information about increasing Schröder trees, this analysis would be very cumbersome; a better approach is to see the Schröder tree as the result of an evolutionary process. Another advantage of this new approach is that it extends to other families of labelled Schröder trees for which there seems to be no (classical) specification, even using the Greene operator: one such example is the family of strict monotonic Schröder trees studied in Section 4.3.

In Figure 4.2 we have represented two increasing Schröder trees: both are generated uni formly at random among all increasing Schröder trees of the same size: size 30 on the left, size 500 on the right. The lefthandside tree has 27 internal nodes (and 30 leaves). It is the same tree as the one represented in Figure 4.1, where its chronological evolution is repre sented on the righthand side: the internal node labelled by ℓ is displayed on level ℓ-1 (i.e. at distance ℓ -1 from the root on the vertical axis), for all ℓ ∈ {1, . . . , 27}. The righthandside one is drawn using a circular representation, which is often used for phylogenetic trees: the labels are omitted but as in Figure 4.1, the length of an edge is proportional to the difference of the labels of the two nodes it connects. This righthandside tree has 492 internal nodes (and 500 leaves).

We now introduce an evolution process generating increasing Schröder trees:

• Start with a single (unlabelled) leaf; • Iterate the following process: at step ℓ (for ℓ ≥ 1), select one leaf and replace it by an internal node with label ℓ attached to an arbitrary sequence of new leaves.

Recall that we define the size of a Schröder tree to be its number of leaves. It is important to note that, because a Schröder tree with n -1 internal nodes has at least n leaves, the evolution process defines a bijection between the set of all nleaf Schröder trees and the set of all sequences (d

(n) ℓ , u (n) ℓ ) 1≤ℓ<n such that for all 1 ≤ ℓ < n, u (n) 1 = 1, d (n) ℓ ≥ 2, 1 ≤ u (n) ℓ+1 ≤ ℓ i=1 d (n)
i -(ℓ -1), and ℓ i=1 d (n) i = n. By taking all trees of the same size together, we obtain the following induction equation, enumerating increasing Schröder trees by size: if, for all n ≥ 0, t n is the number of nleaf Schröder trees, then t 1 = 1 and, for all n ≥ 2,

t n = n-1 ℓ=1 ℓ t ℓ . (4.1)

Overview of the main results

After solving the counting problem of increasing Schröder trees, we show how trees of size n can be constructed from trees of size n -1 in Section 4.2.4. Then, in Section 4.2.5 we exhibit different bijections with subclasses of permutations in Section 4.2.3. In fact these bijections give important information about the tree structure. For instance, we will show that the number of internal nodes of an Increasing Schröder tree is related to the number of cycles in permutations by a very simple formula, see Theorem 4.2.8. The last bijection will show another interesting result. In fact, the number of cycles in a permutation is also linked to the depth of the leftmost leaf in the tree as shown in Theorem 4.2.12. In Section 4.2.6, we show the relationship between the trees and runs in permutations. Finally, Section 4.2.7 is dedicated to the study of some parameters on these tree that are summarised in

Exact enumeration and relationship with permutations

Let T denote the class of increasing Schröder trees. Using the evolution process, we get the following specification for T :

T = Z ∪ ΘT × Seq ≥1 Z . (4.2)
In this specification, Z stands for the leaves, and the operator Θ is the classical pointing oper ator (see [START_REF] Flajolet | Analytic Combinatorics[END_REF]page 86] for details). The specification is a direct rewriting of the evolution process: a tree is either of size 1 (Z), or it has been built by pointing a leaf in a smaller tree (ΘT ) and replacing it by a sequence of at least two leaves. Although the latter sequence is of length at least 2, we use the operator Seq ≥1 (Z) instead of Seq ≥2 (Z) because the leaf that was pointed is reused as the leftmost child of the new internal node.

The symbolic method translates this specification into a functional equation satisfied by the generating function associated to the combinatorial class of increasing Schröder trees. Note that although the increasing Schröder trees are labelled, this labelling is transparent, i.e. it is possible to work with ordinary generating functions (as opposed to exponential generating functions). This is because the size of an increasing Schröder tree is its number of leaves, and the leaves are not labelled. We define the ordinary generating function associated to T by T (z) = n≥1 t n z n , where t n is the number of increasing Schröder trees of size n. Using the symbolic method (in particular, pointing at a leaf translates into a differential operator), we get

T (z) = z + z 2 1 -z T ′ (z). (4.3) Writing (1 -z)T (z) = z(1 -z) + z 2 T ′ (z)
and extracting the nth coefficient on both sides of this equation, we get that,

t n = 1, n = 1, 2 n t n-1 , n ≥ 3 (4.4)
Then, the first values of t n are

(t n ) n≥0 = 0,
t n = n! 2 .
for all n ≥ 3, t n = n t n-1 : we get back the recurrence exhibited earlier in Equation (4.1). Using the fact that t 1 = t 2 = 1, we get that t n = n! /2 for all n ≥ 2. Note that the radius of convergence of the ordinary generating series T (z) is 0; this series is thus purely formal.

In Figure 4.3 we draw all trees of size 4. The sequence of numbers t n appears in EIS A001710 as the order of the alternating group Alt n , or the number of even permutations of n letters (see Section 3.1 for more details on this group).

Iterative construction of a tree

From Equation (4.4) we see that a tree of size n can be constructed from the set of trees of size n -1.

Proposition 4.2.3. Each increasing Schröder tree of size n, t ∈ T n can be constructed from a tree t ′ ∈ T n-1 uniquely as follows,

• Either by choosing one of n-1 leaves of t ′ and replace it with a binary node labelled with the successor of the highest integer already appearing in the tree.

• Or by adding a new rightmost leaf to the last internal node (i.e the internal node with highest label) that appears in t ′ .

Proof. By induction. For n = 2 there is only one tree. For n ≥ 3, from Equation (4.4) there are exactly n way to add a leaf to a tree of size n -1 so that it becomes a tree of size n. Therefore if the above construction is unambiguous and all the constructed trees belong to T n the result holds. We see that we put a binary node to replace one of the n-1 leaves. Since the trees are plane this construction is not ambiguous. Finally when adding a new rightmost leaf to the last internal node added to the tree is also unambiguous. In summary, at each iteration step we either create a binary node or add a new leaf to a specific node, and since we have no limit on the degree of a node the construction gives a tree of T n . □

In the following we will exhibit three bijections with subclasses of permutations based on this iterative construction and we will obtain nice bijective results. In particular the reader can see Corollary 4.2.9, Corollary 4.2.13, Corollary 4.2.14 and Theorem 4.2.20.

Bijections with permutations and relationship to internal nodes and depth of a leaf

Bijection with restricted permutations

As we saw in Section 4.2.4, at each iteration step if we have a tree of size n (respectively an npermutation or a permutation of n elements), we have n + 1 ways of building a tree of size n + 1 (respectively an (n + 1)permutation). We have n different ways of adding a binary node and one way of adding a new leaf to the last internal node. This corresponds to the n + 1 places to add a new element in an npermutation. In this bijection we fix the position of the element that adds a new arity to the tree in the permutation.

The fact that the number of increasing Schröder trees of size n is equal to t n = n! 2 hints at the existence of a relationship between our model of increasing trees and a subclass of permutations. In this section, we aim at exhibiting this relationship. In this section we will exhibit two bijections. The idea is to put a restriction on the number of permutations so that they become equal to n! 2 . Maybe one of the simplest way to think of it is to put a restriction that integer one appears before two in the permutation (i.e its index is smaller). However a more elaborate bijection will be presented that makes use of another restriction namely the one of cycles and this last restriction on cycles will be of great interest to us since some parameters on trees can be seen directly on permutations.

We will denote by σ = (σ 1 , . . . , σ n ) the sizen permutation that sends i to σ i ∈ {1, . . . , n} for all i ∈ {1, . . . , n}. For all k ∈ {1, . . . , n}, we denote by σ -1 (k) the preimageimage of k by σ, and sometimes call σ -1 (k) the "position" of k in the permutation σ.

We define recursively a map M between HP, the class of permutations such that 1 appears before 2, and the class T of increasing Schröder trees.

The only element of HP of size 2 is the permutation (1, 2); we set its image to be the tree whose root is labelled by 1 and has two (unlabelled) leafchildren. Now assume that we have defined M(σ) for all permutations σ ∈ HP of size at most n -1 for some n ≥ 2 and let σ be a sizen permutation in HP. We distinguish two cases according to the preimage of n by σ; we denote by σ = σ\n, the permutation obtained by removing the largest element in σ. For example, if σ = (4, 1, 5, 2, 3), then σ = (4, 1, 2, 3); σ can be seen as the permutation induced by σ on {1, . . . , n -1}.

• If σ n = n then, we set M(σ) to be the tree M(σ) in which we add a new rightmost leaf to the internal node with the largest label. • If σ n = k < n, then, we build M(σ) as follows: create a new binary node ν labelled with the smallest integer that does not appear as a label in M(σ) and attach two new leaves to this internal node. Insert this tree in M(σ) by placing ν in the kth leaf (we assume, for example, that the leaves are ordered in the depthfirst order) of M(σ). Proof. First note that the image by M of a permutation of size n is a Schröder tree of size n: indeed, at each iteration we remove exactly one element from the permutation and add exactly one leaf to the tree by either adding a leaf to the node with largest label or by removing one leaf and adding two new ones. Since the number of permutations of size n in HP is equal to the number of Schröder trees of size n, it is enough to prove that M is injective to conclude the proof. The mapping is injective since it corresponds to the construction in Proposition 4.2.3. □

(1, 2) M -→ (1, 2, 3) M -→ (4, 1, 2, 3) M -→ (4, 1, 2, 5, 3) M -→ (4, 1, 2, 5, 3, 6) M -→ (4,

Bijection with cycles in permutations and relationship to internal nodes

The idea here is to present a bijection with permutations based on their number of cycles. As we said in the start of this Section 4.2.5.1. We need a restriction on the set of permutations.

Let us define the combinatorial class PR (permutations with cycle restriction) to be the set of permutations in which the elements 1 and 2 belong to different cycles.

Lemma 4.2.5.

For n ≥ 2, P R n = n! 2 .
Proof. This can be seen by recurrence. For n = 2 there is one such permutation namely (1) [START_REF] For V, W ∈ V N | such that v = w, then let G(v) = [v 0 -v 1 ] + num(, n) and G(w) = [-v 1 ] + num(r, n) then num(t, n) = numn(r, n). because at least one of v i = w i . Therefore G(v) = G(w)[END_REF]. Then if P R n is the set of npermutation with elements 1 and 2 in different cycles. P R n+1 = (n + 1)P R n . Since from the set PR n a new element can be added to any place in the different cycles (the number of places is n) or create a new cycle. Solving the recurrence we get n! 2 . □

In this section, let σ be an npermutation with k cycles. Then we denote

σ = c 1 • c 2 • • • • • c k
as a product of cycles c i . This notation has been defined in Section 3.1.1. A cycle can be ordered canonically by putting the smallest integer in the beginning. Let c = (a 1 , a 2 , . . . , a i ) be a cycle that contains i elements. A new element e can be added in i different places. We add the new element to the right of the element at the selected index, that is, let 1 ≤ j ≤ i.

Then adding e in place j we obtain a new cycle c ′ = (a 1 , . . . , a j , e, a j+1 , . . . , a i ). We also denote by c i,j the element of position j in the cycle i.

Let us define also σ -1 (k) the function that returns a pair of integers (i, j) where i is the cycle number that contains integer k and j the position of integer k in the cycle c i . Finally let |c j | be the number of elements in the cycle c j .

Finally we define σ\n to be the permutation σ from which the element n has been removed.

We will define the mapping N : T → PR and show that

T N ∼ = PR
Definition 4.2.6. We define the mapping N recursively as follow:

• If σ = (1)(2) then N (σ) is the tree which is a binary root labelled 1. • Else, Let (i, j) = σ -1 (n)
where n is the largest element in σ.

-If |c i | = 1 then, we set N (σ) to be the tree N (σ\n) in which we add a new rightmost leaf to the last internal node of the tree (it is also the node with highest label). -Else, let k = c i,j-1 , we set N (σ) to be the tree N (σ\n) in which a new binary node labelled ν with the smallest integer that does not appear as a label in N (σ\n) and attach two new leaves to this internal node. Insert this binary node in N (σ\n) by placing ν in the kth leaf (we assume, for example, that the leaves are ordered in the depthfirst order) of N (σ\n).

The mapping N might seem a bit complicated to explain in simple words but it is quiet simple and the Figure 4.5 shows the same tree as in Figure 4.4 but using this new bijection.

Theorem 4.2.7. The map N is a onetoone correspondence between PR and T .

Proof. The proof is very similar to the one in Theorem 4.2.4. At each step in the algorithm exactly one leaf is added to the tree (the total size is increased by 1). The corresponding behaviour on the tree for the last is unambiguous since it corresponds to a construction as in Proposition 4.2.3. Therefore the mapping N is also injective. □

This mapping is interesting since we can see directly deduce that the number of cycles is closely related to the number if internal nodes in the tree.

Theorem 4.2.8. Let t be an increasing Schröder tree with n leaves and k internal nodes, and let p = N -1 (t). Let i be the number of cycles of p, then

k = n + 1 -i.
Proof. In the mapping N we see that when adding a new element in the permutation. We have two options, either creating a new cycle, or adding the new element to an already existing cycle. In both cases the size of the final permutation is increased by one.

We also see that if we create a new cycle with the new element then we do not create any new internal nodes.

The trivial tree (a binary root labelled 1) has one internal node and its corresponding permu tation has 2 elements and 2 cycles.

The maximum number of internal nodes for a tree of size n is n -1 and its permutation has 2 cycles. If a tree has 3 cycles then its has n -2 internal nodes and so on. The result follows straightly.

□

(1)(2) N -→ (1)(2)(3) N -→ (1, 4)(2)(3) N -→ (1, 4, 5)(2)(3) N -→ (1, 4, 5)(2)(3)(6) N -→ (1, 4, 5)(2)(3)(6)(7) N -→ (1, 4, 5)(2)(3)(6, 8)(7) N -→
t n,k = P R n,n+1-k .
Proof. The result follows directly from Theorem 4.2.8. □

Another Bijection with cycles in permutations and relationship to the depth of the leftmost leaf

We present now a last bijection which is also based on the number of cycles in a permu tation. The idea of this bijection looks like the previous one in Section 4.2.5.2 with small modifications. We define the mapping O : T → PR and keep the same notations as in Section 4.2.5.2.

Definition 4.2.10. We define the mapping O recursively as follow:

• If σ = (1)(2) then O(σ)
is the tree which is a binary root (a root with two leaves) labelled 1.

• Else, Let (i, j) = σ -1 (n)
where n is the largest element in σ.

- An example of the mapping O is depicted in Figure 4.6 on the same tree that was used in the other two bijections to illustrate the differences.

If |c i | = 1 then,
Theorem 4.2.11. The map O is a onetoone correspondence between PR and T .

Proof. The proof is very similar to the one in Theorem 4.2.4 and Theorem 4.2.7. At each step in the algorithm exactly one leaf is added to the tree (the total size is increased by 1). The corresponding behaviour on the tree for the last is unambiguous since it corresponds to a construction as in Proposition 4.2.3. Therefore the mapping O is also injective.

□

T O ∼ = PR
From this bijection we get a very interesting between cycles in permutations and the depth of the leftmost leaf of the tree.

Theorem 4.2.12. Let t be an increasing Schröder tree with n leaves and k is the depth of the leftmost leaf, and let p = O -1 (t). Let i be the number of cycles of p, then

k = i -1.
Proof. In the mapping O we see that when adding a new element in the permutation. We increase the depth of the leftmost leaf when a new cycle is created. The trivial tree (a binary From these observations the result follows. □ Corollary 4.2.13. Let d n,k be the number of increasing Schröder trees of size n such that the depth of the leftmost leaf is k. Let P R n,i be the number of npermutations such that the elements 1 and 2 belong to different cycles and which have i cycles. Then,

(1)(2) O -→ (1)(2, 3) O -→ (1)(2, 3)(4) O -→ (1)(2, 3, 5)(4) O -→ (1)(2, 3, 5, 6)(4) O -→ (1)(2, 3, 5, 6, 7)(4) O -→ (
d n,k = P R n,k+1 .
Proof. The result follows directly from Theorem 4.2.12. □ Corollary 4.2.14. Let t n,k be the number of trees of size n with k internal nodes and let d n,i be the number of trees of size n where the leftmost leaf has depth i. Then,

t n,k = d n,n-k .
Proof. The result is direct from Corollary 4.2.9 and Corollary 4.2.13. □

Relationship to Eulerian numbers and runs in permutations

Let us take the class of permutations HP defined in Section 4.2.5.1 which are permutations such that 1 appears before 2. We can make a partition of this set according to the number of runs. Let q n,k be the number of npermutations belonging to HP that have k runs (see Section 3.1.2 for more details about runs). The first values of q n,k can be seen in Table 4.3 which is a shifted version of EIS A144696. It is easy to find a recurrence for q n,k , for n ≥ 3 and 2 ≤ k ≤ n,

q n,k =    0 if n = 2 and k = 2, 1 if n ≥ 1 and k = 1, k q n-1,k + (n -k + 1) q n-1,k-1 n ≥ 3 and 2 ≤ k ≤ n (4.5)
The last recurrence can be proved easily. There is exactly one permutation of each size that has one run which is (1, 2, . . . , n). For size 2 there is only one permutation that counts, namely (1, 2), since (2, 1) is does not belong to HP. Finally, the number of npermutations having k runs either come from an (n -1)permutation with k runs, in this case the last element can be added at the end of one of its runs so there are k places, or it comes from an n -1 permutation that has k -1 runs, in which case we want to create a new run and thus add is some other place than the k -1 places that do not create a new run. In this case there are n new places for the new element minus k -1 places that do not create a new run which give

n -(k -1) = n -k + 1. 1 1 0 1 2 0 1 7 4 0 1

. , n}

We define the mirror permutation of a permutation (written in the standard notation not the cycle notation) to be the permutation obtained by reading the permutation from right to left. We denote this operation by mir(.). For instance, if σ = (2, 3, 1) then mir(σ) = (1, 3, 2). Now if we take the mirror permutation of each permutation in HP we get all permutations and moreover, Proposition 4.2.15. Let σ be an npermutation and σ ∈ HP, if σ has k then mir(σ) has n -k + 1 runs.

Proof. By reading the permutation from right to left, the sequence of ascents and descents is inversed. Therefore, the number of descents in σ was k -1, then mir(σ) has k -1 ascents and n -1 -(k -1) = n -k descents and therefore n -k + 1 runs. □ From Proposition 4.2.15, we see that it is possible to complete the values of q n,k by adding for each permutation in HP its mirror and with the partition on the number of runs we get Eulerian numbers that were presented in Section 3.1.2 and Table 3.2.

On the level of trees, there is a simple interpretation of runs in permutations of HP and the numbers q n,k .

Proposition 4.2.16. Let t be an increasing Schröder tree, m be the total number of internal nodes and k be the number of internal nodes (excepting the root node) that have an internal node attached to their second child. Let M(t), be the corresponding permutation in HP. If M(t) has i runs, then, i = m -k. Otherwise, when a new binary node b is added to the tree. An integer n is added in some position of the permutation (not the last one). We call this position j. In the next step the integer n + 1 will be added in the permutation. We know that if it is added to the right of n it will not create a new run. Since we have n in position j and a larger element at position j + 1. On the tree level this corresponds to adding a new binary node to the second child of b.

The argument still hold for separate steps. That is, if after adding b, in some future step we add an element l to the right of n. Two cases can arise, either the element to the right of n was smaller or larger than n. If it is smaller than n then, no new run is created.

However, if the integer l to the right of n is larger than n, then it has been added at some step in between the appearance of b and the actual step. A new run is created. But then l has already created a new binary node and the fresh binary node to be added in the tree will be added as a first position child of the node created by adding l.

Therefore, new nodes add runs in the permutation as long as they are not second child of some old node. □ Corollary 4.2.17. If we let t n,k be the number of Increasing Schröder trees of size n, and are such that the difference between their number of internal nodes and the number of internal nodes (excepting the root node) that have another internal node attached to their second child is equal to k, then, t n,k = q n,k .

Analysis of typical parameters

In this section, our aim is to describe the shape of a typical increasing Schröder tree, i.e. a tree taken uniformly at random among all increasing Schröder tree of a fixed size. To get information about this shape, we focus on four characteristics of the tree: the number of internal nodes, the arity of the root, the number of leaves that are children of the root, and the number of binary nodes (node of arity 2). We show asymptotic theorems for these characteristics in a typical increasing Schröder tree when the size goes to infinity.

Quantitative analysis of the number of iteration steps

In this section, we show that although an increasing Schröder tree of size n can have between 1 and n -1 internal nodes, it typically has of order n -ln n internal nodes. This result is particularly interesting to analyse the complexity of the evolutionary process: this means that, on average, this evolutionary process takes of order n -ln n iteration steps to generate a typical increasing Schröder tree of size n. In fact, our result is stronger than just finding an equivalent for the average number of iterations since we prove a central limit theorem for this quantity. To complete the picture we also quantify the average number of nodes of a fixed degree. We will show that the average number of binary nodes in a typical tree is n -2 ln n, the number of ternary nodes is ln n and higher arity nodes have a constant mean.

Theorem 4.2.18. For all n ≥ 1, we denote by X n the number of internal nodes in a tree taken uniformly at random among all increasing Schröder trees of size n. Then, asymptotically when n tends to infinity,

E Tn [X n ] ∼ n -ln n, V Tn [X n ] ∼ ln n, and X n -(n -ln n) √ ln n d -→ N (0, 1) in distribution.
To prove this theorem, we enrich the specification Equation (4.2) with an additional parame ter U marking the internal nodes:

T = Z ∪ U × Θ Z T × Seq ≥1 Z ,
where the operator Θ Z consists in pointing an element marked by Z. Remark here we do not use the Greene operator: the increasing labelling is a consequence of our point of view, we do not need to care about it. Using the symbolic method, this implies that, if t n,k is the number of increasing Schröder trees with n leaves and k internal nodes, t n (u) = n-1 k=0 t n,k u k , and

T (z, u) = n≥1 t n (u) z n , then T (z, u) = z + uz 2 1 -z ∂ z T (z, u), (4.6)
where ∂ z denotes the partial differentiation according to z. Once again, we write

(1 - z)T (z, u) = z(1 -z) + uz 2
, and extract the coefficient of z n on both sides; let us denoted by

t n (u) = n-1 k=0 t n,k u k , then this gives t 1 (u) = 1, t 2 (u) = u and, for all n > 2, t n (u) = (1 + (n -1)u) t n-1 (u). (4.7)
Extracting the coefficient of u k on both sides of this last equation gives: From Equation (4.7), we easily deduce a closed form for t n (u): for all n ≥ 2, we have

t 1,0 = 1, t n,1 = 1 for all n > 1, t n,k = t n-1,k + (n -1) t n-1,k-1 for all 0 < k < n,
t n (u) = u n-1 ℓ=2 (1 + ℓu). (4.8)
This is a shifted version of the sequence EIS A145324, which is related to Stirling cycle num bers. Our proof of Theorem 4.2.18 relies on the following lemma, which is a straightforward consequence of Equation (4.8).

Lemma 4.2.19.

Let SC n (u) = n-1 i=0 (u + i) be

the generating functions of the respective rows of the Stirling Cycle numbers (see [FS09, page 735]), which enumerate all permutations of size n that decompose into k cycles (i.e. Stirling numbers of the first kind). If we set tn (u) = n

k=1 t n,k u n-k , which is the rowreversed generating function, then

tn (u) = SC n (u) 1 + u = u n-1 ℓ=2 (u + ℓ).
The rowreversed numbers appear in EIS A136124 and EIS A143491.

From Lemma 4.2.19 we can get an explicit formula for the numbers tn,k

Theorem 4.2.20. Let d n,k be the number of trees with n leaves and depth of the leftmost leaf k. Let t n,k be the number of trees of size n with k internal nodes. Then,

d n,k = t n,n-k = tn,k = k i=0 (-1) k-i n i .
Proof. In Section 4.2.5.3, and corollary Corollary 4.2.14, we proved the relationship be tween the number of internal nodes and the depth of the leftmost leaf. The conclusion comes directly from Lemma 4.2.19 by extracting coefficients. □

Proof of Theorem 4.2.18. One could apply Hwang's quasipowers theorem [START_REF] Hwang | On Convergence Rates in the Central Limit Theorems for Combinatorial Structures[END_REF], but since we have an explicit formula for t n (u), we decide instead to apply Lévy's continuity theorem directly. By Lemma 4.2.19, we have that, if

Xn = n -X n , for all ξ ∈ R, E e iξ• Xn-ln n √ ln n = 1 t n e -iξ √ ln n tn e iξ √ ln n = 2 n! e -iξ √ ln n+ iξ √ ln n • Γ n + e iξ √ ln n Γ 2 + e iξ √ ln n = 2 + o(1) Γ(3 + o(1)) n -1 + e iξ √ ln n n+e iξ √ ln n -1 2 e n e -iξ √ ln n e n-1+e iξ √ ln n n n+ 1 2 ,
where we have used Stirling's formula. Note that

lim n→∞ e 1-e iξ √ ln n = 1,
and

Γ(3) = 2, which implies that E e iξ• Xn-ln n √ ln n = (1 + o(1)) n -1 + e iξ √ ln n n+e iξ √ ln n -1 2 e -iξ √ ln n n n+ 1 /2 = (1 + o(1)) n e iξ √ ln n n 1 + O 1 n √ ln n n-1 2 +e iξ √ ln n e -iξ √ ln n = (1 + o(1)) n e iξ √ ln n e -iξ √ ln n n .
Since

n e iξ √ ln n = exp (ln n)e iξ √ ln n = exp (ln n) 1 + iξ √ ln n - ξ 2 2 ln n + O (ln n) -3 /2 = n →∞ ne iξ √ ln n-ξ 2 /2 ,
we get

E e iξ• Xn-ln n √ ln n = (1 + o(1)) e -ξ 2 /2 ,
which, by Lévy's continuity theorem concludes the proof; recall that Xn = n -X n . □

Quantitative characteristics of the root node

In this section, we study two parameters of the root of a typical increasing Schröder tree: the total number of its children (i.e. its arity), and the number of its children that are leaves.

We denote by A T n the arity of the root in a tree picked uniformly at random among all increas ingSchröder trees of size n, and by p n its probability generating function:

p n (u) = k≥0 P(A T n = k) u k .
Theorem 4.2.21. The degree of the root of a tree taken uniformly at random among all in creasing Schröder trees of size n when n tends to infinity has,

E[A n ] ∼ n→∞ 2 e -3, and V[A n ] ∼ n→∞ 14 e -4 e 2 -8.
The limiting law is a modified Poisson law. That is

p n (u) ∼ n→∞ 2 -2 u -1 e u -u + 2 u -1 .
And the second result is:

Theorem 4.2.22. Let L n be the number of children of the root that are leaves in a tree taken uniformly at random among all increasing Schröder trees of size n. Asymptotically when n tends to infinity,

E[L n ] = 2e n + Θ ( 1 /(n•n!)) and V[L n ] = 2e n + Θ ( 1 /n 2 ) .
Theorem 4.2.21 is a direct consequence of the following lemma.

Lemma 4.2.23. If t n,k is the number of increasing Schröder trees whose root has arity k, then

t 1,0 = 1, for all n ≥ 0, t n,1 = 0 and for all n ≥ 2, 2 ≤ k ≤ n -1, t n,k = k n! (k + 1)!
, and t n,n = 1.

Indeed, this lemma together with the fact that t n = n! /2, imply, for all 2 ≤ k < n,

P(A n = k) = 2k (k + 1)! .
From here, the mean and variance can be mechanically computed and we have as n tends to infinity

p n (u) ∼ n→∞ ∞ k=2 2 k (k + 1)! u k = ∞ k=2 (2 (k + 1) -2) (k + 1)! u k = 2 (e u -1 -u) -2 ∞ k=2 1 (k + 1)! u k = 2 (e u -1 -u) - 2 u ∞ k=2 u k+1 (k + 1)! = 2 (e u -1 -u) - 2 u e u -1 -u - u 2 2 = 2 -2 u -1 e u -u + 2 u -1
which concludes the proof of Theorem 4.2.21. 1, 0 0, 0, 1 0, 0, 2, 1 0, 0, 8, 3, 1 0, 0, 40, 15, 4, 1 0, 0, 240, 90, 24, 5, 1 0, 0, 1680, 630, 168, 35, 6, 1 Table 4.5: Values of t n,k , the number of sizen increasing Schröder trees of rootarity k, and

0 ≤ k ≤ n ∈ {1, . . . , 7}.
We refer the reader to Table 4.5 where the first values of t n,k are listed. The sequences (t n (u)) n≥1 and (t n,k ) 2≤k<n are related to the sequences EIS A094112 and EIS A092582, which enumerate some families of permutations (the former enumerates a family of permutations avoiding some pattern, the second permutations with initial cycle of a given size). Since the number of increasing Schröder trees of size n ≥ 2 is equal to n! /2, it is natural to expect some links between this family of trees and permutations that we have exhibited in Section 4.2.5.

Proof of Lemma 4.2.23. In this proof, the variable U marks the arity of the root (we re use the same notation as in the previous section, but with a different meaning; this is done to avoid having too many different notations). Using the evolution process, we get that

T = Z ∪ U × Z × Seq ≥1 (U × Z) ∪ Θ Z (T \ Z) × Seq ≥1 Z .
Indeed, the root is either a leaf (Z), or it is an internal node to which is attached a sequence of at least 2 leaves (U × Z × Θ Z (Z) × Seq ≥1 (U × Z)), or the tree is larger, i.e. the last step in the evolution process was replacing another leaf by an internal node to which is attached a sequence of nonmarked leaves (Θ Z (T \ Z) × Seq ≥1 Z). Using the symbolic method, we thus get that

T (z, u) = z + u 2 z 2 1 -uz + z 2 1 -z ∂ z (T (z, u) -z) .
In the same way as before, through a direct extraction

[z n ](1 -zu)(1 -z)T (z, u), we prove that t 1 (u) = 1, t 2 (u) = u 2
, and for all n > 2,

t n (u) = (u -1) u n-1 + n t n-1 (u). This implies t 1,0 = 1, t n,n = 1 for all n ≥ 1, t n,k = n t n-1,k for all 1 ≤ k ≤ n -1, and t n,k = 0 for all k > n, which concludes the proof. □
Proof of Theorem 4.2.22. The operators needed for the specification are not so classical so we prefer to directly write the differential equation satisfied by T (z, u) = n,k t n,k u k z n , where t n,k is the number of sizen increasing Schröder trees with k leaves attached to the root. Like in the proof of Lemma 4.2.23 at each step we must remove the tree reduced to the leaf, i.e. T \ Z. So let us introduce the function V (z, y) = T (z, y) -z. Thus we get

T (z, u) = z + u 2 z 2 1 -uz + z 2 1 -z ∂ u V (z, u) z + z 2 1 -z ∂ z V (z, u) - u z ∂ u V (z, u) . (4.9)
Indeed, by looking at the last step in the evolution process, four possibilities occur: the tree is reduced to a leaf z, i.e. the evolution process did not already start the tree contains a single internal node to which a sequence of at least 2 leaves is attached ( u 2 z 2 1-uz ), i.e. the evolution process has gone through one step only, in the last step of the evolution process, a leaf of the root has been replaced by an internal node to which a sequence of leaves is attached (

z 2 1-z ∂uV (z,u) z
), in fact, leaves attached to the root are marked as zu, the differentiation by u followed by the division by z gives the result, in the last step of the evolution process, a leaf that is not attached to the root has been selected and replaced by an internal node attached to at least two leaves:

z 2 1 -z ∂ z V (z, u) - u z ∂ u V (z, u) .
The second term removes the trees built in the first one where a leaf attached to the root has been selected. As an example, take a tree counted by z ℓ+r u r , thus containing ℓ leaves such that r of them are attached to the root. The operation gives (ℓ + r)z ℓ+r-1 u ru z r z ℓ+r u r-1 and thus gives exactly ℓz ℓ+r-1 u r .

After some simplifications and multiplications by

(1 -uz)(1 -z) we get (1 -uz)(1 -z) V (z, u) = u 2 z 2 (1 -z) + z 2 (1 -uz) ∂ z V (z, u) - u z ∂ u V (z, u) .
By extracting the coefficient of z n from the latter equation, we directly get that, for all n ≥ 4,

v n (u) = (n + u) v n-1 (u) -u(n -1) v n-2 (u) -(u -1) v ′ n-1 (u) + u(u -1) t ′ n-2 (u), and v 1 (u) = 0, v 2 (u) = u 2 and v 3 (u) = 2u 2 + u 3 .
To evaluate the average number of leaves attached to the root we must compute the limit of the ratio v ′ n (u)/v n (u) when n tends to infinity and evaluate it for u = 1. Differentiating the last equation we get

v ′ n (u) = v n-1 (u) + (n + u -1) v ′ n-1 (u) -(u -1) v ′′ n-1 (u) -(n -1) v n-2 (u) +(2u -(n -1)u -1) v ′ n-2 (u) + u(u -1) v ′′ n-2 (u). (4.10)
We thus define the sequence of the average values m n = v ′ n (1)/v n (1) and get for n ≥ 4

m n = m n-1 - n -2 n(n -1) m n-2 ,
with m 1 = 0, m 2 = 2 and m 3 = 5 /3. In order to analyse the sequence of real values m n we introduce an alternative sequence ℓ n such that ℓ n = n m n and thus we obtain for all n ≥ 1, we get, for all n ≥ 4,

ℓ n = 1 + 1 n -1 ℓ n-1 - 1 n -1 ℓ n-2 , (4.11)
and ℓ 1 = 0, ℓ 2 = 4 and ℓ 3 = 5. Finally, we set e n = 2 n-1 i=0 1/i! for all n ≥ 1, and prove by induction that, for all n ≥ 1, ℓ n = e n . First note that ℓ n = e n for n = {1, 2, 3}. Now take n ≥ 4 and assume that for all i < n we have ℓ i = e i . Using the fact that e n = e n-1 + 2 /(n-1)!, and Equation Equation (4.11), we have

ℓ n -e n = ℓ n-1 + 1 n -1 (ℓ n-1 -ℓ n-2 ) -e n = ℓ n-1 -e n-1 + 1 n -1 ℓ n-1 -ℓ n-2 - 2 (n -2)! = ℓ n-1 -e n-1 + 1 n -1 (ℓ n-1 -e n-1 -(ℓ n-2 -e n-2 )) = 0,
and thus ℓ n = e n , which concludes the induction argument. Since, by definition of e n , e n = 2e + Θ( 1 /n!), and since

e n = ℓ n = nm n = nE[L n ],
we get

m n = E[L n ] = 2 n n-1 i=0 1 i! = n→∞ 2e n + Θ ( 1 /(n•n!)) (4.12)
We now estimate the variance of L n ; to do so, we use the following identity (see, e.g., [FS09, p. 159]):

V[L n ] = E[L n (L n -1)] + E[L n ] -(E[L n ]) 2 (4.13) Since we already have estimated EL n , we only need to estimate E[L n (L n -1)] = v ′′ n (1)/v n (1
), which we denote by k n . Differentiating Section 4.2.7.2 we get that, for all n ≥ 4,

k n = k n-1 - 1 n k n-1 - n -3 n -1 k n-2 + 2 n m n-1 - n -2 n -1 m n-2 ,
where we recall that

m n = v ′ n (1)/v n (1) = E[L n ]. The first terms of (k n ) n≥1 are k 1 = 0, k 2 = 2 and k 3 = 2. For all n ≥ 1, set r n = n(n -1)k n .
Using Equation (4.12), we get that, for all n ≥ 4,

r n = r n-1 + 1 n -2 (r n-1 -r n-2 ) + 4 (n -2)! ,
with the initial values r 1 = 0, r 2 = 4 and r 3 = 12. Finally, for all n ≥ 3, we set

ẽn = 4 n-1 i=2 i -1 (i -2)! = 4 n-1 i=3 1 (i -3)! + 4 n-1 i=2 1 (i -2)! ,
and ẽ1 = 0, ẽ2 = 4. By induction, one can prove that, for all n ≥ 1, r n = ẽn , which implies

k n = E[L n (L n -1)] = r n n(n -1) = 4 n(n -1) n-1 i=3 1 (i -3)! + 4 n(n -1) n-1 i=2 1 (i -2)! = 8e n 2 + Θ ( 1 /n 3
) . Using this last estimate together with Equation (4.13) Equation (4.12), we get

VL n = n→∞ 2e n + Θ ( 1 /n 2 ) . □

Quantitative analysis of the number of nodes of a given arity

In this section, we prove asymptotic results for the number of nodes of a given arity in a typical increasing Schröder tree, starting with binary nodes:

Theorem 4.2.24. Let B n be the number of binary nodes (nodes of arity 2) in a tree taken uniformly at random among all increasing Schröder trees of size n. Asymptotically when n tends to infinity, we have

E[B n ] = n -2 ln n + 2γ - 7 3 + O( 1 /n), and V[B n ] = 4 ln n + 4 γ - 2 3 π 2 - 17 6 + O( 1 /n),
where γ is the EulerMascheroni constant. Moreover, in distribution when n → +∞,

B n -(n -2 ln n) 2 √ ln n → N (0, 1).
In other words, almost all internal nodes are binary, only a proportion of order 2 ln n/n of internal nodes are at least ternary. In the following theorem, we show that, on average, half of all nonbinary nodes are ternary.

Theorem 4.2.25. Let C (ℓ) n be the number of nodes of arity ℓ ≥ 3 in a tree taken uniformly at random among all increasing Schröder trees of size n. Asymptotically when n tends to infinity, we have

EC (3) n = ln n + O(1)
, and EC (4) n ∼ c ℓ , for some positive constants (c ℓ ) ℓ≥4 ; and, for ℓ = 4, we have c 4 = 23 /90.

Proof of Theorem 4.2.24. Here the specification is easy to exhibit, and its translation via the symbolic method is direct (in this proof, U marks the binary nodes):

T = Z ∪ Θ Z T × U × Z ∪ Seq ≥2 Z ; T (z, u) = z + u z 2 + z 3 1 -z ∂ z T (z, u).
The method we use to analyse this differential equation is similar to [START_REF] Hua Huai Chern | Distribution of the number of con secutive records[END_REF]. For all n ≥ 3,

t n (u) = (1 + u(n -1))t n-1 (u) + (1 -u)(n -2)t n-2 (u), (4.14)
with t 1 (u) = 1, t 2 (u) = u, and t 3 (u) = 1 + u 2 . Once again (see also Lemma 4.2.19) we take the rowreversed generating function tn (u) = n k=1 t n,k u n-k = t n t n ( 1 /u). From Equation (4.14), we get that, for all n ≥ 4,

tn (u) = n + u -1 n tn-1 (u) + u(u -1)(n -2) n(n -1) tn-2 (u), (4.15)
with t2 (u) = u and t3 (u) = (2u + u 3 )/3. Let us now define F (z, u) = n≥2 n tn (u)z n ; this generating function satisfies the following differential equation:

z (1 -z) ∂ z F (z, u) = 1 + uz -u(1 -u)z 2 F (z, u) + 2uz 2 (1 -u(1 -u)z) , with initial condition ∂ 2 z F (z, u)| z=0 = 4 u. This last equation gives F (z, u) = 2uz exp (u(1 -u)z) (1-z) -1-u 2 z 0 (1 -u(1 -u)t) (1-t) u 2 exp (-u(1 -u)t) dt. Let ϕ(z, u) = (1 -u(1 -u)z) (1 -z) u 2 e -u(1-u)z
; with this definition, we get

F (z, u) = (1 -z) -1-u 2 (g(u) + E(z, u)) ,
where,

g(u) = 2ue u(1-u) (1 -z) -1-u 2 1 0 ϕ(t, u) dt
and,

E(z, u) = z e u(1-u)z -e u(1-u) 1 0 ϕ(t, u) dt -ze u(1-u)z 1 z ϕ(t, u) dt.
Therefore, asymptotically when n → +∞,

n tn (u) = g(u) Γ (1 + u 2 ) n u 2 (1 + O( 1 /n))
uniformly for all u such that |u -1| ≤ δ for some δ > 0. This thus falls into the scope of the quasipowers framework and Theorem IX.8 [FS09, p. 645] is applicable with B(u) = exp (2u) and β n = ln n, which concludes the proof (the mean and variance expansions can be calculated automatically using, e.g., a computer software such as Maple). □

Proof of Theorem 4.2.25. We first look at ternary nodes: the specification (with U mark ing ternary nodes) is given by

T = Z ∪ Θ Z T × Z ∪ U × Z 2 ∪ Seq ≥3 Z which implies T (z, u) = z + z 2 + u z 3 + z 4 1 -z ∂ z T (z, u),
and thus, for all n ≥ 4:

t n (u) = nt n-1 (u) + (u -1)(n -2)t n-2 (u) + (n -3)(1 -u)t n-3 (u),
with t 1 (u) = 1 and t 2 (u) = 1. Differentiating this equation, we get that, for all n ≥ 5,

t ′ n (u)| u=1 = nt ′ n-1 (u)| u=1 + (n -2)(n -2)! 2 - (n -3)(n -3)! 2 .
This thus implies that, for all n ≥ 5,

E[C (3) n ] = E[C (3) n-1 ]+ (n -2) n(n -1) - (n -3) n(n -1)(n -2) = 10 24 + n ℓ=5 (k -2) k(k -1) - (k -3) k(k -1)(k -2)
.

since E[C (3) 4 ] = 10 /24. Using again the fact that n k=1

1 k = ln n + O(1) and n k=1 1 k 2 = O(1)
when n tends to infinity, we get

E[C (3) n ] = ln n + O(1), as claimed.
We reason similarly for ℓ = 4 (U now marks nodes of arity 4):

T = Z ∪ Θ Z T × Z ∪ Z 2 ∪ U × Z 3 ∪ Seq ≥4 Z ; T (z, u) = z + z 2 + z 3 + u z 4 + z 5 1 -z ∂ z T (z, u).
Thus, for all n ≥ 4, we have

t n (u) = nt n-1 (u) + (u -1)(n -3)t n-3 (u) + (n -4)(1 -u)t n-4 (u),
with t 1 (u) = 1 and t 2 (u) = 1, which, after differentiating at u = 1 and dividing by t n gives

E[C (4) n ] = E[C (4) n-1 ] + (n -3) n(n -1)(n -2) - (n -4) n(n -1)(n -2)(n -3) ,
with E[C (4) 5 ] = 12 /120. A simple look to this recurrence shows that it converges to a constant since it is a modified geometric sum. Solving the recurrence we obtain,

E[C (4) n ] = 23 90 - 13 6n - 1 6 (n -2) + 4 3 (n -1)
, which proves the statement for ℓ = 4.

Let us now treat the general ℓ ≥ 5 case (U now marks nodes of arity ℓ):

T = Z ∪ Θ Z T × ∪ ℓ-2 i=1 Z ℓ ∪ U × Z ℓ-1 ∪ Seq ≥4 Z ; T (z, u) = z + ℓ-1 i=2 z i + u z ℓ + z ℓ+1 1 -z ∂ z T (z, u).
This implies that, for all n ≥ ℓ:

t n (u) = nt n-1 (u) + (u -1)(n -ℓ + 1)t n-ℓ+1 (u) + (n -ℓ)(1 -u)t n-ℓ (u),
with t n (u) = 1 for all n < ℓ. Therefore, we get

E[C (ℓ) n ] = E[C (ℓ) n-1 ] + (n -ℓ + 1) n(n -1) • • • (n -ℓ + 2) - (n -ℓ) n(n -1) • • • (n -ℓ + 1) = E[C (ℓ) ℓ ] + n k=ℓ+1 (k -ℓ + 1) k(k -1) • • • (k -ℓ + 2) - (k -ℓ) k(k -1) • • • (k -ℓ + 1)
.

Since (k -ℓ + 1) k(k -1) • • • (k -ℓ + 2) - (k -ℓ) k(k -1) • • • (k -ℓ + 1) ∼ k→∞ 1 k ℓ-2 , which implies that, for all ℓ ≥ 4, lim n→∞ E[C (ℓ) n ] = E[C (ℓ) ℓ ] + ∞ k=ℓ+1 (k -ℓ + 1) k • • • (k -ℓ + 2) - (k -ℓ) k • • • (k -ℓ + 1) < +∞.
All these recurrences converges to constants that get smaller and smaller when ℓ increases. □

Note that the constants c ℓ are computable by solving the simple recurrences for each case; Figure 4.8 gives a summary of the typical number of nodes for the smallest arities. 2ary 3ary 4ary 5ary 6ary 7ary 8ary 9ary 10ary

EC (ℓ)

Typical depth of the leftmost leaf

In this section, we prove a central limit theorem for the depth of the leftmost leaf in a typical increasing Schröder tree; this gives us a lower bound for the height of a typical increasing Schröder tree. Lemma 4.2.26. Let Y n be the depth of the leftmost leaf in a tree taken uniformly at random among all increasing Schröder trees of size n. For all n ≥ 1, Y n = n -X n , where X n is the number of internal nodes in a typical increasing Schröder tree of size n (see Theorem 4.2.18), and thus, we have convergence in distribution when n tends to infinity:

Y n -ln n √ ln n d -→ N (0, 1).
Note that the choice of the leftmost leaf is arbitrary, although it has the advantage that the specification is straightforward. Table 4.6 exhibits the first values of (t n,k ).

Proof. We directly look at the differential equation satisfied by T (z, u), where u marks the internal nodes that belong to the leftmost path (between the root and the leftmost leaf).

T (z, u) = z + ∂ z T (z, u) z z 3 1 -z + T (z, u) uz 1 -z .
Indeed, the tree is either a unique leaf (which is thus also the leftmost leaf) at height zero (z), or at the last step of the evolution process, we have selected a leaf that is not the leftmost one and replaced it by a sequence of at least two leaves (∂ z (T (z, u)/z) z 3 1-z ), or we have replaced the leftmost leaf by an internal node and a sequence of at least two leaves (T (z, u) uz 1-z ). We rewrite this equation as

(1 -uz)T (z, u) = z(1 -z) + z 2 ∂ z T (z, u),
and thus, identifying the coefficient of z n on both sides gives that t n (u) = (u + n -1)t n-1 (u) (∀n ≥ 3), t 1 (u) = 1, and t 2 (u) = u. This implies that, for all n ≥ 3,

t n (u) = u n-1 i=2 (u + i) = 1 1 + u SC n (u),
where SC n (u), defined in Lemma 4.

These numbers appear in EIS A136124 and EIS A143491.

As we have seen before these numbers are the row reversed of the triangle of internal nodes. We have exhibited these links in Section 4.2.5.2 and with Corollary 4.2.14.

Analysis of the height of a typical increasing Schröder tree

It is possible to define an incremental process (in the sense of Section 3.5.5) to generate uniformly randomly a tree of increasing Schröder tree using the recurrence Equation (4.4). Therefore we can build a tree using successive insertions in the tree to add exactly one leaf at each iteration step based on a fixed probability distribution.

This probabilistic construction used in our uniform sampler that is given in Chapter 7 and Algorithm 1 allows us to prove the following result. Theorem 4.2.27. For all n ≥ 2, let H n be the height of a tree taken uniformly at random among all increasing Schröder trees of size n. Asymptotically when n tends to infinity,

P H n ln n ∈ [1 -ε, γ + ε] → 1, where γ = inf{c > 0 : c -1 + c ln(2/c) < 0} ≈ 4.311. This implies, in particular that E[H n ] = Θ(ln n) when n tends to infinity.
Definition 4.2.28. Given a sequence of integers d = (d i ) i≥1 , we define the random dary tree (τ (d) n ) n≥0 recursively as follows: τ (d) 0 is reduced to its root, given τ (d) ℓ-1 , we build τ (d) ℓ as the tree obtained by picking a leaf uniformly at random in τ (d) ℓ-1 and replacing it by a node to which d ℓ leaves are attached. Lemma 4.2.29. Let D = (D ℓ ) ℓ≥1 be the sequence of integervalued random variables de fined by:

• P(D 1 = k) = 2k/(k + 1)! for all k ≥ 2, and • if, for all ℓ ≥ 1, we denote by Dℓ = ℓ i=1 D i , then, P(D ℓ+1 = k|D 1 , . . . , D ℓ ) = ( Dℓ + 1)!(k -1 + Dℓ ) (k + Dℓ )! .
Then, for all ℓ ≥ 1, the tree τ (D) ℓ given its size is equal in distribution to an increasing Schröder tree taken uniformly at random among all trees of that size.

Proof. This follows from Theorem 7.2.1. Indeed, note that the degree of the last inserted internal node increases as long as the random integer k = k i (see line 7 of Algorithm 1) drawn in the ith loop is not equal to i. Note that this happens with probability 1 /i. For example, the degree of the root starts at 2, we draw the first integer k 3 ∈ {1, 2, 3} and if k 3 = 3, then we can conclude that D 1 = 2, otherwise, we know that D 1 ≥ 3 and we need to look at k 4 . Therefore, P(D 1 = 2) = 2 /3, as claimed, and P(D 1 ≥ 3) = 1 /3. Iterating this argument, we get that

P(D 1 ≥ k) = k i=3 P(k i = i) = k i=3 1 i = 2 k! ,
and thus

P(D 1 = k) = P(D 1 ≥ k) -P(D 1 ≥ k + 1) = 2 k! - 2 (k + 1)! = 2k (k + 1)! , as claimed.
By definition of our sampling algorithm, we know that the (ℓ + 1)th internal node is inserted into the tree during the loop number i = D 1 + • • • + D ℓ + 1 = Dℓ + 1. Therefore, we get

P(D ℓ+1 = 2|D 1 , . . . , D ℓ ) = P(k i+1 = i + 1) = 1 - 1 Dℓ + 2
, as claimed, and

P(D ℓ+1 ≥ 3|D 1 , . . . , D ℓ ) = 1 Dℓ + 2 .
Iterating this argument, we get that, for all k ≥ 3,

P(D ℓ+1 ≥ k|D 1 , . . . , D ℓ ) = Dℓ +k-1 j= Dℓ +2 P(k j = j) = Dℓ +k-1 j= Dℓ +2 1 j = ( Dℓ + 1)! ( Dℓ + k -1)! .
This concludes the proof because

P(D ℓ+1 = k|D 1 , . . . , D ℓ ) = P(D ℓ+1 ≥ k|D 1 , . . . , D ℓ ) -P(D ℓ+1 ≥ k + 1|D 1 , . . . , D ℓ ) = ( Dℓ + 1)! ( Dℓ + k -1)! - ( Dℓ + 1)! ( Dℓ + k)! = ( Dℓ + 1)!( Dℓ + k -1) (k + Dℓ )! , as claimed. □
Proof of Theorem 4.2.27. For this proof, we use the fact that the increasing Schröder tree is equal in distribution to the random Dary tree (see Lemma 4.2.29). For the lower bound, we use Lemma 4.2.26 and the fact that, almost surely for all ℓ ≥ 1, H ℓ ≥ Y Dℓ +1 , where we recall that Y n is the depth of the leftmost leaf in an nleaf uniform increasing Schröder tree and Dℓ = ℓ i=1 D i . By Lemma 4.2.26, we have that, for all ε > 0,

P(H n ≤ (1 -ε) ln n) ≤ P(Y n ≤ (1 -ε) ln n) ≤ P Y n -ln n √ ln n ≤ -ε √ ln n → 0,
when n tends to infinity, which concludes the proof for the lower bound.

The proof for the upper bound is an adaptation of Devroye [START_REF] Devroye | On the Height of Random mary Search Trees[END_REF] in which the case of regular trees is treated (in regular trees, nodes have all the same degree they are also known as random kary trees). We denote by N 1 (n), . . . , N D 1 (n) the sizes of the subtrees of the root of τ (D) n ; a straightforward adaptation of [Dev90, Lemma 2] gives that, conditionally on D 1 ,

P((n -m + 2)S 1 ≥ x) ≤ P(N 1 (n) ≥ x) ≤ P(nS 1 ≥ x), (4.16)
where S 1 is the minimum of D 1 -1 i.

P D (H n ≥ k) ≤ D 1 i=1 P D (H N i (n) ≥ k -1) = D 1 P D (H N 1 (n) ≥ k -1) ≤ D 1 P D (H nS 1 ≥ k -1),
where we have used Equation (4.16) in the last inequality. We now iterate this identity: we denote by

I(n) = n k i=1 S(D i ),
where, for all d ≥ 2, S(d) is the minimum of d -1 i.i.d. random variables uniform on [0, 1]. We get

P D (H n ≥ k) ≤ k i=1 D i P D H I(n) ≥ 0 = k i=1 D i P D n k i=1 S(D i ) ≥ 1 ,
because a tree has height at least 1 as soon as it has at least one internal node. We now use Chebychev's inequality, which implies that, for all α ≥ 1,

P D (H n ≥ k) ≤ k i=1 D i n α E D k i=1 S(D i ) α = n α k i=1 Γ(D i + 1) D i -1 i=1 (α + i) .
See [Dev90, Equation (1)] for the last equality. For all α ≥ 1, and for all d ≥ 2, we have

ln Γ(d + 2) - d i=1 ln(α + i) = ln Γ(d + 1) - d-1 i=1 ln(α + i) + ln(d + 1) -ln(α + d) ≤ ln Γ(d + 1) - d-1 i=1 ln(α + i).
Therefore, since D i ≥ 2 almost surely for all i ≥ 1, we get

P D (H n ≥ k) ≤ n α k i=1 Γ(3) α + 1 = n α 2 α + 1 k .
This expression is minimised for α = k/ ln n -1; taking k = c ln n and α = c -1, we get that, for all c > 0,

P D (H n ≥ c ln n) ≤ n c-1+c ln(2/c) . If we take c > γ where γ = inf{c > 0 : c -1 + c ln(2/c) < 0}, then P D (H n ≥ c ln n) → n→∞ 0,
which concludes the proof for the upper bound. □

Strict monotonic Schröder trees

The model and its context

In this section we introduce and study a generalisation of the increasing Schröder trees, which we call strict monotonic Schröder trees. The main difference between the two models is that in strict monotonic Schröder trees, several internal nodes can be labelled by the same integer as long as they are not on the same ancestral line:

Definition 4.3.1. A strict monotonic Schröder tree is a classical Schröder tree structure whose internal nodes are labelled by the integers between 1 and ℓ (for some ℓ ≥ 1), in such a way that each integer in {1, . . . , ℓ} appears at least once in the tree and the sequence of labels in the path from the root to any leaf is (strictly) increasing.

In other words, it is a rooted labelled tree (only internal nodes are labelled) and the labelling is strict monotonic as in Definition 3.5.24. Remark that the trees are qualified by "strict" in the sense that the sequence of labels along the paths from the root to any leaf is strictly increasing. In Figure 4.9 we show two strict monotonic trees: the lefthandside one is of size 30 with 16 distinct labels, the righthandside one is of size 500 (sampled uniformly at random among all trees of size 500), with 495 internal nodes labelled with 372 distinct labels.

Because of the possible repetition of labels, this class of labelled trees cannot be directly specified using the classical analytic combinatorics operators for labelled structures. How ever, the following recursive construction allows us to specify the class of strict monotonic Schröder trees using operators for unlabelled structures. Every strict monotonic Schröder tree can be built as follows:

• Start with a single (unlabelled) leaf.

• At step each step ℓ (for ℓ ≥ 1), select a nonempty subset of leaves and replace each of them by an internal node with label ℓ attached to a sequence of at least two leaves.

Overview of the main results

As we have done before, we will start this section by solving the counting problem of this new family of trees in Section 4.3.3 and its asymptotics. We will then notice that the enumer ation problem corresponds to the of Ordered set partitions. So that in Section 4.

Enumeration and relationship with ordered Bell numbers

Using the iterative construction described above, we deduce the following specification for the class G of all strict monotonic Schröder trees:

G = Z ∪ G[Z → (Z ∪ Seq ≥2 Z)] \ G.
Note that again the labelling is transparent and does not appear directly in the specification.

The combinatorial meaning of this specification is the following: A tree of G is either a single leaf, or it is obtained by taking an already constructed tree in G, and replace each leaf by either a leaf (i.e. no change) or an internal node attached to a sequence of at least two leaves. Furthermore we omit the case where no leaf is changing (this is why we subtract the set G). Note that subtracting G is important, otherwise some integer values could be absent in the final tree. For example, if there is no change at step 2 but then the evolution continues, then 2 would not appear in the final tree but larger integers would appear as labels.

Using the symbolic method, we can translate this specification into a functional equation (with substitution) for the ordinary generating series:

G(z) = z + G z + z 2 1 -z -G(z) = z + G z 1 -z -G(z).
(4.17)

From this equation we extract the recurrence for the number g n of strict monotonic Schröder trees with n leaves: we get

g n = [z n ]G(z) = [z n ] z + G z + z 2 1 -z -G(z) = δ n,1 + [z n ] ℓ≥1 g ℓ z 1 -z ℓ -g n = δ n,1 -g n + ℓ≥1 g ℓ [z n-ℓ ] 1 1 -z ℓ .
We use Kronecker's notation: δ n,1 = 1 if n = 1 and 0 otherwise. The last coefficient extraction is similar to the integer composition (see [START_REF] Flajolet | Analytic Combinatorics[END_REF]Example I.3,p. 44]). This implies

g n =    1 if n = 1, n-1 ℓ=1 n-1 ℓ-1 g ℓ otherwise. (4.18)
The first coefficients are equal to a shift of the sequence of ordered Bell numbers (also called Fubini numbers or surjection numbers) referenced as EIS A000670: We recall that the nth ordered Bell number counts the number of ordered partitions of a set of size n, where an ordered partition of a set S is an ordered sequence of disjoint subsets of S whose union is equal to S. Ordered Bell numbers. This combinatorial class has been presented in Section 3.2. We recall here its specification

(g n ) n∈N = 0,
B = Seq (Set ≥1 Z) . (4.19)
Motivated by this remark, we define in Section Section 4.3.4.1 a bijection between the set of strict monotonic Schröder trees and the set of ordered partitions.

Following the approach developed by Pippenger in [START_REF] Pippenger | The Hypercube of Resistors, Asymptotic Expansions, and Preferential Ar rangements[END_REF] for ordered Bell numbers, we compute the exponential generating function of G, i.e. we apply the Borel transform on G(z).

But first let us recall some basic properties of the latter transform. The Borel transform, which B denotes, takes as an argument an ordinary generating function and gives as its image the corresponding exponential generating series. More precisely, for all realvalued sequence (a n ) n≥0 , we set

B n≥0 a n z n = n≥0 a n z n n! .
(i) B [zf (z)] = z 0 B(f )(t)dt and (ii) B [f ′ (z)] = (B[f (z)]) ′ + z(B[f (z)]) ′′ .
Proposition 4.3.3. The exponential generating function enumerating strict monotonic Schröder trees is

BG(z) = 1 2 (z -ln (2 -e z )) .
Proof. Using Equation (4.18) and the fact that g 0 = 1, we obtain

g n = δ n,1 + n-1 ℓ=1 n -1 ℓ -1 g ℓ .
Adding g n to both sides (multiplied by n-1 n-1 = 1 on the righthand side) gives

2g n = δ n,1 + n ℓ=1 n -1 ℓ -1 g ℓ .
This recurrence can be directly used to derive an equation for the exponential generating function of G:

2BG(z) = z + n≥1 n ℓ=1 n -1 ℓ -1 g ℓ z n n! ,
which is the classical equation satisfied by the ordered Bell numbers. Following the approach of [START_REF] Pippenger | The Hypercube of Resistors, Asymptotic Expansions, and Preferential Ar rangements[END_REF], we differentiate the equation with respect to z and get

2(BG(z)) ′ = 1 + n≥1 n ℓ=1 n -1 ℓ -1 g ℓ z n-1 (n -1)! .
Since the sum is the convolution of BG ′ (z) with exp(z), we get

(BG(z)) ′ = 1 2 -e z , which implies BG(z) = (z -ln (2 -e z ))
g n = n-1 ℓ=0 ℓ! n -1 ℓ ∼ n→∞ (n -1)! 2 (ln 2) n .

Bijections with ordered Bell numbers and relationship to internal nodes

Bijection with Ordered Bell numbers based on the runs

Since the number of strict monotonic Schröder trees of size n + 1 is equal to the number of ordered partitions of a set of size n, it is natural to try to find an explicit bijection between the two classes. In this section, we exhibit such a bijection.

To describe precisely the bijection we need the following definitions and notations. Recall that the the subsets of an ordered partitions are ordered but the elements inside each subset are not. In the following, we denote by p = (p 1 , p 2 , . . . , p ℓ ) the ordered partition of ordered subsets p 1 , . . . , p ℓ ; for example, ({3, 4}, {1, 5, 7}, {2, 6}) = ({2, 6}, {3, 4}, {1, 5, 7}). We denote by |p i | the size of the ith subset of p, and by |p| = ℓ i=1 p i its total size (i.e. the number of elements of ∪ ℓ i=1 p i ). Let a = {α 1 , α 2 , . . . , α r } (with r ≥ 1) be a subset of N; without loss of generality, we can assume that α 1 < α 2 < . . . < α r . A run of a is a maximal sequence

(α i , α i+1 , . . . , α j ) (1 ≤ i ≤ j ≤ r) of consecutive integers, i.e. (α i , α i+1 , . . . , α j ) = (α i , α i + 1, . . . , α i + j -i), α i-1 < α i -1 and α j+1 > α j + 1.
We define the function runs as the function that lists all the runs of a subset: for example, runs({3, 4}) = ({3, 4}) and runs({1, 3, 6, 7}) = ({1}, {3}, {6, 7}).

An ordered partition p = (p 1 , . . . , p ℓ ) is called incomplete if and only if ∪ ℓ i=1 p i = {1, 2, . . . , |p|}, e.g. the partition ({3, 4}, {1, 5, 7}) is incomplete due to the fact that ∪ ℓ i=1 p i = {1, 3, 4, 5, 7} = {1, 2, 3, 4, 5}. We define the normalization of a partition p (either incomplete or not), denoted by norm(p), as the ordered partition of {1, . . . , |p|} that keeps the relative order between the elements. For example, if p = ({3, 4}, {1, 5, 7}), then norm(p) = [{2, 3}, {1, 4, 5}].

We are now ready to describe our bijection: we first define the mapping M', which asso ciates a strict monotonic Schröder tree to each (possibly incomplete) ordered partition p = (p 1 , . . . , p ℓ ). Before starting we fix an arbitrary order for the leaves in the tree once and for all (for example, the one given by the postorder traversal of the tree). Then The tree M'(p) is the result of the following recursive procedure:

• At time zero, consider a tree with one internal node labelled by 1 to which are at tached

|p 1 | + 1 leaves. • At each time 2 ≤ i ≤ ℓ, we denote by p ′ 1 , . . . , p ′ i the ordered subsets of the renor malization of (p 1 , . . . , p i ), i.e. norm((p 1 , . . . , p i )) = (p ′ 1 , . . . , p ′ i ).
We denote by r 1 , . . . , r j the runs of p ′ i , i.e. runs(p ′ i ) = (r 1 , . . . , r j ); recall that each of r 1 , . . . , r j is a set of successive integers, possibly reduced to a singleton and iterate the following process: for k from 1 to j, take the leaf whose index is the first element of r k and replace it with an internal node with label k attached to |r k | + 1 leaves.

In Figure 4.11 we show how to construct M ′ (p) when p = ({3, 4}, {1, 5, 7}, {2, 6}). The resulting strict monotonic Schröder tree is of size 8. It is straightforward to check that M' is indeed a bijection.

G(Z) ∼ = Seq (Set ≥1 Z) ∼ = Set (Cyc (Set ≥1 Z)) .
To prove Proposition 4.3.12, we first exhibit the bijection S between the two latter sets. To do so, we first need to define better our notations: for example, since the order in a set is not relevant, i.e. {1, 3, 2} = {1, 2, 3} = {3, 2, 1}, we choose to always use the rep

resentation {i 1 , . . . , i m } such that i 1 < i 2 < • • • < i m .
Similarly, a cycle of sets, e.g. ({3, 4}, {1, 5, 6}, {2}), is invariant by cyclic permutation of its elements, i.e.

C = ({2, 4}, {1, 5, 6}, {3}) = ({1, 5, 6}, {3}, {2, 4}) = ({3}, {2, 4}, {1, 5, 6}).
In the following we choose to always use the representation such that the first element in the cycle contains 1: for our example, C = ({1, 5, 6}, {3}, {2, 4}). Finally, given a set of cycles, we choose the representation in which the cycles are in decreasing lexicographic order: to each cycle, we associate the string of integers obtained from reading its elements from left to right, for example to ({1, 5, 6}, {3}, {2, 4}), we associate 156324, and then order the cycles of sets according to this order. For example, the set {({1, 2, 4}, {3}), ({1, 3}, {2, 4, 5})} has 2 cycles, the list of the string of the first one is 1243, the string of the second one is 13245. Since 3 > 2, the canonical representation of this set of cycles is

{({1, 3}, {2, 4, 5}), ({1, 2, 4}, {3})}.
We are now ready to define the mapping S: take S a set of cycles of sets of integers (in its canonical representation), and we denote by X(S) the string of integers read from left to right in this canonical representation. E. g. if S = {({1, 3}, {2, 4, 5}), ({1, 2, 4}, {3})}, then X(S) = 132451243. Now define X(S) as a string of zeros of the same length as X(S), and c = 1, and for all i between 1 and the maximum integer in S, go through the string X(S) from right to left, i.e. for all j from length(X(S)) down to 1, if the digit in jth position is a 1, replace the jth digit in X(S) by c and increase c by 1. In our example, we eventually obtain X(S) = 264891375. We denote by s 1 , . . . , s m as the sizes of the sets of the cycles of S (in the order of the canonical representation); in our example, there are m = 4 sets in total (in the two cycles) and their sizes are 2, 3, 3, 1. Define S(S) as the ordered partition having m parts of respective sizes s 1 , . . . , s m and such that the elements of the first part are the first s 1 digits of X(S), the elements of the second part are the following s 2 digits of X(S) and so on. On our example, we get S(S) = ({2, 6}, {4, 8, 9}, {1, 3, 7}, {5}).

Lemma 4.3.5. The mapping S is a onetoone map from

Set(Cyc(Set ≥1 Z)) onto Seq(Set ≥1 Z)
Proof. Given an ordered partition, i.e. a sequence os sets S 1 , . . . , S m . Denote by k the first integer in S 1 (since we use the canonical representation, it is also the smallest integer in S 1 ). And denote by i j the integer such that S i j contains j, for all 1 ≤ j ≤ k -1. Note that

1 = i k < i k-1 < . . . < i 1 , and define C 1 = (S 1 , . . . , S i k-1 -1 ), C 2 = (S i k-1 , . . . , S i k-2 ), until C k = (S i 1 , . . . , S m
). And set S -1 ((S 1 , . . . , S m )) = {C 1 , . . . , C k }. One can check that this is indeed the inverse of S, which concludes the proof. □

Recall that, in Section 4.3.4.1, we have defined M ′ , a bijection from the set of ordered parti tions onto the set of strict monotonic Schröder trees. Therefore, M ′ • S is a bijection from the Set(Cyc(Set ≥1 Z)) onto the set of strict monotonic Schröder trees.

Lemma 4.3.6. If X ∈ Set (Cyc (Set ≥1 Z)), then the number of cycles of X is equal to the depth of the leftmost leaf of M ′ • S(X).

Proof. If X contains m cycles, then the integers 1, 2, . . . , m appear in reverse order and in different sets s m , s m-1 , . . . , s 1 of the ordered partition S(X): s i is the set containing the integer i for all 1 ≤ i ≤ m. Moreover s m is the first set in S(X) because the cycles are ordered in the canonical order. In the mapping M ′ , s m will form the root of the tree. Then s m-1 will create a node in the leftmost leaf, then s m-2 will create a node in the leftmost leaf and so on until s 1 is added to create a last node on the leftmost leaf. Thus the depth of the leftmost leaf is m. □

From increasing Schröder to strict monotonic Shröder

Another way of defining Ordered Bell numbers (or set partitions) defined in Section 3.2 is permutations with distinguished rises see [START_REF] Flajolet | Analytic Combinatorics[END_REF]p.209]. A rise in a permutation is a pair of consecutive elements in permutation that is increasing. See Section 3.1.2 for a formal definition. A cluster is a maixmal sequence of adjacent rises. Let C be the class of clusters. By definition then a cluster has at least two elements. We have,

C = Set ≥2 (Z).
3,4 , 6, 2, 5, 7, 8, 1 Figure 4.12: A permutation with distinguished runs. By definition not all the rises need to be marked

In the labelled universe there is exactly one way of having n integers in an increasing order. Finally, if we let PD the class of permutations with distinguished runs. Here we don't require that all runs be distinguished. We can see an example in Figure 4.12.

Finally a permutation with distinguished rises is a sequence of elements that are either distin guished runs or simple integers and thus can be specified as follows:

PD = Seq(Z + C) = Seq(Z + Set ≥2 (Z)).
Which translates to:

P D(z) = 1 1 -(z + (e z -1 -z)) = 1 2 -e z .
Therefore PD is isomorphic to B the class of set partitions.

A very simple relation between ordered Bell numbers (Ordered partitions) and runs in permu tations have been discovered by Velleman and Call in [START_REF] Daniel | Permutations and Combination Locks[END_REF]. In our case this relation can be seen as a direct link between Increasing Schröder trees and Strict monotonic Schröder trees. We recall that b n is the nth ordered Bell number:

b n = n-1 k=0 2 k n k . (4.20)
Where the numbers n k are the eulerian numbers which have been introduced in Section 3.1.2. These numbers count the number of npermutations having k descents and therefore they have n -1 -k rises.

Since Eulerian numbers are symmetric it is possible to rewrite Equation (4.20) as follows:

b n = n-1 k=0 2 n-k-1 n k . (4.21)
Equation (4.21) has an easy combinatorial explanation. The idea is that Eulerian numbers count permutations where all the rises are distinguished. To obtain an Ordered partition, all we have to do is to allow some rises not to be distinguished. We take an npermutation with k desents and puts dots between each rise. Therefore, since we have n -1 -k rises. We have

[{4}, {6}, {1}, {2}, {5}, {3}] [{4, 6}, {1}, {2}, {5}, {3}] [{4}, {6}, {1, 2}, {5}, {3}] [{4}, {6}, {1}, {2, 5}, {3}] [{4, 6}, {1, 2}, {5}, {3}] [{4, 6}, {1}, {2, 5}, {3}] [{4}, {6}, {1, 2, 5}, {3}] [{4, 6}, {1, 2, 5}, {3}]
Figure 4.13: The permutation (4, 6, 1, 2, 5, 3) has 3 rises, it gives 2 3 ordered partitions.

2 n-k-1 possibilities of choosing configurations of these dots by taking them or not. Then, for each configuration we merge the element where the dots have been taken and put them in the same of the final ordered partition. For example, the permutation (3, 1, 2) has one rise. We have two possibilities, putting the dot or not which give (3, 1 2) and (3, 1, 2 Proof. Each permutation σ ∈ HP has its mirror permutation mir(σ) ∈ MHP. The proof follows directly, since the mapping M is the mirror mapping of M. □

Finally, if we have an Increasing Schröder tree t which its corresponding permutation σ has k descents. Then, the tree corresponding to M(σ) has n -k -1 descents. This allows us to have a tree representation for all permutations (without restrictions). Each Increasing Schröder tree being the image of two separate permutations.

Corollary 4.3.8. As a conclusion, an Increasing Schröder tree t of size n which its corre sponding permutation σ = M -1 (t) has k descents, makes

2 n-k-1 + 2 k
strict monotonic Schröder trees of size n -1 (remember that Ordered Bell numbers are size shifted with strict monotonic Schröder trees).

Open question (Tree interpretation). It is an open question to give in interpretation in the tree world on the kind of Strict monotonic Schröder trees that are created with an Increasing

Schröder tree.

Analysis of typical parameters

In this section, we give information about the shape of a typical strict monotonic Schröder tree: more precisely, we prove limit theorems for the number of distinct labels, the number of internal nodes and the arity of the root in a tree picked uniformly at random among all strict monotonic Schröder trees of size n (i.e. with n leaves).

Quantitative analysis of the number of iteration steps

The main novelty of strict monotonic Schröder trees compared to increasing Schröder trees is that repetitions of labels are allowed: it is thus natural to ask how many repetitions there are in a typical strict monotonic Schröder tree. To answer this question, on can mark iterations by adding a new variable u in Equation (4.17):

G(z, u) = z + u G z 1 -z , u -u G(z, u),
which implies

g n,k =    1 if n = 1 and k = 0, n-1 ℓ=1 n-1 ℓ-1 g ℓ,k-1 otherwise, (4.22)
with n being the size and k the number of iteration steps (i.e. the number of distinct labels).

In Figure 4.14, we show the first values of (g n,k ) that are stored in EIS A019538.

1, 0, 1, 0, 1, 2, 0, 1, 6, 6, 0, 1, 14, 36, 24, 0, 1, 30, 150, 240, 120, 0, 1, 62, 540, 1560, 1800, 720 Theorem 4.3.9. The number of strict monotonic Schröder trees of size n with exactly k distinct labels is given by

g n,k = k! n + 1 k .
We denote by X G n the number of distinct labels in a tree picked uniformly at random among all strict monotonic Schröder trees of size n:

for all n ≥ 1, X G n is a random variable such that P(X G n = k) = g n,k / n k=1 g n,k
. Then, asymptotically when n tends to infinity,

X G n -n 2 ln 2 (1-ln 2)n (2 ln 2) 2 d -→ N (0, 1).
The analysis of the limiting distribution is classical in the quasipowers framework estab lished by Hwang [START_REF] Hwang | On Convergence Rates in the Central Limit Theorems for Combinatorial Structures[END_REF]; see [START_REF] Flajolet | Analytic Combinatorics[END_REF]p. 645,653] for details and applications.

Proof. Recall that g n,k = k! n+1 k is the number of ordered partitions of a set of size n having k nonempty parts. It is known (see, e.g. [Ben73, Example 3.4]) that, if K n is the number of parts in an ordered set partition of size n, then

K n -n 2 ln 2 (1-ln 2)n (2 ln 2) 2 d -→ N (0, 1),
in distribution. This concludes the proof since K n has the same distribution as X G n for all n ≥ 1. □

Quantitative analysis of the number of internal nodes

In this model the number of internal nodes is different from the number of distinct labels that appear in the tree: this is because one integer can label several internal nodes. It is thus natural to ask how many internal nodes a typical strict monotonic Schröder trees of size n (i.e. with n leaves) has. The specification marking both leaves (with variable z) and internal nodes (with variable u) is

G(z, u) = z + G z + uz 2 1 -z , u -G(z, u). (4.23)
We recall that the substitution z → z + uz 2 1-z means that at each iteration each leaf can be left as it is (z → z) or expanded into an internal node attached to an arbitrary number of leaves (z → z 2 1-z ). A new internal, marked with the variable u, is created only in the second case.

. , 7}

For all 1 ≤ n and 1 ≤ k ≤ n -1, we denote by g n,k the number strict monotonic Schröder trees with n leaves and k internal nodes: Figure 4.15 shows the values of (g n,k ) 1≤k≤n-1 for n ∈ {1, 2, . . . , 7}. This triangle of integers is not yet stored in OEIS. However, its diagonal is equal to EIS A171792. In fact in the diagonal the numbers corresponds to the number of strict monotonic trees with n leaves and n -1 internal nodes, i.e. binary strict monotonic trees: this class of trees is studied in [START_REF] Bodini | On the number of increasing trees with label repetitions[END_REF].

Theorem 4.3.10. If we denote by I G n the (random) number of internal nodes in a tree picked uniformly at random among all strict monotonic Schröder trees of size n, then, asymptotically when n tends to infinity,

E[I G n ] = n→∞ n -(ln 2)(ln n) + π 2 12 -1 + (ln 2) -γ + ln 2 2 + ln ln 2 + o(1),
where γ is the EulerMascheroni constant.

Proof. For all n ≥ 1, we denote by h n = n-1 k=1 kg n,k , and let H be the ordinary generat ing function of (h n ) n≥1 ; we have

H(z) = ∂G(z, u) ∂u |u=1 .
The ratio h n /g n is equal to the expected number of internal nodes in a tree taken uniformly at random among all strict monotonic Schröder trees of size n; we are thus interested in the asymptotic behaviour of this ratio. Differentiating according to u and then substituting u by 1 in Equation (4.23) gives

H(z) = z 2 1 -z G ′ z 1 -z + H z 1 -z -H(z), (4.24) because ∂G(z, u) ∂z |u=1 = G ′ (z).
Since Equation (4.24) is similar to Equation (4.17), we apply the same method as in the proof of Proposition 4.3.3. We first derive

(BH(z)) ′ = 1 2 -e z B z 2 1 -z G ′ z 1 -z ′ .
Then using Equation (4.17) we deduce

B z 2 1 -z G ′ z 1 -z ′ = -z + z 2 2 + 2 B z 2 (1 -z)G ′ (z) ′ .
Furthermore since for any function F we have BzF (z) = z 0 BF (t)dt, we can simplify the equation into

(BH(z)) ′ = 1 2 -e z -z + z 2 2 + 2 z 0 BG ′ (t) dt -2 z 0 t 0 BG ′ (u) du dt .
Then, since

z 0 BG ′ (t)dt = z(BG(z)) ′ , we obtain (BH(z)) ′ = 1 2 -e z -z + z 2 2 + 2z(BG(z)) ′ -2 z 0 t(BG(t)) ′ dt = 1 2 -e z -z + z 2 2 + 2z 2 -e z -2 z 0 t 2 -e t dt = 1 /2 1 -e z /2 - π 2 12 + (ln 2) 2 2 -z 1 -ln(1 -e z /2) - 1 1 -e z /2 + Li 2 ( e z /2) ,
where Li 2 is the dilogarithm function, defined in [FS09, section VI.8.]. Using its asymptotic development at 1, we get

(BH(z)) ′ ∼ z→ln 2 1 2 ln 2 1 (1 -z/ ln 2) 2 - 1 2 ln 2 - π 2 24 ln 2 + ln 2 4 - ln 2 + ln ln 2 + ln (1 -z/ ln 2) 2 1 1 -z/ ln 2 - 1 2 - 7 ln 2 24 + π 2 48 + (ln 2) 2 8 + ln 2 ln ln 2 4 + O ln 1 1 -z/ ln 2 .
By using classical transfer theorems we obtain the result by extracting the (n -1)th coeffi cient of (BH(z)) ′ and dividing it by the nth coefficient of BG(z). □

Quantitative characteristics of the root node

In this section, we look at the arity of the root in a typical strict monotonic Schröder tree. We denote by A G n the arity of the root in a tree picked uniformly at random among all strict monotonic Schröder trees of size n, and by p n its probability generating function:

p n (u) = k≥0 P(A G n = k) u k .
Theorem 4.3.11. Asymptotically when n tends to infinity, A G n converges in distribution to a (shifted) zerotruncated Poisson law with parameter ln 2, i.e. for all u ≥ 0,

p n (u) → n→∞ ue u ln 2 -u. This implies that E[A G n ] → 2 ln 2+1 and V[A G n ] → -2 ln 2 (ln 2 -1)

when n tends to infinity

Proof. Thanks to the bijection of Section 4.3.4.1, we know that A G n is equal to the size of the first subset in an ordered partition picked uniformly at random among all ordered par titions of {1, . . . , n -1}. We denote by P the class of ordered partitions, 1 is the empty partition, Z is a singleton, and U marks the elements in the first subset. Here the specifica tion is defined in the context of labelled object, thus the associated generating functions are exponential (see [START_REF] Flajolet | Analytic Combinatorics[END_REF] for notation details):

P = 1 + Set ≥1 (UZ) ⋆ Seq(Set ≥1 Z).
Using the symbolic method for exponential generating function, we get

P (z, u) = 1 + e uz -1 2 -e z . Thus, if we set pn (u) = [z n ]P (z, u) [z n ]P (z, 1
) , for all n ≥ 0, then

[z n ]P (z, u) → n→∞ 1 2 (2 u -1) (ln 2) -n-1 .
This implies that, for all u ≥ 0, pn (u)

→ n→∞ 2 u -1.
Note that, by definition, pn (u) is the probability generating function of the size S n of the first subset in an ordered partition picked uniformly at random among all ordered partitions of {1, . . . , n -1}. Because of the bijection of Section 4.3.4.1, we know that A G n and S n-1 have the same distribution, implying that p n (u) = up n (u). This concludes the proof. □

Typical depth of the leftmost leaf

In this section, we prove a central limit theorem for the depth of the leftmost leaf in a typical strict monotonic Schröder tree:

Proposition 4.3.12. Let Y G n be the depth of the leftmost leaf in a tree taken uniformly at random among all increasing Schröder trees of size n. In distribution when n tends to infinity, we have

Y G n -ln n √ ln n d -→ N (0, 1).
The depth of the leftmost leaf is a lower bound for the height (since the height of a tree is the maximal depth of its leaves), and it has the advantage of being easier to specify and analyse than the height itself.

Recall that, in Section 4.2.7.4, we proved a similar central limit theorem for the depth of the leftmost leaf in a typical increasing Schröder tree.

In this section, the variable U marks the depth of the leftmost leaf. Using the evolution process, we get that

G(z, u) = z + G(y, u) y |y= z 1-z • z + uz 2 1 -z -G(z, u).
At each iteration step we start by chopping off the leftmost leaf (this corresponds to G(y, u)/y). Each of the other leaves either stays unchanged or is replaced by an internal node to which is attached a sequence of at least two leaves (this corresponds to substituting y by z/(1 -z)).

Finally we put back the leaf that has been chopped off and there we have 2 choices, either it stays unchanged (z) or it is replaced by an internal node with at least two leaves attached to it (z 2 /(1 -z)) in which case we multiply by u because the depth of the leftmost leaf has been increased by one.

Iterating this specification, we can calculate the first coefficients (see Table 4.8): they are equal to the first coefficients of a shifted version of EIS A129062. From the specification it is possible to derive a recurrence relation on the coefficients g n,k . We have g 1,0 = 1 and for all n ≥ 2 and 1 ≤ k ≤ n -1,

g n,k = n-1 ℓ=k+1 g ℓ,k n -2 ℓ -2 + n-1 ℓ=k g ℓ,k-1 n -2 ℓ -1 . (4.25)
This equation can be interpreted combinatorially using the evolution process (this reasoning is similar to the one leading to Equation (4.18).): At each iteration step, the depth of the leftmost leaf either stays unchanged or increases by 1. Therefore each tree in G n,k , the set of all strict monotonic Schröder trees whose leftmost leaf is at depth k, was, before the last iteration, either a tree of G ℓ,k of a tree of G ℓ,k-1 , for some ℓ < n. There are n-2 ℓ-1 to expand a tree of G ℓ,k-1 into a tree of G n,k in one iteration step: it is the number of ways to partition the n leaves of the sizen tree into ℓ parts of size at least one (when a part is of size 1, the corresponding leaf in the ℓsize node stays unchanged, otherwise, it becomes an internal node of outdegree the size of the part) in a way that the first part is of size at least 2 (the leftmost leaf becomes an internal node attached to two leaves). Similarly, there are n-2 ℓ-2 number of ways to expand a tree of G ℓ,k into a tree of G n,k in one iteration step: it is the number of ways partition the n leaves of the sizen tree into ℓ parts of size at least one such that the first part is of size 1.

Using the bijection exhibited in Section 4.3.4.2 we have the following Proposition 4.3.13. The exponential generating function of g n,k is

G(z, u) = n≥0 k≥0 g n,k u k z n n! = z 0 1 2 -e x u dx.
Proof. From the bijection, since the depth of the leftmost leaf is the number of cycles we get a direct specification by marking the cycles in the following

D = Set (U Cyc (Set ≥1 Z)) . Therefore D(z, u) = exp u ln 1 1-(exp(z-1))
. The number of trees of size n is the number of ordered Bell numbers of size n -1, so we integrate the last expression. □

The discussion above also leads to the following identity Proposition 4.3.14. For all n ≥ 2 and 1 ≤ k ≤ n -1,

g n,k = n-1 m=0 n -1 m m k .
Where n k are Stirling Cycle numbers (also known as Stirling numbers of the first kind). They count the number of cycles of size k in a permutation of size n.

Proof. The proof is a direct consequence of the previous construction. The number of trees of size n with leftmost leaf at depth k can be constructed by looking at set partitions of size n -1 elements into i subsets for all possible sizes of i which is counted by n-1 i then for each partition of size i we see how many cycles of size k we can build with it. □

Proof of Proposition 4.3.12. We can make the calculations on the bivariate generating function D(z, u) which enters the scope of quasipowers framework. Theorem IX.11 in [FS09, p. 669] is applicable. The exponent α(u) = u is analytic and α(1) = 1 and it satisfies α ′ (1) + α ′′ (1) = 1 = 0. So D(z, u) is asymptotically Gaussian with mean and vari ance as announced. Finally the shift that we have between the size of trees and the ordered partitions does not affect the first orders since ln (n + 1) ∼ ln n. □

Open question (Height of trees). Unfortunately, we were not able to analyse the height of this tree model even though we strongly believe that the mean height is c ln n for some positive constant c.

Strict monotonic general Schröder trees

In this section, we introduce a generalisation of the strict monotonic Schröder tree model of Section 4.3: the difference is that we allow internal nodes to have only one child (we call these nodes "unary" nodes). Since the size of a tree is the number of its leaves, allowing unary nodes without adding any other constraint would mean that there would be infinitely many trees of any given size n. To avoid this, we add the following constraint: at each growth step, at least one leaf is expanded as an internal node of arity greater or equal to 2.

The model and its enumeration

Definition 4.4.1. A strict monotonic general tree is a labelled tree that can be obtained by the following evolution process:

• Start with a single (unlabelled) leaf.

• At every step ℓ ≥ 1, select a nonempty subset of leaves, replace all of them by internal nodes labelled by ℓ, attach to at least one of them a sequence of at least two leaves, and attach to all others a unique leaf.

The two trees in Figure 4.16 are sampled uniformly among all strict monotonic general trees of respective sizes (i.e. number of leaves) 15 and 500. The lefthandside tree has 14 distinct nodelabels, i.e. it can be built in 14 steps using Definition 4.4.1. The righthandside tree is represented as a circular tree with stretched edges like in the righthandside of Figure 4.16.

Here the tree contains 500 leaves built with 499 iterations of the growth process. But in comparison with the increasing and strict monotonic Schröder trees drawn in the latter sec tions and containing respectively 492 and 495 internal nodes, this one contains 62494 internal nodes, most of them being unary nodes.

Overview of the main results

Once again we start with the counting problem of this family of trees. We find a recurrence on the trees, but this time we have no link with classical objects in combinatorics. In order to find an asymptotic enumeration we look for an approximating model of this family of trees in Surprisingly, this approximating model will turn out to to be simple enough to have a close formula for enumeration and its asymptotic behaviour corresponds to the one of the general model (up to a constant). The approximating has also a very simple correspondence with labelled graphs that we exhibit in Section 4.4.4. Then, we will turn to study some parameters of these trees in Section 4.4.5. Unfortunately, we were not able to find limiting laws for this new model due to the explosion of the enumeration problem. It was not possible for us to get closed form of generating functions. However, we do find the order of growth of the main interesting parameters that we summarised in Table 4.1.

We can specify strict monotonic general trees using the symbolic method; once again the labelling is transparent and does not appear in the specification (i.e. we use ordinary generat ing functions). In this section, we denote by F (z) the generating function of strict monotonic general trees and by F n the set of all strict monotonic general trees of size n; from Defini tion 4.4.1, we get

F (z) = z + F z + z 1 -z -F (2z). (4.26)
The combinatorial meaning of this specification is the following: A tree of is either a single leaf, or it is obtained by taking an already constructed tree, and replace each leaf by either a leaf (i.e. no change) or an internal node attached to a sequence of at least one leaf. Further more we omit the case where no leaf is replaced by an internal node with at least to children (this is encoded in the subtracting F (2z)).

From this equation we extract the recurrence for the number f n of strict monotonic general trees with n leaves. In fact we get

f n = [z n ]F (z) = [z n ] z + F z + z 1 -z -F (2z) = δ n,1 -2 n f n + [z n ] ℓ≥1 f ℓ z + z 1 -z ℓ = δ n,1 -2 n f n + ℓ≥1 f ℓ [z n-ℓ ] ℓ i=0 ℓ i 1 1 -z i , which implies that f n =    1 if n = 1, n-1 ℓ=1 min(n-ℓ,ℓ) i=1 ℓ i 2 ℓ-i n-ℓ-1 i-1 f ℓ for all n ≥ 2.
(4.27)

Figure 4.17: All strict monotonic generam Schröder trees of size 3

The combinatorial meaning of the inner sum is the following: starting with a tree of size ℓ we reach a tree of size n in one iteration by adding n -ℓ leaves. The index i in the inner sum stands for the number of leaves that are replaced by internal nodes or arity at least 2, by definition of the model (see Definition 4.4.1), we have 1 ≤ i ≤ min(n -ℓ, ℓ). There are ℓ i possible choices for the i leaves that are replaced by nodes of arity at least 2. Each of the remaining ℓ -i leaves is either kept unchanged or replaced by a unary node, which gives 2 ℓ-i possible choices. And finally, there are n-ℓ-1 ℓ-1 possible ways to distribute the (indistinguishable) n -ℓ additional leaves among the i new internal nodes so that each of the i nodes is given at least one additional leaf (it already has one leaf, which is the leaf that was replaced by an internal node). The first terms of the sequence are the following:

(f n ) n≥0 = (0, 1, 1, 5, 66, 2209, 180549, 35024830, 15769748262, 16187601252857, . . . ) .

The 5 trees of size 3 are depicted in Figure 4.17. Theorem 4.4.2. There exists a constant c such that the number f n of strict monotonic general trees of size n satisfies, asymptotically when n tends to infinity,

f n ∼ n→∞ c (n -1)! 2 (n-1)(n-2) 2
.

In the proof of the latter theorem we exhibit the following bounds 1.4991 < c < 1.8932. But through several experimentations we see that c < 3/2 but it is close to it. For instance when n = 1000 we get c ≈ 1.49913911. We postpone the proof to the next section to make use of the number of iteration steps.

Iteration steps and asymptotic enumeration of the trees

In this section, we look at the number of distinct internalnode labels that occur in a typical strict monotonic general tree, i.e. the number of iterations needed to build it:

Proposition 4.4.3. Let f n,k denotes the number of strict monotonic general trees of size n with k distinct nodelabels, then, for all n ≥ 1,

f n,n-1 = (n -1)! 2 (n-1)(n-2) 2
.

Note that the first terms are (f n,n-1 ) n≥0 = (0, 1, 1, 4, 48, 1536, 122880, 23592960, 10569646080, 10823317585920, . . . ) .

Proof. We use a new variable u to mark the number of iterations (i.e. the number of distinct nodelabels) in the iterative Equation (4.27). We get

F (z, u) = z + u F z + z 1 -z , u -u F (2z, u). (4.28)
Using either Equation (4.28) or a direct combinatorial argument, we get that, for all k ≥ n, f n,k = 0 and

f n,k =    1 if n = 1 and k = 0, n-1 ℓ=k min(n-ℓ,ℓ) i=1 ℓ i 2 ℓ-i n-ℓ-1 i-1 f ℓ,k-1 if 1 ≤ k < n.
In particular, for k = n -1, we get

f n,n-1 = (n -1) 2 n-2 f n-1,n-2 = f 1,0 n-1 j=1 j2 j-1 = (n -1)!2 ∑ n-2 j=0 j = (n -1)!2 (n-1)(n-2) 2
, because f 1,0 = 1. This concludes the proof.

Alternatively the recurrence of f n,n-1 can be obtained by extracting the coefficient [z n ] in the following functional equation

T (z) = z + z 2 T ′ (2z). □ Lemma 4.4.4. Both sequences (f n ) and (f n,n-1
) have the same asymptotic behaviour up to a multiplicative constant.

Proof. Let us start with the definition of a new sequence

g n = 1 if n = 1, f n /f n,n-1 otherwise.
This sequence g n satisfies the following recurrence:

g n = 1 if n = 1, n-1 ℓ=1 min(n-ℓ,ℓ) i=1 ℓ i 2 ℓ-i n-ℓ-1 i-1 g ℓ (ℓ-1)! 2 (ℓ-1)(ℓ-2)/2 (n-1)! 2 (n-1)(n-2)/2
otherwise.

When n > 1, extracting the term g n-1 from the sum we get

g n = g n-1 + n-2 ℓ=1 min(n-ℓ,ℓ) i=1 ℓ i 2 ℓ-i n -ℓ -1 i -1 g ℓ (ℓ -1)! 2 (ℓ-1)(ℓ-2)/2 (n -1)! 2 (n-1)(n-2)/2 .
Since all summands are nonnegative, this implies that g n ≥ g n-1 , and thus that this sequence is nondecreasing. To prove that this sequence converges, it only remains to prove that it is (upper)bounded.

Equation (4.27) implies that, for n ≥ 2,

f n ≤ n-1 ℓ=1 2 ℓ-1 min(n-ℓ,ℓ) i=1 ℓ i n -ℓ -1 i -1 f ℓ .
ChuVandermonde's identity states that, for all ℓ ≤ n,

min(n-ℓ,ℓ) i=1 ℓ i n -ℓ -1 i -1 = n -1 ℓ -1 .
This implies the following upperbound for f n :

f n ≤ n-1 ℓ=1 2 ℓ-1 n -1 ℓ -1 f ℓ = n-1 ℓ=1 2 n-ℓ-1 n -1 ℓ f n-ℓ
Using the same argument for g n we get

g n ≤ g n-1 + n-1 ℓ=2 2 (ℓ-1)(ℓ-2n+2)/2 ℓ! g n-ℓ .
We look at the exponent of 1 in the sum: For all ℓ ≥ 2 (as in the sum), we have 2ℓ ≥ ℓ+2, and thus 2n -ℓ -2 ≥ 2(n -ℓ). This implies that for all ℓ ≥ 2, (ℓ -1)(ℓ -2n + 2)/2 ≤ -(n -ℓ), and thus that

g n ≤ g n-1 + n-1 ℓ=2 1 ℓ! 2 n-ℓ g n-ℓ .
Since the sequence (g n ) n is nondecreasing, we obtain

g n ≤ g n-1 + g n-1 2 n n-1 ℓ=2 2 ℓ ℓ! ≤ g n-1 + g n-1 e 2 -3 2 n .
We set α = e 2 -3. Iterating the last inequality, we get that

g n ≤ g n-1 1 + α 2 n ≤ g 1 n i=2 1 + α 2 i = exp n i=2 ln 1 + α 2 i ,
because g 1 = 1. Note that, when i → +∞, we have ln(1+α2 -i ) ≤ α2 -i (because ln(1+x) ≤ x for all x ≥ 0). This implies that, for all n ≥ 1,

g n ≤ exp α ∞ i=2 2 -i = exp( α /2).
In other words, the sequence (g n ) n is bounded. Since it is also nondecreasing, it converges to a finite limit c, which is also nonzero since g n ≥ g 1 = 0 for all n ≥ 1. This is equivalent to f n ∼ cf n,n-1 when n → +∞ as claimed. To get a lower wound on c, note that, for all

n ≥ 1, c ≥ g n ≥ g 9 = f 9 /f 9,
g n ≤ g n-1 + g n-1
e 2 -3 2 n . We set α = e 2 -3 and define two other sequences as

ḡn = 1 if n = 1 or n = 2, ḡn-1 + α 2 n ḡn-2 otherwise,
and ḡn = 1 if n = 1 or n = 2, ḡn-1 + 1 n(n+1) ḡn-2 otherwise. Due to the two first terms and the recurrence equation we have for all positive n, g n ≤ ḡn ≤ ḡn . By induction we prove a new expression for ḡn :

ḡn = ḡn if n ≤ 3, ḡn-1 + 2 (n+1)! a n-1 otherwise,
with the sequence (a n ) n such that a 1 = 0, a 2 = 1 and for n ≥ 3,

a n = na n-1 + a n-2 .
This sequence (a n ) is a shifted version of EIS A058307. We can either follow the work of Janson [START_REF] Janson | A divertent generating function that can be summed and analysed analytically[END_REF] to study it, but we need less details than him so we describe here an easier approach. We define a new sequence as b n = a n /n!. We easily prove that

b n = b n-1 + b n-2 /(n(n -1)) with b 1 = 0 and b 2 = 1/2.
Using the later recurrence, we obtain an equation satisfied by its generating function

B(z) = n>0 b n z n : B(z) = z 2 2 + zB(z) + u t=0 z t=0 B(u)du.
we thus obtain (z -1)B ′′ (z) + 2B ′ (z) + B(z) + 1 = 0, with B(0) = 0 and B ′ (0) = 0. By dividing the equation by i √ 1 -z and then by a change of variable: u := 2i √ 1 -z, we recognise the classical differential equation satisfied by Bessel functions [START_REF] Carl | Advanced Mathematical Methods for Scientists and Engi neers: Asymptotic methods and perturbation theory[END_REF]. We thus derive

B(z) = -1 + 1 √ 1 -z α J 1 (2i √ 1 -z) + β Y 1 (2i √ 1 -z) ,
where J • (•) and Y • (•) are the Bessel functions and α and β are two complex constants deter mined with the initial conditions:

α = Y 1 (2i) -iY 0 (2i) J 1 (2)Y 0 (2i) + iJ 0 (2)Y 1 (2i) , β = - J 1 (2) -iJ 0 (2) J 1 (2)Y 0 (2i) + iJ 0 (2)Y 1 (2i)
.

We are interested in the asymptotic behaviour of b n . The dominant singularity of B(z) is at z = 1 and there

B(z) ∼ z→1 - β iπ 1 1 -z .
We thus deduce that b n tends to -β/(iπ) ≈ 0.68894. Since the sequence ḡn satisfies ḡn = ḡn-1 + 2 n(n+1) b n-1 . We deduce that the increasing sequence ( ḡn ) admits a finite limit. Hence it is also the case for the increasing sequence (g n ). Finally, Proposition 4.4.3 allows to conclude for the existence of the constant c. Furthermore we get

c < ḡ3 + ℓ≥4 2 ℓ(ℓ + 1) • lim n→∞ b n ≈ 1.8932. □
This result means that asymptotically a constant fraction of the strict monotonic general trees of size n are built in (n -1) steps. For these trees, at each step of construction only one single leaf expands into a binary node. All other leaves either become a unary node or stay unchanged, meaning that on average half of the leaves will expand into unary node with one leaf expanding into a binary node. The number of internal nodes of these trees then grow like n 2 /4.

Correspondence with labelled graphs

In Section 4.4.3 we defined f n,k the number of strict monotonic general trees of size n that have k distinct nodelabels then we have shown that, for all n ≥ 1,

f n,n-1 = (n -1)! 2 (n-1)(n-2) 2
.

The factor 2 (n-1)(n-2)/2 = 2 ( n-1 2 ) in graphs of (n -1) vertices counts the different combina tions of edges (not directed) between vertices. The factor (n -1)! accounts for all possible permutations of vertices. We will denote S n to be the trees that f n,n-1 counts and exhibit a bi jection between strict monotonic general trees of S = ∪ n≥1 S n with a class of labelled graphs with n -1 vertices defined in the following. Let us define the subclass of strict monotonic general trees S = ∪ n≥1 S n .

For all n ≥ 1, we denote by G n the set of all labelled graphs (V, ℓ, E) such that V = {1, . . . , n}, E ⊆ {{i, j} : i = j ∈ V } and ℓ = (ℓ 1 , . . . , ℓ n ) is a permutation of V (see Figure 4.18 for an example). We set G = ∪ ∞ n=0 G n . Choosing a graph in G n is equivalent to (1) choosing ℓ (there are n! choices) and (2) for each of the n 2 possible edges, choose whether it belongs to E or not (there are 2 ( n 2 ) choices in total). In total, we thus get that We recall the definitions used in Section 3.1. A sizen permutation σ is denoted by (σ 1 , . . . , σ n ), and σ i is its ith element (the image of i), while σ -1 (k) is the preimage of k (the position of k in the permutation).

|G n | = n! 2 ( n 2 ) .
Another important bijection that we will use is the bijection between binary increasing trees and permutations, see [START_REF] Flajolet | Analytic Combinatorics[END_REF]page143].

We define M ′′ : S → G recursively on the size of the tree it takes as an input: first, if t is the tree of size 1 (which contains only one leaf) or the tree of size 2 (one internal node attached to two leaves), then we set M ′′ (t) to be the graph ({1}, (1), ∅) (the graph with one vertex labelled 1 and no edge). Now assume we have defined M ′′ on ∪ n-1 ℓ=1 S ℓ , and consider a tree t ∈ S n . By Definition 4.4.1 and since t ∈ S n , then there exists a unique binary node in t labelled by n -1, and this node is attached to two leaves. Consider t the tree obtained when removing all internal nodes labelled by n -1 (and all the leaves attached to them) from t and replacing them by leaves. Denote by v n the position (in, e.g., depthfirst order) of the leaf of t that previously contained the binary node labelled by n -1 in t. Denote by u 1 , . . . , u m the positions or the leaves of t that previously contained unary nodes labelled by n -1 in t. We set M ′′ ( t) = ({1, . . . , n -1}, l, Ê) and define M ′′ (t) = ({1, . . . , n}, ℓ, E) where [START_REF] Nelson | Random graphs[END_REF], and has been since then extensively studied in the probability and combinatorics literature (see, for example, the books [START_REF] Bollobás | Random Graphs[END_REF] and [START_REF] Durrett | Random Graph Dynamics[END_REF] for introduc tory surveys).

ℓ i =      n if i = v n li if li < v n li-1 if li ≥ v n , E = Ê ∪{{ l-1 (u j ), n} : 1 ≤ j ≤ m}. An

Analysis of typical parameters

Quantitative analysis of the number of internal nodes

Theorem 4.4.6. Let I F n be the number of internal nodes in a tree taken uniformly at random among all strict monotonic general trees of size n. Then for all n ≥ 1, we have

(n -1)(n + 2) 6 ≤ E[I F n ] ≤ (n -1)n 2 .
To prove this theorem, we use the following proposition.

Proposition 4.4.7. Let us denote by s n,k the number of strict monotonic general trees of size n that have n -1 distinct nodelabels and k internal nodes. For all n ≥ 1 and k ≥ 0,

s n,k = (n -1)! (n -1)(n -2)/2 k -(n -1) ,
and thus, if I S n is the number of internal nodes in a tree taken uniformly at random among all strict monotonic general trees of size n that have n -1 distinct label nodes, then, for all n ≥ 1,

E[I S n ] = (n -1)(n + 2) 4 .
Proof. Let us prove the formula for s n,k by induction. For n = 1, k can only be 0 thus

s 1,0 = 1 = 0! 0 0 . We suppose that s m,k = (m-1)! (m-1)(m-2)/2 k-(m-1) holds for m = n-1 and k ∈ {n-1, . . . , (n- 2)(n -3)/2}.
Then, we are interested in the value of s n,k :

s n,k = k-(n-1) s=0 (n -2)! (n -2)(n -3)/2 s -(n -2) n -1 k -s -1 (k -s -1). Let k ′ = k -(n -1) and s ′ = s -(n -2).
Replacing k ′ and s ′ in the equation gives,

sn,k ′ = k ′ s ′ =0 (n -2)! (n -2)(n -3)/2 s ′ n -1 k ′ -s ′ + 1 (k ′ -s ′ + 1) = (n -1)! k ′ s ′ =0 (n -2)(n -3)/2 s ′ n -2 k ′ -s ′ .
Using ChuVandermonde identity, we finally obtain

s n,k = (n -1)! (n -1)(n -2)/2 k -(n -1) .
We now can compute the average number of internal nodes of S n :

E n [I S n ] = n(n-1)/2 k=n-1 k(n -1)! (n-1)(n-2)/2 k-(n-1) (n -1)! 2 (n-1)(n-2)/2 .
Again we reverse the sum:

k ′ = k -(n -1), E[I S n ] = (n-1)(n-2)/2 k ′ =0 (k ′ + (n -1))(n -1)! (n-1)(n-2)/2 k ′ (n -1)! 2 (n-1)(n-2)/2 = (n-1)(n-2)/2 k ′ =0 k ′ (n-1)(n-2)/2 k ′ + (n -1) (n-1)(n-2)/2 k ′ =0 (n-1)(n-2)/2 k ′ 2 (n-1)(n-2)/2 = (n -1)(n -2) 4 + (n -1) = (n -1)(n + 2) 4 .

□

We are now ready to prove the main theorem of this section.

Proof of Theorem 4.4.6. Note that the number of internal nodes of a strict monotonic general tree of size n belongs to {1, . . . , n(n -1)/2}. The upper bound follows from the fact that, at the ℓth iteration in Definition 4.4.1, a maximum of ℓ internal nodes is added to the tree, and n ℓ=1 ℓ = n(n -1)/2. In particular, we thus have that, almost surely for all n ≥ 1,

I F n ≤ n(n -1)/2, and thus E[I F n ] = O(n 2
). For the lower bound, we denote by S n the set of strict monotonic general trees of size n that have n -1 distinct nodelabels. Moreover, we denote by t n a tree taken uniformly at random in F n , and by I F n its number of internal nodes. We have, for all n ≥ 1,

E[I F n ] = E[I F n | t n ∈ S n ] • P(t n ∈ S n ) + E[I F n | t n / ∈ S n ] • P(t n / ∈ S n ) ≥ E[I F n | t n ∈ S n ] • P(t n ∈ S n ) = E[I S n ] • f n,n-1 f n ,
where we have used conditional expectations and the fact that conditionally on being in S n , t n is uniformly distributed in this set, and, in particular,

E[I F n | t n ∈ S n ] = EI S n .
Using Proposition 4.4.7 and the upper bound of Proposition 4.4.3, we thus get

E[I F n ] ≥ 2 3 (n -1)(n + 2) 4 ,
which concludes the proof. □

Quantitative analysis of the number of distinct labels

Theorem 4.4.8. Let X F n denotes the number of distinct internalnode labels (or construction steps) is a tree taken uniformly at random among all strict monotonic general trees of size n, then for all n ≥ 1,

2 3 (n -1) ≤ E[X F n ] ≤ n -1.
Proof. First note that since at every construction step in Definition 4.4.1 we add at least one leaf in the tree, then after ℓ construction steps, there are exactly ℓ distinct labels and at least ℓ + 1 leaves in the tree. Therefore, n ≥ X F n + 1 almost surely for all n ≥ 1, which implies in particular that E[X n ] ≤ n -1, as claimed.

For the lower bound, we reason as in the proof of Theorem 4.4.6, and using the same nota tions:

E[X F n ] ≥ E[X F n | t n ∈ S n ] • P(t n ∈ S n ) = (n -1) f n,n-1 f n , because E[X F n | t n ∈ S n ]
= n -1 by definition of S n (being the set of all strict mono tonic general trees of size n that have n -1 distinct nodelabels). Using the upper bound of Proposition 4.4.3 gives that E[X F n ] ≥ 2(n -1)/3, which concludes the proof. □

Quantitative analysis of the height of the trees

Theorem 4.4.9. Let H F n denotes the height of a tree taken uniformly at random in F n , the set of all strict monotonic general trees of size n. Then we have, for all n ≥ 0,

n 3 ≤ E[H F n ] ≤ n -1.
To prove this theorem, we first prove the following:

Proposition 4.4.10. Let us denote by H S n the height of a tree taken uniformly at random in S n , the set of all strict monotonic general trees of size n that have n -1 distinct labels. Then we have, for all n ≥ 0,

n 2 ≤ E[H S n ] ≤ n -1.
Proof. Define the sequence of random trees (t n ) n≥0 recursively as: t 1 is a single leaf. Given t n-1 , we define t n as the tree obtained by choosing a leaf uniformly at random among all leaves of t n-1 , replacing it by an internal nodes to which two leaves are attached, and, for each of the other leaves of t n-1 , choose with probability 1/2 (independently from the rest) whether to leave it unchanged or to replace it by a unary node to which one leaf is attached.

One can prove by induction on n that for all n ≥ 1, t n is uniformly distributed in S n . We denote by H F n the height of t n . Since the height of t n is at most the height of t n-1 plus 1 for all n ≥ 2, we get that H S n ≤ n -1 almost surely. For the upper bound, we note that, for the height of t n to be larger than the height of t n-1 , we need to have replaced at least one of the maximalheight leaves in t n-1 . There is at least one leaf of t n-1 which is at height H S n-1 and this leaf is replaced by an internal node with probability

1 2 1 - 1 n -1 + 1 n -1 ≥ 1 2 .
Therefore, for all n ≥ 1, we have

P(H S n = H S n-1 + 1) ≥ 1 2 , which implies, since H S n ∈ {H S n-1 , H S n-1 + 1} almost surely, E[H S n ] = E[H S n-1 ] + P(H S n = H S n-1 + 1) ≥ E[H S n-1 ] + 1 2 .
Therefore, for all n ≥ 1, we have

E[H S n ] ≥ E[H S 0 ] + n/2 = n/2, as claimed. □
Proof of Theorem 4.4.9. By Definition 4.4.1, it is straightforward to see that the height of a tree built in ℓ steps is at most ℓ since the height increases by at most one per construction step. Since a tree of size n is built in at most n -1 steps, we get that H F n ≤ n -1 almost surely, which implies, in particular, that E[H F n ] ≤ n -1. For the lower bound, note that, if t n is a tree taken uniformly at random in F n and H F n is its height, then

E[H F n ] ≥ E[H F n |t n ∈ S n ] • P(X ∈ S n ) ≥ 2 3 E[H S n ],

Quantitative analysis of the depth of the leftmost leaf

Theorem 4.4.11. Let us denote by D F n the height of a tree taken uniformly at random in F n , the set of all strict monotonic general trees of size n. Then we have, for all n ≥ 0,

n 3 ≤ E[H F n ] ≤ n -1.
Proposition 4.4.12. Let us denote by D S n the depth of the leftmost leaf of a tree taken uni formly at random in S n , the set of all strict monotonic general trees of size n that have n -1 distinct labels. Then we have, for all n ≥ 0,

n 2 ≤ E[D S n ] ≤ n -1.
Proof. Given the uniform process of trees t n presented in Proposition 4.4.10. The depth of the leftmost leaf is always smaller than n -1. Let X n be a Bernoulli variable taking value 1 if the leftmost leaf of t n has been expanded at iteration n and the value 0 otherwise. Then for n ≥ 1,

P (X n = 1) = 1 n + (n -1) n 1 2 = n + 1 2n ≥ 1 2 .
Since at each iteration step either the leftmost leaf expand to make a binary node which gives 1 n or it has not created a binary and then it has 1 2 probability to make a unary node. The depth of the leftmost leaf is

D S n = n k=1 X k . Therefore for n ≥ 1, E[D S n ] ≥ n 2 .
Which concludes the proof. □ Proof of Theorem 4.4.11. By the same arguments as in Theorem 4.4.9 the result follows directly since we have the same bounds on the depth of leftmost leaf as we had in the height of the tree. □

Conclusion

As a conclusion, we comment our main analytical results (summarised in Table 4.1, Table 4.7 and Table 4.2) in the light of the simulations obtained using the different random samplers designed in Chapter 7 (see the righthand sides of Figure 4.2, Figure 4.9 and Figure 4.16), and compare on the similarities and difference of our three models. Recall that in the rep resentations no label is represented but the length of an edge between two internal nodes is proportional to the difference of the labels of the nodes it connects.

A few of our analytical results can be observed looking at the simulations in Chapter 7: for example, the fact that a large proportion of the nodes are binary in a large monotonic Schröder tree, which we have confirmed by a rigorous analysis (see Theorem 4.2.24), is visible on Fig ure 4.2. From Figure 4.9, one could conjecture this is also true in the case of strict monotonic Schröder trees, but this question remains open.

From Figure 4.2, Figure 4.9 and Figure 4.16 it seems clear that the model of strict monotonic general Schröder trees behaves drastically differently from the two other models, which are quite similar. This is indeed what we have proved in our analysis: for example, the height of a typical strict monotonic general tree of size n is of order Θ(n) (see Theorem 4.4.9), while we have shown that a in the monotonic case, the height is of order Θ(log n) (see Theorem 4.2.27).

Another huge difference is that the number of internal nodes in a large typical monotonic general Schröder tree is of order Θ(n 2 ) (see Theorem 4.4.6) while, in the two other models, this parameter is of order n (see Theorem 4.2.18 Theorem 4.3.10).

Proving results on the height of different families of random trees is often a challenging question, and we have seen that it is indeed one of the most intricate parameters to study in our three models: in the case of monotonic and strict monotonic general trees, we obtain a Θestimate but we only obtain a ln n lower bound in the case of strict monotonic Schröder trees (see Section 4.3.5.4). A natural conjecture, based on the fact that increasing Schröder and strict monotonic Schröder trees seem to behave similarly in some aspects, we conjecture that the height of a typical strict monotonic Schröder tree is also of order c ln n, for some constant c. Have you not considered how God presents an example, [making] a good word like a good tree, whose root is firmly fixed and its branches [high] in the sky?

Introduction

In this chapter we study of an evolution process that generalises the processes studied in Chap ter 4 and incorporates them as special cases. The idea is to study evolution processes, where individuals evolve at some period of times and give birth to new individuals and the process goes on. The process that we present is general in the sense that it can parameterised by two variables. One variable controls the number of children that an individual can reproduce at each period of time. The process is general enough to incorporate also the fact that the num ber of newly born children from an individual can be unbounded. The second variable, is not a local variable but a global one, and this controls how many individuals can reproduce at each period of time.

The result of the evolution process can be represented with a plane rooted tree that has labels on internal nodes to denote the period of times in which this individual appeared. Leaves (i.e external nodes) are not labelled and represent the individuals that can reproduce and transform to internal nodes with new leaves.

Evolution processes are known in different fields. In combinatorics, several models of evolu tion processes have been studied. Many classes of trees in combinatorics are described by an evolution process like simple trees [START_REF] Meir | On the altitude of nodes in random trees[END_REF], Schröder trees and phylogenetic trees [START_REF] Schröder | Vier combinatorische Probleme[END_REF], increasing trees [START_REF] Bergeron | Varieties of increasing trees[END_REF], bifurcating trees and multifurcating trees [START_REF] Critchlow | The triples distance for rooted bifur cating phylogenetic trees[END_REF]. An introduc tion into various aspects of trees in combinatorics can be found [START_REF] Drmota | Random trees: An interplay between combinatorics and probability[END_REF] and for trees arising in phylogenetics [START_REF] Felsenstein | Inferring phylogenies[END_REF]. See Section 3.5.1 for more details on the tree classes cited above.

In probability theory, evolution processes, are described by rules of individual reproduction according to some probability distribution. Some famous models include GaltonWatson trees formalised by Neveu in [START_REF] Jacques | Arbres et processus de GaltonWatson[END_REF], Yule trees introduced by Pittel in [START_REF] Pittel | On growing random binary trees[END_REF]. For some tree classes, there exist a combinatorial evolution process and a probabilistic evolution pro cess that generates uniformly a tree from all trees of the same size. But it is not always the case.

Our main contributions in this chapter concerns asymptotic enumeration of different classes of trees that can be defined through the evolution process. The type of theorem we look for is close to the one on the asymptotics of simple trees that we have presented in Theorem 3.5.15. This theorem uses a characteristic equation and the main asymptotic term comprises deriva tives of the degree function ϕ(u). We look to develop the same kind of theorem for our evolution process. We will also find some new results on the asymptotics of labelled binary trees under different models of increasing labellings, see Table 5.8. For instance we will have the asymptotics of binary trees with weakly increasing labellings along branches. We will also be able to enumerate dary trees with weakly increasing labellings along branches. Therefore, this study constitutes as far as we know a first account on weakly increasing la bellings in the sense that we define, with the root always having label 1, the labels are weakly increasing along branches and finally there are no holes in the labels (if k is the maximum label then all labels between 1 and k must appear).

As we will see the specification of the evolution process gives rise invariably to divergent generating functions. The key idea in the proofs of our theorems is related to the use of Borel transform of the recurrence of the coefficients. In combinatorics the Borel transform plays a role similar to Borel summation for divergent power series.

We also see in this chapter how using specifications belonging to the unlabelled world of the symbolic method can help us define different increasing labellings on tree structures.

We will start this chapter in Section 5.2, by giving the formal definition of the evolution process. From the formal definition we will go on to give the statements of the main two theorems to be proved (Theorem 5.2.6 and Theorem 5.2.7). Our results in this chapter are mainly results relating to the enumeration of tree classes and general asymptotic equivalent results. Then a section is dedicated for applications of the theorems on specific tree classes in Section 5.3. In the section that follows, we will write a combinatorial recurrence on the coefficients of this process in Section 5.4. The four following sections (Section 5.5,Sec tion 5.6,Section 5.7 and Section 5.8) are dedicated to the proofs of the main results. Our results require that binary nodes are allowed to appear in the resulting tree. This is why in Section 5.10, we summarise some of the results where this is not the case and give some open questions about the evolution process in this case. We end this chapter with a conclusion that summarises the results in Section 5.11.

Formal definition and main results

We present now the evolution process that we will study in this chapter. This process gener ates trees such that their labels along branches are strictly increasing. But it will be possible to relax the strict increasing condition when we present a variant of this process later on.

Definition 5.2.1. (Evolution process for a variety of strict monotonic Schröder trees)

Given some colored degree function ϕ(z) as defined in Definition 3.5.6 and r ⊂ N * , the fol lowing evolution process generates a variety of strict monotonic Schröder tree parameterised by ϕ(z) and r. Let min(r) = 1 2 . The process starts at timestep 0 with a single leaf and at each timestep i ≥ 1 is as follows:

(1) Choose a nonempty subset of leaves L such that |L| ∈ r.

(2) For each leaf ℓ ∈ L choose an admissible degree and a colour (d, c), meaning that ϕ d > 0 and 1 ≤ c ≤ ϕ d . There also exists some leaf, such that the associated couple (d,c) is such that d > 1.

(3) Replace each leaf ℓ with an internal node labelled by i with colour c and having d new leaves attached to it.

Remark 5.2.2. If min(r) = 1, it means that we have more than one repetition at each iteration step. Therefore, it is not possible to start with single leaf. In this case we start with a tree consisting of a root labelled 1 that have min(r) leaves. Then the process goes on as described above and starts at time step 2 rather than one.

This evolution process generates a strict monotonic Schröder tree since at each iteration step we add some nodes having the same label in different places of the tree such that the labelling 2 where min() returns the smallest value of a set where the set of allowed repetitions r = {1, 2, 3}, so that each label can appear 1,2 or 3 times. But they might not all appear, in the example there is no node with 3 repetitions.

along each branch is always strictly increasing. In Section 5.3 we will see how to extend this process in order to generate monotonic trees (where the labelling along branches is weakly increasing).

Translating the above process using the framework of the symbolic method (see [START_REF] Flajolet | Analytic Combinatorics[END_REF]), we obtain the following functional relation for the generating series B r,ϕ enumerating trees built via the evolution process based on the colored degree function ϕ(z), and the set of allowed repetitions r ⊂ N * and let m = min(r):

B(z) = z m + i∈r 1 i! B (i) (z) ϕ(z) i -(ϕ 1 z) i . (5.1)
Where B (i) (z) is the i -th derivative of B(z). We write B instead of B r,ϕ for simplicity but it should be always clear that B is characterized by these two parameters.

Remark 5.2.3. We notice that the condition "There also exists some leaf, such that the asso ciated couple (d, c) is such that d > 1" in the evolution process Definition 5.2.1 is reflected in the specification by the factor -(ϕ 1 z) i , which means that at each iteration step at least one leaf evolves to something different from a unary node, this is why we erase the configuration where all leaves evolve to unary nodes. This ensures the resulting class to be a combinatorial class with a finite number of objects for each size. introduced in Section 5.3. They are rooted plane trees such that the labellings along branches is weakly increasing.

Conditions on the growth of ϕ(z)

Our asymptotic results work under conditions of growth of the coefficients ϕ i in ϕ(z). How ever, the conditions are general enough, so that, the results hold for interesting cases as will be presented in Section 5.3. Finally, it is possible that the growth condition on ϕ(z) can be relaxed further in some cases. But we keep it like this for uniformity of the results. The main difference between both conditions Condition 5.2.4 and Condition 5.2.5 is that in the first ϕ 1 = 0 and in the second this condition is negated so that ϕ 1 ≥ 1.

The main theorems are:

Theorem 5.2.6. Let ϕ(z) be as in Condition 5.2.4, with r = ∅. Let m = min(r), when n tends to ∞ and is of the

form n ≡ 0mod m, B r,ϕ n ∼ n→∞ κ n! ϕ 2 ρ n n -1+ ρ ϕ 3 ϕ 2 2 - ρ f ′′ (ρ) f ′ (ρ) ,
where κ is a constant that depends on ϕ(z) and r. Let

f (z) = ∞ i=1,i∈r z i i!
, then ρ is the positive real solution of smallest modulus of the equation f (z) -1 = 0.

Theorem 5.2.7. Let ϕ(z) be as in Condition 5.2.5 , let r ⊂ N * , r = ∅, and r = {1}, then when n tends to ∞,

B r,ϕ n ∼ n→∞ κ (n -1)! ϕ n-1 2 n-1 k=1 ∞ i=1,i∈r ϕ i-1 1 n -k -1 i -1 ,
where κ is a constant that depends on ϕ(z) and r.

These two theorems show that the asymptotic first order is only affected by the by ϕ 2 and ϕ 3 if there are no unary nodes (i.e ϕ 1 = 0). However, when unary nodes are allowed (i.e ϕ 1 > 0) only ϕ 1 and ϕ 2 appear in the first order asymptotic. In both cases as stated in the theorems ϕ 2 > 0.

For the case where unary nodes are not allowed, we study some relaxations of the condition on ϕ 2 ≥ 1, in Section 5.10. For the second case, where unary nodes are allowed an extension of Theorem 5.2.7 is given in Theorem 5.9.7.

When r consists of consecutive integers that starts from 1, that is r = [1, 2, . . . , m] or r = N * , then a specialising theorem gives the following:

Theorem 5.2.8. Let ϕ(z) be as in Condition 5.2.4, we have,

B [m],ϕ n ∼ n→∞ κ n! ϕ 2 ρ n n -1+τ +ρ ( -1+ ϕ 3 ϕ 2 2
)

,
where κ is a constant that depends on ϕ(z) and m, and is given by an implicit equation, let

f (z) = m i=1 z i i! , ρ is the positive real solution of smallest modulus of the equation f (z) -1 = 0 and τ = ρ m (m-1)!f ′ (ρ)
. Moreover, the numbers ρ and τ are algebraic except when r = N * , then ρ becomes transcendental.

We will start the proofs sections by showing two specific cases of r. In Section 5.5 we give the proof for r = {d}, and in Section 5.6 we give the proof for r = N * .

The statement of the two cases are: Proposition 5.2.9. Let ϕ(z) be as in Condition 5.2.4, and r = {d}, with d ≥ 1, then when n tends to ∞ and is of the form n ≡ 0mod d,

B {d},ϕ n ∼ κ n! ϕ 2 d! n/d n n -d+ ϕ 3 ϕ 2 2 .
Where κ is a constant that depends on ϕ and is given by an implicit equation.

Corollary 5.2.10. Let ϕ(z) be as in Condition 5.2.4, and r = N * . Then,

B N * ,ϕ n ∼ n→∞ κ n! ϕ 2 ln 2 n n ( -1+ ϕ 3 ϕ 2 2 ) ln 2-1 .
Where κ is a constant that depends on ϕ and is given by an implicit equation.

The result in Proposition 5.2.9 is used to make Condition 5.2.4.

Corollary 5.2.10 is put as a corollary because it follows directly from Theorem 5.2.8, but we will make a proof of it since the proof of the general result follows the same schema with a striction on the summands of the specialisation.

Then we go to show the general case Theorem 5.2.6 in Section 5.7 and its specialisation Theorem 5.2.8 in Section 5.8. Finally, we will show the proof of Theorem 5.2.7 where unary nodes are allowed in Section 5.9.

Principles of the proofs:

The proofs in the next sections follow the same steps which are summarised in the following:

• Make a Borel transform (rescaling by n!) on the coefficients of the main recurrence.

• Identify the coefficients of the leading behaviour.

• Write a differential equation that satisfies an upper and a lower bound of the gener ating function. • Prove an upper and lower bounds on the coefficients (i.e a Θ result).

• From the Θ result and a careful analysis of the error terms deduce the equivalent result.

Applications

All applications that we will present in this section are parameterised version of the evolution process presented in Definition 5.2.1 which gives rise to the following functional equation Equation (5.1) that we recall here.

B(z) = z m + i∈r 1 i! B (i) (z) ϕ(z) i -(ϕ 1 z) i .
This equation is parameterised by:

• The function ϕ(z) which represents the set of allowed nodes degrees with their num ber of colours. • The set r which represents the set of allowed number repetitions for an each iteration step and m = min(r).

All the asymptotic results presented are applications of Theorem 5.2.6 when there are no unary nodes and Theorem 5.2.7 otherwise.

We start this section by presenting a variant of the evolution process of Definition 5.2.1 that generates trees with weakly increasing labellings in Section 5.3.1.

In Section 5.3.2, we talk about families of strict monotonic Schröder trees, where there can be label repetitions on different branches of the tree but the labellings are strictly increasing from the root to any leaf. Using our theorem we derive again two known asymptotic results. We additionally study the behaviour of increasing binary trees with a fixed number of repetitions at each iteration step.

In Section 5.3.3 we consider trees with weakly increasing labellings. We study two varieties of them. The first one is called connected monotonic Schröder trees where the labellings are weakly increasing from the root to any leaf but where the same labels all belong to the same subtree.

The second variety that is called monotonic Schröder trees is the one of trees with weakly increasing labellings along branches where there can be label repetitions on different branches of the trees.

In Section 5.3.4, we give some examples of labelled Schröder trees with weakly increasing labellings, before we pass on to Section 5.3.5 where we talk about plane dary trees with weakly increasing labellings that we call then monotonic dary Schröder trees.

We then end with Section 5.3.6, that gives two examples of trees with unary nodes.

Double nature of ϕ(z)

The evolution process in Definition 5.2.1 sees the coloured degree function (defined in Def inition 3.5.6) representing the set of allowed arities and node colours in a tree and thus it generates a strict monotonic Schröder tree since at each iteration step we add some nodes having the same in different places of the tree such that the labelling is always strictly in creasing as in [BGGW20, BGN19].

Alternatively, the coefficients ϕ i , i ≥ 2, can be seen as the number of trees with i leaves be longing to some class of plane rooted unlabelled trees (in the sequel, we will refer to elements of such classes as treeshapes). In this second context the objects that we will construct are monotonic trees as defined in Definition 3.5.23.

In order to generate monotonic trees, in which case the coefficients of ϕ(z) are alternatively interpreted as enumerating treeshapes rather than node colours, a slight modification of the evolution process Definition 5.2.1 is required: at each iteration step i, each selected leaf is replaced by a treeshape, rather than a coloured internal node, and all internal nodes of this treeshape are labelled by i.

Definition 5.3.1. (Evolution process for a variety of monotonic Schröder trees)

Given ϕ(z) that represents the generating function of a rooted unlabelled plane class of tree counted by its number of leaves (we will call it the tree shapes) starting at size 2 and r ⊂ N * , the following evolution process generates a variety of monotonic Schröder tree parameterised by ϕ(z) and r. Let min(r) = 13 . The process starts at timestep 0 with a single leaf and at each timestep i ≥ 1 is as follows:

(1) Choose a nonempty subset of leaves L such that |L| ∈ r.

(2) For each leaf ℓ ∈ L choose an admissible size and a treeshape (s, t), meaning that ϕ s > 0 and 1 ≤ t ≤ ϕ s . There also exists some leaf, such that the associated couple (s, t) is such that s > 1.

(3) Replace each leaf ℓ with its corresponding the tree shape t having all its internal nodes labelled i.

An example of this evolution process is presented in Figure 5.2. We now exhibit examples of asymptotic enumeration for a number of interesting combinatorial tree classes as direct applications of the results presented in Section 5.2.

Varieties of strict monotonic Schröder trees

We recall the reader that we defined strict monotonic Schröder trees in Definition 3.5.24 of Section 3.5.6. Labelled Schröder trees are plane rooted trees, counted by their number of leaves. Only internal nodes bear labels. Then a variety of strict monotonic Schröder trees are labelled Schröder trees, such that the labelling is strictly increasing from the root to any leaf and if k is the maximum label in the tree, all labels from 1 to k appear. In particular, k can be smaller than the number of internal nodes and therefore, we can have label repetitions.

In these classes, the Definition 5.2.1 is such that r = N * and ϕ 1 = 0 (when unary nodes are allowed we added the word general in the name, see Section 5.3.6). Therefore, the sum in Equation (5.1) can be expressed in terms of composition of functions (substitution):

B(z) = z + B(ϕ(z) + z) -B(z).
In the substitution B(ϕ(z) + z) we add z which then allows for each leaf to be expanded or not, so that any subset of leaves can evolve which is also represented by the unbounded sum.

* z 2 α(n -1)! n -ln 2 ( 1 ln 2 ) n [BGGW20] S. M. BinaryTernary Trees N * z 2 + z 3 κ(n -1)! ( 1 ln 2 ) n S. M. Schröder trees N * z 2 1-z 1 2 (n -1)! ( 1 ln 2 ) n [BGN19]
Table 5.3: An example of the change in behaviour of the asymptotics for different classes of our model. Here "S. M." stands for "Strictly Monotonic". The asymptotic behaviours all come from Theorem 5.2.6 and its specialisation to this case Corollary 5.2.10

The sequence is referenced under EIS A171792. The 7 trees of size 4 can are drawn in Fig ure 5.3.

The asymptotic regimes of both strict monotonic Schröder trees and strict monotonic binary trees are close since they only differ by a polynomial term namely n -ln 2 . This led us to investigate when does the shift of behaviour appears. It turns out that adding ternary nodes (i.e ϕ(z) = z 2 + z 3 ) suffices to have the asymptotic of ϕ(z) = z 2 1-z . The results are summarised in Table 5.

T n ∼ κ (n -1)! 2 ln 2 n .
with κ ≈ 0.41 as seen in simulations.

Increasing binary trees with d repetitions Example 5.3.5. As a final example, we give the asymptotics growth of binary increasing trees with d label repetitions.

Let B d be the class of increasing binary trees with d label repetitions at each iteration step. So that at each iteration step exactly d leaves are chosen to expand (we start with a single root that has d leaves). We can specify B d from Equation (5.1) by taking ϕ(z) = z 2 and r = {d}. For all d ≥ 1, Theorem 5.2.6 is applicable. Some results are given using Theorem 5.2.6 in Table 5.4 and some simulations of the asymptotic behaviour in Figure 5.5.

For instance the first values of B 2

n are: 0, 0, 1, 0, 1, 0, 6, 0, 90, 0, 2520, 0, 113400, 0, 7484400, . . . .

d Asymptotics References 1 (n -1)! EIS A000142 2 c 2 n! 2 1/2 -n n -2 EIS A000680 3 c 3 n! 3! 1/3 -n n -3 EIS A014606 4 c 4 n! 4! 1/4 -n n -4 EIS A014608

Varieties of connected monotonic Schröder trees

The definition of this labelling has been given in Section 3.5.6 and Definition 3.5.26. We recall it in the following " A connected monotonic Schröder tree is a labelled Schröder tree such that the labellings are weakly increasing along branches and when a label i appears for the first time in the tree on node v (v is also the closest node to the root labelled i), then all other occurences of i appear in subtree of v. "

In fact generating a connected class of monotonic trees can be done using the evolution pro cess in Definition 5.3.1. By taking r = {1} and choosing the appropriate class of tree shapes in Equation (5.1) as described in Definition 5.3.1. So that, instead of colours the coloured degree function represents a class of rooted plane unlabelled trees counted by its number of leaves. Then we generate a variety of connected monotonic Schröder trees.

Example 5.3.6. The class of connected monotonic binary trees. Let B be the class of plane binary trees with size equal to the number of leaves, given by

B = Z + B 2 , which translates to B(z) = z + B(z) 2 .

These numbers are counted by shifted Catalan numbers. By solving the above equation we find that B(z

) = 1- √ 1-4z 2
. Now if we let CB to be the class of connected monotonic binary trees. Then by using the evolution process in Equation (5.1) parameterised with ϕ(z) = B(z) -z and r = {1} we get:

CB(z) = z + CB ′ (z) • (B(z) -z).
Then the first few values of CB n , i.e the number of connected monotonic binary trees with (n -1) internal nodes or with n leaves, are 0, 1, 1, 4, 21, 132, 958, 7872, 72273, 733772, 8167986, . . . We have depicted all 21 trees of size 4 in Figure 5.6. By Theorem 5.2.6, we have that Let IB n be the number of increasing binary trees with n -1 nodes. We have that IB n = (n -1)! and therefore Figure 5.7: (left) A connected monotonic tree and (right) a monotonic binary tree. A mono tonic binary tree need not to have the condition of connectedness. For instance, we see that the labels 3 and 4 appear in separate branches.

CB n ∼ κ ϕ n! n.

Example 5.3.7. The class of connected monotonic Schröder trees. Let S be the class of Schröder trees (all arities except unary are allowed) which has the following specification,

S = Z + Seq ≥2 S.

By solving the above equation, we have S(z) =

1 4 (1 + z - √ 1 -6z + z 2 ).
Proposition 5.3.8. If we let, IB n , be the number of increasing binary trees. Then,

CS n IB n ∼ Cn 2 ,
for some positive constant C.

We also see the same asymptotic growth happens, between increasing Schröder trees and connected monotonic Schröder trees see Table 5

Varieties of monotonic Schröder trees

This form of labellings has been defined in Definition 3.5.23 and Section 3.5.6. We recall the definition " A monotonic Schröder tree is a labelled Schröder tree, such such that the root node has label 1 and along each branch the labellings are weakly increasing and if m is the largest integer of the tree then all labels from 1 to m appear."

Let T be some class of unlabelled rooted plane trees counted by its number of leaves. We will denoted by MT the corresponding family of monotonic trees, i.e trees in T that have been labelled according to the rules for monotonic trees as defined in Definition 5.3.1. The idea here is to parameterise Equation (5.1) ϕ(z) corresponding to the variety of tree shapes that we want to label in a weakly increasing labelling along branches. We saw in the previous section that when r = {1} we called these varieties connected monotonic Schröder trees.

In the examples that we present in this section we always take r = N * so that we can have any number of repetitions but this can be restricted be putting restrictions on the set r.

Example 5.3.9. Consider the class BT of rooted plane binaryternary unlabelled trees (whose size is their number of leaves). The specification of this class is

BT = Z + Seq {2,3}
BT ,

where the first terms are BT (z) = z + z 2 + 3z 3 + 10z 4 + 38z

M BT n ∼ κ (n -1)! 1 ln 2 n n 2 ln 2 ,
with κ ≈ 0.17 as seen in simulations.

Example 5.3.10. Let S be the class of Schröder trees (all arities except unary are allowed) which has the following specification,

S = Z + Seq ≥2 S.

By solving the above equation, we have

S(z) = 1 4 (1 + z - √ 1 -6z + z 2 ).
The first terms of S(z) are S(z) = z + z 2 + 3z 3 + 11z 4 + 45z 5 + 197z 6 + . . . Hence, M S(z) is defined with the paramters r = N * and ϕ(z) = S(z) -z, then the first values of M S n , i.e., the number of monotonic Schröder trees with n leaves, are 0, 1, 1, 5, 33, 265, 2497, 27017, 330409, 4510065, . . .

By Theorem 5.2.6 we have,

M S n ∼ κ (n -1)! 1 ln 2 n n 2 ln 2 , with κ ≈ 0.19.

Weakly increasing plane dary trees (monotonic dary trees)

It is a fact that our specification, by construction, enumerates families of trees by number of leaves. However there exists a special case, that of monotonic dary Schröder trees (MT where T is a variety of rooted plane mary trees), where our specification also allows for enumeration by number of internal nodes. In this specific case then, we are also able to enumerate by number of internal nodes since any dary tree with k leaves has (k -1)/(d -1) internal nodes.

As an example, we consider the case of monotonic binary trees (an example is depicted in Figure 5.7). In this case we obtain the following.

Example 5.3.11. Let B be the class of plane binary trees with size equal to the number of leaves, as defined in Section 5.

Then MB is the class of monotonic binary trees (binary trees with weakly increasing labellings along branches). It is specified with ϕ

(z) = B(z) -z and r = N * . r ϕ(z) Asymptotics References Labelled binary c 1 (n -1)! 4 n n -3 2 [FS09] Weakly labelled c 2 (n -1)! 4 ln 2 n n -3 2 Increasing {1} z 2 (n -1)! [FS09], Theorem 5.2.6 Connected monotonic {1} (B(z) -z) c 3 n! n Theorem 5.2.6 Strict monotonic N * z 2 c 4 (n -1)! ( 1 ln 2 ) n n -ln 2 [BGGW20],Theorem 5.2.6 Monotonic (Weakly increasing) N * (B(z) -z) c 5 (n -1)! ( 1 ln
M B n ∼ κ (n -1)! 1 ln 2 n n ln 2 ,
with κ ≈ 0.34 as seen in simulations. We have depicted all 22 trees of size 4 in Figure 5.6. Finally, Table 5.7 and Table 5.8 summarises different results on the asymptotic behaviour of Schröder and binary trees with different forms of labellings. Figure 5.9 and Figure 5.8 shows the graph of the number of trees divided by the asymptotic behaviours obtained with Theorem 5.2.6. See Definition 3.5.5 for the weak labelling of a tree.

The evolution process we have presented, enumerates any class of plane weakly increasing dary trees (dary monotonic tree). However, the asymptotic enumeration in the theorems presented in Section 5.2 always require the existence of binary nodes.

Open question (Asymptotic enumeration).

It is an open question as to give the asymptotic behaviour of plane weakly increasing dary trees. For d = 2, the problem falls under Theo rem 5.2.6 and its specialisation Corollary 5. Table 5.9: First values of weakly increasing plane dary trees.

T d (z) = z + (T d (z)) d ,
and then, the class B d of plane weakly increasing dary trees is defined by:

B d (z) = z + B d (T d (z) -z) -B d (z).
We remind that when r = N * , the specification reduces to a substitution. The first values of B d (z) for d = 2, 3, 4 are presented in Table 5.9.

Applications of trees with unary nodes

In this section we give two examples of application of Theorem 5.2.7.

Example 5.3.12. The class of G of general monotonic Schröder trees presented in Section 4.4 has r = N * and ϕ(z) = z 1-z . By Theorem 5.2.7, we have,

G n ∼ n→∞ α (n -1)! n-1 k=1 ∞ i=1 n -k -1 i -1 ∼ n→∞ α (n -1)! n-1 k=1 2 n-k-1 ∼ n→∞ α (n -1)! 2 ∑ n-1 k=1 (n-k-1) ∼ n→∞ α (n -1)! 2 (n-1)(n-2)/2 .
This corresponds to the result found in Theorem 4.4.

F n ∼ n→∞ α (n -1)! n-1 k=1 ((n -k)) ∼ n→∞ α (n -1)! 2 .

Combinatorial model

It is possible to write a general recurrence for these models using sets that are in bijection with integer partitions or integer compositions. We start by defining the following:

Definition 5.4.1. [The set A n,k,r,ϕ .] We denote by A n,r,k,ϕ the set of ordered multisets with elements in N such that for each ordered multiset a = [a 1 , . . . , a l ] ∈ A n,k,r,ϕ :

• We have that a 1 + • • • + a l = k.
• The elements a 1 , . . . , a l are ordered decreasingly.

• |a| ∈ r and |a| ≤ (n -k). • ∀i, 1 ≤ i ≤ l, [z a i +1 ]ϕ(z) > 0.
where |a| represents the size of the list a.

The set In A n,k,r,ϕ represents the different possiblities of making a subset of leaves grows to reach the final size n at an iteration step. In Figure 5.10, the set A 10,6,z 2 /(1-z),N * , gives the different possiblities of a tree of size 4 to expand into one of size 10. The elements of the set A, give the configurations with different possible arities. The list [3, 2, 1], says that we can expand by making 3 leaves evolve, one into a binary node, one into a ternary nodes and one into a quaternary node (there is a shift by one in the degrees). We will see in the recurrence here after that each configuration has then a certain weight that depends on its elements and the number of leaves in the tree, since it is possible to permute elements and get other trees. Definition 5.4.2. Let a be an ordered list of integers. We define the maximum function max to be the function that maps a to its greatest element. We define the occurrences function to be the one such that occ(a) = [u 0 , . . . , u max(a) ] where u i is the number of elements in a equal to i. For example, when a = [4, 3, 1, 1], occ(a) = [0, 2, 0, 1, 1].

[2, 2, 1, 1] [3, 1, 1, 1] [2, 2, 2] [3, 2, 1] [4, 1, 1] [3, 3] [4, 2] [5, 1] [6]
Remark 5.4.3. For simplicity we will write B n instead of B m,ϕ n to make the notations lighter. But it is clear from the context that the two parameters always exist. Theorem 5.4.4. For any weighted degree function ϕ(z) and r ⊂ N * . Let m = min(r), The number of trees of size n generated by Equation (5.1) can be obtained using the following recurrence:

B n =          0 if n < m 1 if n = m n-1 k=1 a∈A n,k,r,ϕ (n-k)! (n-k-|a|)! |occ(a)| i=0,u i ̸ =0 ϕ u i i+1 u i ! B n-k if n > m (5.2)
Proof. We argue combinatorially. Fix some positive integer 1 ≤ k ≤ n -1 and consider the number of trees of size n that can be constructed from a tree T of size n -k by attaching to each of its leaves a number (possibly zero) of new vertices. Each element a ∈ A n,k,ϕ then represents a way of building a tree of size n out of T by replaced some of its leaves with iary vertices. This procedure may be described as a linear ordering of the leaves of T such that for 1 ≤ i ≤ |a|, the i -th leaf of T is replaced by an (a i + 1)ary node, while for i > |a|, the ith leaf in the ordering is left untouched. We now consider the multiplicative factors arising from the combinatorics of this procedure. To start with, we can naively suppose that after the aforementioned procedure, all leaves of T will have different new arities and so we can freely impose any order on them; this can be done in (n -k)! ways. We will now proceed to refine this naive approach. First of all we have to account for the fact that some leaves of T do not get replaced and so may be freely permuted within a given order without affecting the resulting tree; this yields a factor of 1 (n-k-|a|)! , since the number of leaves that actually change is |a|. In the case where ϕ 1 > 1, some 0 integers will appear in a. But that is not a problem, since the size of a is constrained to be in r or smaller than (n -k) which is the total number of leaves in B n-k .

In the same vein, we have a factor

|occ(a)| i=0,u i ̸ =0 ϕ u i i+1 u i !
which accounts for the fact that for each arity i, the leaves that get replaced with iary ver tices may be freely permuted among themselves in any given ordering, without affecting the outcome. Again, the factors ϕ u i i+1 u i ! in last expression account for the fact that for each arity i we have to choose one of the ϕ i+1 colours for each of the u i leaves that will be replaced by iary vertices. □ When unary nodes are not allowed (i.e ϕ 1 = 0), we can write the sum in terms of restricted integer compositions.

Definition 5.4.5 (The set C n,k,r,ϕ .). We denote by C n,k,r,ϕ the set of restricted integer compo sitions defined as the set of ordered multisets with elements in N * such that for each ordered multiset a = [a 1 , . . . , a l ] and let j be the multiplicity of 1 in a (i.e j is the number of 1 ap pearing in a). Then a ∈ C n,k,r,ϕ if:

• We have that a 1 + • • • + a l = n • |a| = k. • (|a| -j) ∈ r. • ∀i, 1 ≤ i ≤ l, if a i > 1, [z a i ]ϕ(z) > 0.
where |a| represents the size of the list a.

An example of this set is depicted in Figure 5.11.

[6, 1, 1] [5, 2, 1] [5, 1, 2] [4, 3, 1] [4, 1, 3] [2, 2, 4] [2, 3, 3] [1, 6, 1] [2, 5, 1] [1, 5, 2] [3, 4, 1] [1, 4, 3] [2, 4, 2] [3, 2, 3] [1, 1, 6] [2, 1, 5] [1, 2, 5] [3, 1, 4] [1, 3, 4] [4, 2, 2] [3, 3, 2]
B n =          0 if n < m 1 if n = m n-1 k=1 a∈C n,n-k,r,ϕ |occ(a)| i=2,u i ̸ =0 ϕ u i i B n-k if n > m (5.3)
We know the number of ways to make a tree of size n -k to evolve into a tree of size k, is the same number as the integer composition of n into n -k parts. Each one of the n -k leaves can be given a canonical ordering (from left to right for example) and then following the composition, into n -k part, each leaf take a part. If the leaf is given a part which is 1 it does not change because it contributes to 1 size in the whole tree, if the leaf is given integer i with i ≥ 2, then it will expand into an internal node with i new leaves. The integer composition has to be restricted according to the degree function ϕ(z). We saw that the leaves given integer 1 do not evolve, then the number of evolving leaves at an iteration step is (|a| -j), and that number should be present in the set of allowed repetitions. Finally, for leaves evolving into internal nodes of same degree, they could take different colors according to ϕ(z) and thus the product arises from this situation.

We will mainly use Equation (5.3) in the proofs but Equation (5.2) has the advantage of working for any ϕ(z) and any r.

Asymptotic analysis for r = {d}

[Proof of Proposition 5.2.9].

This case is a generalisation that includes study of asymptotics enumeration of general Schröder trees as presented in Section 4.2 where r = {1} and ϕ(z) = z 2 1-z . At each iteration step only one leaf evolves into an internal node with some new leaves. When r = {1} the result to prove is

B {1},ϕ n ∼ κ ϕ n! ϕ 2 n n ( ϕ 3 ϕ 2 2 -1
) .

Asymptotic analysis for r = {1}

For simplification we will denote B n instead of B {1},ϕ n in the proof. Our model can be speci fied via the symbolic method, as detailed in Section 2.2. Using Equation (5.2) we can directly obtain the following recurrence:

B 1 = 1, B n = n-1 k=1 (n -k) ϕ k+1 B n-k .
(5.4)

The main idea of the proof is to perform a Borel transform on the level of the coefficients of

B(z). Let b(z) = n≥0 Bn (n-1)! z n .
We can thus get a new recurrence:

b 1 = 1, b n = n-1 k=1 (n -k)! ϕ k+1 (n -1)! b n-k . ( 5
≥ 1, 1 ≤ k ≤ n -1, t n,k = (n -k)! ϕ k+1 (n -1)! .
The idea is to leave ϕ 2 and ϕ 3 fixed and to let all other ϕ n take their maximal value. We will see that whatever are the values of ϕ n for n > 3 they only affect the constant in the first order asymptotic. We can show that, Lemma 5.5.1. There exists a constant c independent of n such that, ∀n ≥ 2,

n-1 k=3 t n,k ≤ c (n -1)(n -2)
.

Proof. We know that there exist n 0 ∈ N * and c 1 , such that for all n ≥ n 0 , ϕ n ≤ c 1 n! n 5 . Therefore, we can make a Stirling approximation on t n,k , we get,

t n,k ≤ c 1 k(k + 1) n-1 k-1 (k + 1) 5 ≤ c 2 n-1
k-1 k 3 . This works for large n and fixed k, but by positivity of ϕ n , we can find a constant c 2 such that for any

3 ≤ k ≤ n -1, t n,k ≤ c 2 ( n-1 k-1 )k 3 . then, t n,k ≤ n-1 k=3 c 2 n-1 k-1 k 3 = c 2 n-1 k=3 1 n-1 k-1 k 3 ≤ c 3 1 n 2 + c 2 n-1 k=4 1 n-1 k-1 k 3 = O 1 n 2 .
In the sum n-1 k=4 1

( n-1 k-1 )
= O 1 n , the factor k 3 comes to help getting the right bound. There fore, there exists n 3 such that for all n ≥ n 3 , n-1 k=3 t n,k ≤ c (n-1)(n-2) . Since there are a finite number of steps until n 3 , we can find a constant that works for all n, by taking the maximum from the smaller values.

□

We will define a new sequence which we call a correcting sequence defined as follows a 1 = 1 and for all n ≥ 2

a n = b n -ϕ 2 b n-1 - 1 (n -1) ϕ 3 b n-2 .
(5.6)

We can show that remainder sequence is

a n = n→∞ O b n n 2 .
We have that by definition a n = n-3 k=1 t n,k b k , and since b n is increasing then

a n ≤ b n n-3 k=1 t n,k = O b n n 2 ,
by using Lemma 5.5.1. Now writing the generating function of b n with the sequence of a n we get

b n = ϕ 2 b n-1 + 1 (n -1) ϕ 3 b n-2 + a n . Which gives -ϕ 3 z 2 -1 b(z) + -ϕ 2 z 2 + z b ′ (z) = za ′ (z) -a(z).
The homogeneous part has the form

ϕ 3 z 2 -1 y(z) + -ϕ 2 z 2 + z y ′ (z) = 0. Which solves to y(z) = Cg(z) with g(z) = (-1) 1+ ϕ 3 ϕ 2 2 z e - ϕ 3 z ϕ 2 (1 -ϕ 2 z) -1- ϕ 3 ϕ 2 2 .
By constant variation

-c ′ (z) (ϕ 2 z -1)z g(z) = za ′ (z) -a(z). We have b(z) = c(z) g(z), therefore, b(z) = g(z) z 0 za ′ (t) -a(t) (ϕ 2 t -1)t g(t) dt.
We have,

g(z) = z→1/ϕ 2 e - ϕ 3 ϕ 2 2 ϕ 2 (1 -ϕ 2 z) -1- ϕ 3 ϕ 2 2 + O (1 -ϕ 2 z) - ϕ 3 ϕ 2 2
.

From which,

[z n ]g(z) = e - ϕ 3 ϕ 2 2 Γ 1 + ϕ 3 ϕ 2 2 ϕ 2 ϕ 2 n n ϕ 3 ϕ 2 2 1 + O 1 n .
The coefficients of za ′ (z) -a(z) are bounded above in absolute value by

K (1 -ϕ 2 z) - ϕ 3 ϕ 2 2 . Finally, za ′ (t) -a(t) (ϕ 2 t -1)t g(t) ∼ z→1/ϕ 2 K 2 ,
For some constant K 2 . From which,

h n = [z n ] z 0 za ′ (t) -a(t) (ϕ 2 t -1)t g(t) dt = O 1 n 2+ϵ . Now, b n = n k=0 g n-k h k .
We see that,

n k=⌊n/2⌋ g n-k h k = O g n n 1+ϵ .
Since the smallest value for h k is when k = n 2 , and it is

h n/2 = O 1 n 2 .
For the second part of the sum,

⌈n/2⌉ k=0 g n-k h k = e - ϕ 3 ϕ 2 2 ϕ 2 Γ 1 + ϕ 3 ϕ 2 2 ϕ n 2 ⌈n/2⌉ k=0 n ϕ 3 ϕ 2 2 1 + O k n h k = e - ϕ 3 ϕ 2 2 Γ 1 + ϕ 3 ϕ 2 2 ϕ 2 ϕ 2 n n ϕ 3 ϕ 2 2 ⌈n/2⌉ k=0 1 + O k n h k = e - ϕ 3 ϕ 2 2 Γ 1 + ϕ 3 ϕ 2 2 ϕ 2 ϕ 2 n n ϕ 3 ϕ 2 2     ∞ k=0 h k - ∞ k=⌊ n 2 ⌋ h k   + ⌈n/2⌉ k=0 O k n h k   = e - ϕ 3 ϕ 2 2 Γ 1 + ϕ 3 ϕ 2 2 ϕ 2 ϕ 2 n n ϕ 3 ϕ 2 2     ∞ k=0 h k - ∞ k=⌊ n 2 ⌋ h k   + O 1 n 1+ϵ   = e - ϕ 3 ϕ 2 2 Γ 1 + ϕ 3 ϕ 2 2 ϕ 2 ϕ 2 n n ϕ 3 ϕ 2 2 ∞ k=0 h k -O 1 n 1+ϵ + O 1 n 1+ϵ = e - ϕ 3 ϕ 2 2 Γ 1 + ϕ 3 ϕ 2 2 ϕ 2 ϕ 2 n n ϕ 3 ϕ 2 2 ∞ k=0 h k + O 1 n 1+ϵ ∼ n→∞ e - ϕ 3 ϕ 2 2 Γ 1 + ϕ 3 ϕ 2 2 ϕ 2   1/ϕ 2 0 za ′ (t) -a(t) (ϕ 2 t -1)t g(t) dt   ϕ 2 n n ϕ 3 ϕ 2 2
Finally, we get,4

b n = e - ϕ 3 ϕ 2 2 Γ 1 + ϕ 3 ϕ 2 2 ϕ 2   1/ϕ 2 0 za ′ (t) -a(t) (ϕ 2 t -1)t g(t) dt   ϕ 2 n n ϕ 3 ϕ 2 2 1 + O 1 n .
To conclude, we know that, B n = n! b n , We see that B n has then the right asymptotic behaviour, which concludes the Proof of Propo sition 5.2.9.

The method that we have used in the end of this section with the remainder function is generic and it will be used to show the subsequent results.

Asymptotic analysis for d ≥ 2

The proof of the case r = {1} generalises with some modifications that we give in the following. We first restate the result to prove:

B {d},ϕ n ∼ κ n! ϕ 2 d! 1/d n n -d+d! 1/d ϕ 3 ϕ 2 2 .
Using Equation (5.2) we obtain the following recurrence:

B n =            0 if n < d 1 if n = d n-1 k=1     a∈C n,n-k,{d},ϕ |occ(a)| i=2,u i ̸ =0 ϕ u i i     B n-k . if n > d (5.7)
In other words, when we have a tree of size n -k, the number of configurations to make a tree of size n are integer compositions such that the number of elements larger than one in the composition is equal to d and each element larger than in the composition is multiplied by the number of colours of the corresponding degree. For instance the first terms of B n are

B n = ϕ d 2 n -d d B n-d + dϕ d-1 2 ϕ 3 n -d -1 d B n-d-1 + ϕ d-2 2 dϕ 2 ϕ 4 + d 2 ϕ 2 3 n -d -2 d B n-d-2 + . . .

Now we apply a modified

Borel transform on the coefficients of B n in order to normalise the term in front of B n-d . This transform will also give us a new recurrence which its correspond ing generating function is analytic. So that itis easier to extract an asymptotic behaviour from it by using classical tools. We define for n ≥ 1,

b n = B n (n -d)! d! -n/d . Therefore the first terms of b n are b n = ϕ d 2 b n-d + dϕ d-1 2 ϕ 3 (n -d) b n-d-1 + . . .

We know that

ϕ n = n→∞ O n! d! n/d n 4+d .
For a fixed k the maximal summand in (d-1) which corresponds to the configuration which have (d -1) binary nodes and a node of size k + 2 -(d -1) because ϕ n grows factorially. See Lemma 5.6.5 for a similar discussion. We conclude that for a fixed k > d + 1

a∈C n,n-k,{d},ϕ |occ(a)| i=2,u i ̸ =0 ϕ u i i , is asymptotically ϕ d-1 2 ϕ k+2-
a∈C n,n-k,{d},ϕ |occ(a)| i=2,u i ̸ =0 ϕ u i i = O n -1 d -1 ϕ d-1 2 ϕ k+2-(d-1)
The factor n-1 d-1 , comes from the fact the number of summands is bounded by integer com positions of n with size d. Let us define for all n ≥ 1,

d + 2 ≤ k ≤ n -d, t n,k = ϕ d-1 2 ϕ k+2-(d-1) n -1 d -1 (n -d -k)!d! -(n-d-k)/d (n -d)!d! -(n-d)/d . t n,k ≤ ϕ d-1 2 (k + 2 -(d -1))! d! (k+2-(d-1))/d (k + 2 -(d -1)) d+4 (n -1)!(n -d -k)!d! -(n-d-k)/d (n -d)! 2 (d -1!)d! -(n-d)/d ≤ d! -3/d ϕ d-1 2 (k + 2 -(d -1))! (k + 2 -(d -1)) d+4 d (n -1)!(n -d -k)! (n -d)! 2 ≤ d! -3/d ϕ d-1 2 d (n -1) d-1 k d-3 (k + 3 -d) d+4 1 n-d k
By a crude estimate we find that t n,k = O (1/n 3 ) and therefore

n-d k=d+2 t n,k = O 1 n 2 .
The sequence of b n is increasing in each one of its d regimes because of its recurrence b n = ϕ d 2 b n-d + ϵ n , where ϵ n contains only positive terms.

From the last expression we define for n ≥ 1,

b n = ϕ d 2 b n-d + d! 1/d dϕ d-1 2 ϕ 3 (n -d) b n-d-1 + a n
From which by coefficient translation we get

-d! 1/d dϕ 2 d-1 ϕ 3 z d+1 -d b (z) + -ϕ 2 d z d+1 + z ∂ b (z) = za ′ (z) -a(z).
We can solve the homogeneous part

-d! 1/d dϕ 2 d-1 ϕ 3 z d+1 -d y (z) + -ϕ 2 d z d+1 + z ∂ y (z) = 0.
Which solves to y(z) = Cg(z) with

g(z) = h(z) (1 -ϕ 2 z) -1-d! 1/d ϕ 3 ϕ 2 2 .
with h(z) is analytic at z = 1/ϕ 2 . The result is obtained since the real dominant singularity is invariably ζ = 1 ϕ 2 and is a regular one, there are d singularities of the same modulus. Then the contribution of the real singularity can be computed mechanically with

δ 1 = lim z→ζ (z -ζ)d 1 (z) = 1 + d! 1/d ϕ 3 ϕ 2 2 .
From the estimation of t n,k we find that

a n = O( d i=0
b n-i /n 2 ). Since each regime in b n is increasing. Then following the same calculations as in the end of Section 5.5.

The sequence b n can be periodic and this is reflected by the presence of multiple singularities on the radius of convergence. However all singularities give the same asymptotic behaviour and we have three possible cases. Either b n is periodic with 0 coefficients at regular intervals and in this case the contribution of the singularities cancel each others. There can also be different asymptotic constants so that all regimes have the same asymptotic behaviour with different constants or finally the constants of the different regimes converge to the same constant and the first order asymptotic of b n has one constant. But in all cases when n ≡ 0 mod d and n tends to

∞ b n ∼ n→∞ α ϕ n 2 n d! 1/d ϕ 3 ϕ 2
2 , for some positive constant α. Then the main asymptotic order of B n is

B n = b n (n -d)! d! -n/d ,
which is the desired result.

Asymptotic analysis for r = N *

We remind that here ϕ 1 = 0. and r = N * , the specification in Equation (5.1) reduces to a substitution,

B(z) = z + B(z + ϕ(z)) -B(z)
Since combinatorially, any subset of leaves can be chosen to expand at each iteration step.

Thus we can put a substitution and add z inside the substitution so that any subset of leaves can evolve. The problem with this addition is that we need to remove the case where not any leaf has expanded and therefore the factor -B(z) appears to account for this fact. We can write a recurrence on the coefficient of B n which is Equation (5.2) that we recall here. In fact we have two recurrences,

B 1 = 1, B n = n-1 k=1 a∈A n,k,ϕ (n-k)! (n-k-|a|+1)! |occ(a)| i=2,u i ̸ =0 ϕ u i i+1 u i ! B n-k ,
(5.8)

It will be useful for us to give a name to the inner sum of the recurrence. Let

t n,k = a∈C n,n-k,r,ϕ |occ(a)| i=2,u i ̸ =0 ϕ u i i .
Lemma 5.6.1. If for all n ≥ 1 and if for all i ≥ 2, if ϕ i = 1 then

t n,k = n -1 k = n -1 n -k -1 .
Proof. In this case, we have all repetitions allowed and all arities allowed, so that the set

C n,n-k,r,ϕ = C n,n-k ,where C n,n-k is the integer compositions of n into n -k parts and |C n,n-k | = n-1 n-k-1
. See Section 3.3 for more on integer compositions. □

We can rewrite the recurrence of B n by taking out some of the factors and rearranging the rest of the terms.

B n = ⌊ n 2 ⌋ k=1 ϕ k 2 n -k k B n-k + ⌈ n 2 ⌉ k=2 ϕ k-2 2 ϕ 3 (k -1) n -k k -1 B n-k + n-1 k=3 a∈C n,n-k,r,ϕ |occ(a)| i=2,u i ̸ =0 ϕ u i i -ϕ k 2 n -k k -ϕ k-2 2 ϕ 3 (k -1) n -k k -1 B n-k
(5.9)

Combinatorially, in the recurrence it is possible to separate the terms that involve only adding binary nodes, and the ones that involve adding a single ternary and binary nodes from the rest of the terms.

In the last recurrence when

1 ≤ k ≤ n 2 the terms ϕ k 2 n-k k exists. If 2 ≤ k ≤ n 2 the term ϕ k-2 2 ϕ 3 n-k
k-1 exists. But these two sums can be extended to n since the additional terms are 0.

B n = ⌊ n 2 ⌋ k=1 ϕ k 2 n -k k B n-k + ⌈ n 2 ⌉ k=2 ϕ k-2 2 ϕ 3 (k -1) n -k k -1 B n-k + n-1 k=3 a∈C n,n-k,r,ϕ |occ(a)| i=2,u i ̸ =0 ϕ u i i B n-k .
(5.10)

Remark 5.6.2. In the recurrence, C n,n-k,r,ϕ is C n,n-k,r,ϕ where the configurations with k integers larger than 1 or (k -1) integers larger than 1 has been removed from the set Since we think that these two first terms are the only ones which play a role in the asymptotic first order we will look for an estimate for the rest of the terms. The following two Lem mas will serve as a basis to write the main term of the differential equation that satisfies the generating function of B n .

Lemma 5.6.3.

∀n ≥ 1, 1 ≤ k ≤ n, 1 k! 1 - k 2 n - k 4 n 2 ≤ (n -k)! 2 k! n! (n -2k)! ≤ 1 k! 1 - k 2 n + k 4 n 2 .
Proof. Let us start with the upper bound, we notice that for k > n 2 , (n-k)! 2 k!n!(n-2k)! = 0 and

k 2 n ≥ 1 therefore k 4 n 2 = ( k 2 n ) 2 ≥ k 2 n and finally 1 k! (1 -k 2 n + k 4 n 2 ) ≥ 0.
Now we need to show the upper bound for the rest, that is when

1 ≤ k ≤ n 2 (n -k)! 2 k!n!(n -2k)! = 1 k! (n -k)(n -k -1) . . . (n -2k + 1) n(n -1) . . . (n -k + 1) = 1 k! (1 - k n )(1 - k n -1 ) . . . (1 - k n -k + 1 ) ≥ 1 k! 1 -k 1 n + 1 n -1 + • • • + 1 n -k + 1 = 1 k! (1 -k (H n -H n-k )) ≥ 1 k! (1 -k (ln n -ln(n -k))) = 1 k! 1 -k ln 1 1 -k n
In the proof we have used the fact that (H n -ln n) n is monotonically decreasing see [START_REF] Tims | Approximate Evaluation of Euler's Constant[END_REF] for example. We only look at values for x ≤ 1 2 and in this range ln

1 1-x ≤ x + x 2 , then, (n -k)! 2 k!n!(n -2k)! ≥ 1 k! 1 - k 2 n - k 4 n 2 .
For the other side,

(n -k)! 2 k!n!(n -2k)! = 1 k! (n -k)(n -k -1) . . . (n -2k + 1) n(n -1) . . . (n -k + 1) = 1 k! (1 - k n )(1 - k n -1 ) . . . (1 - k n -k + 1 ) ≤ 1 k! 1 - k n k ≤ 1 k! 1 - k 2 n + k 4 n 2
The last inequality results from the fact that

(1 -x) r ≤ 1 -rx + r 2 x 2 . □ Lemma 5.6.4. ∀n ≥ 1, 1 ≤ k ≤ n 1 k! k(k -1) n - k 2 (k -1) 2 n 2 ≤ (n -k)! 2 n!(n -2k + 1)!(k -2)! ≤ 1 k! k(k -1) n . Proof. (n -k)! 2 n!(n -2k + 1)!(k -2)! = 1 (k -2)! (n -k) . . . (n -2k + 2) n(n -1) . . . (n -k + 1) = 1 n(k -2)! (1 - k -1 n -1 )(1 - k -1 n -2 ) . . . (1 - k -1 n -k + 1
).

We want that ∀n,

1 ≤ k ≤ n, 1 n(k -2)! (1 - k -1 n -1 )(1 - k -1 n -2 ) . . . (1 - k -1 n -k + 1 ) ≥ 1 n(k -2)! (1 - k(k -1) n ).
We see that if k ∈ { n 2 + 1, . . . , n} the left hand side is equal to 0 and the right hand side is negative so the result holds. Now it is enough to show that ∀n,

1 ≤ k ≤ n 2 , (1 -k-1 n-1 )(1 -k-1 n-2 ) . . . (1 -k-1 n-k+1 ) (1 -k(k-1) n ) ≥ 1.
We have that,

(1 -k-1 n-1 )(1 -k-1 n-2 ) . . . (1 -k-1 n-k+1 ) (1 -k(k-1) n ) ≥ 1 -k-1 n-k+1 k-1 (1 -k(k-1) n ) ≥ 1 -(k-1) 2 n-k+1 (1 -k(k-1) n ) = n n -k + 1 ≥ 1
For the other side we have,

(n -k)! 2 n!(n -2k + 1)!(k -2)! = 1 (k -2)! (n -k) . . . (n -2k + 2) n(n -1) . . . (n -k + 1) = 1 n(k -2)! (1 - k -1 n -1 )(1 - k -1 n -2 ) . . . (1 - k -1 n -k + 1 ). ≤ 1 n(k -2)! (1 - k -1 n -1 ) k-1 . ≤ 1 n(k -2)! . = 1 k! k(k -1) n ≤ 1 k! k(k -1) n + k(k -1) n 2
where the last inequality follows from the fact that k(k-1)

n 2 ≥ 0 for all n ≥ 0 and 1 ≤ k ≤ n. □
The following calculations help getting a bound to estimate the rest of the terms in the recur rence. The idea is to find an upper bound for the rest of the terms and then show that it is bounded.

We want to get a good upper bound for the rest of the terms that are of the form

a∈C n,n-k,r,ϕ |occ(a)| i=2,u i ̸ =0 ϕ u i i .
The first Lemma gives an upper bound for the value of the greatest element of this sum.

Lemma 5.6.5. For n ≥ 3, and

3 ≤ k ≤ n -1. If ϕ n = O n! n 5 . Let mx be the maximal summand of a∈C n,n-k,r,ϕ |occ(a)| i=2,u i ̸ =0 ϕ u i i .
There exists a positive constant c independent of n, such that

mx ≤ c k! k 4 .
Proof. For a fixed k, and as n grows, the optimal configuration (the one that gives the largest product) is the list containing 1 everywhere except for one element which has value (k + 1). Because of the factorial growth on ϕ n .

For example if for ϕ 2 = 7 and for all i > 2, ϕ i = (i -2)!. If k = 3, when n = 4, the only composition possible is [4] which gives 2! = 2. But when n = 5, the composition [2, 3] gives 7 while [4, 1] gives 2! = 2. Then when n = 6, the optimal composition is [2, 2, 2] which gives 7 3 = 343 while [4, 1, 1] gives 2 and [3, 1, 2] gives 7. and then we see that the optimal one is always [2, 2, 2, 1 n-k-3 ], where 1 n-k-3 means that we add n -k -3 ones to the list. And the product always have the same value. This comes from the fact at the beginning there were not enough leaves for the optimal configuration to settle, but ones it is done the product of the optimal configuration stabilises. Now, we want to show that, there exists n 0 and 1 ≤ η ≤ n -1, such that for all n ≥ n 0 and η ≤ k ≤ n -1, the optimal configuration is [k + 1, 1 n-k-1 ] and when k < η, the optimal configurations are stable which means that when n grows we only add more and more ones and that does not change the overall product. This result follows from the conditions on ϕ(z). Since other configurations involve product of factorials smaller than (k +1) but which still have the same number of factors if the factorials are flattened. These compositions have the form

p = p 1 ! × p 2 ! × • • • × p i !,
where p j are all ≥ 2, and is such that ( i j=1 p j ) = k + i, and

p = O k! k 4 ,
and the only configuration that reaches

O k! k 4 is [k + 1, 1 n-k-1 ].
Whereas for k < η, the largest product can have another form due to the first values of ϕ(z). Therefore, after a finite

n 1 and η ≤ k ≤ n -1 the optimal composition is [k + 1, 1 n-k-1 ].
For k < η, as it has been said the optimal compositions stabilise when n grows. Since η is finite, there exists n 2 such that for all n ≥ n 2 , and k < η the optimal configuration are stable because they have reached the maximal product. In fact, these optimal compositions stabilise as soon as n -k has a number of leaf large enough for the optimal composition to settle.

Finally, we take n 0 = max({n 1 , n 2 }). Then, starting from n ≥ n 0 , and k < η, the optimal composition is stable (does not depend on n), we only add 1 for each growing n but the overall product does not change. When k ≥ η As n grows k can take larger values, but for all these values we know the optimal composition that is

[k + 1, 1 n-k-1 ].
In order to determine the value of the constant c we have for a finite number of values n ≤ n 0 and 3 ≤ k ≤ n -1, where we divide each one of them by k! k 4 and take the maximum value as a general constant that will work for all n. An example is depicted in Section 7.5.1. □

Let us now define the Borel transform of B n , for all n ≥ 1,

b n = B n n! .
By replacing in the above equations we get,

b n = ⌊ n 2 ⌋ k=1 ϕ k 2 n -k k (n -k)! n! b n-k + ⌈ n 2 ⌉ k=2 ϕ k-2 2 ϕ 3 (k -1) n -k k -1 (n -k)! n! b n-k + n-1 k=3   a∈C n,n-k,r,ϕ |occ(a)| i=2,u i ̸ =0 ϕ u i i   (n -k)! n! b n-k (5.11) b n ≤ ⌊ n 2 ⌋ k=1 ϕ k 2 n -k k (n -k)! n! b n-k + ⌈ n 2 ⌉ k=2 ϕ k-2 2 ϕ 3 (k -1) n -k k -1 (n -k)! n! b n-k + n-1 k=3   c k! k 4   a∈C n,n-k,r,ϕ 1     (n -k)! n! b n-k
In this way it is possible to define b n and b n ,

The last sum arise by applying Lemma 5.6.5. We need now to estimate the size of the set C n,n-k,r,ϕ .

Lemma 5.6.6.

For n ≥ 4, 3 ≤ k ≤ n -1,   a∈C n,n-k,r,ϕ 1   (n -k)! n! = O k 4 k! n 2 . Proof. We know that |C n,n-k,r,ϕ | ≤ |C n,k | = n-1 k . Therefore, |C n,n-k,r,ϕ | ≤ n -1 k - n -k k -(k -1) n -k k -1 .
We already have lower bounds for n-k k

(n-k)! n! and (k -1) n-k k-1 (n-k)! n!
with Lemma 5.6.3 and Lemma 5.6.4. We have for the first term, n -1 k

(n -k)! n! = 1 k! - 1 (k -1)! n . Therefore, n -1 k - n -k k -(k -1) n -k k -1 (n -k)! n! ≤ 1 k! - 1 (k -1)! n - 1 k! 1 - k 2 n - k 4 n 2 - 1 k! k(k -1) n - k 2 (k -1) 2 n 2 = O k 4 k! n 2 .
□ Therefore, from Lemma 5.6.6 and Lemma 5.6.5, for n ≥ 4, and

3 ≤ k ≤ n -1,   a∈C n,n-k,r,ϕ |occ(a)| i=2,u i ̸ =0 ϕ u i i   (n -k)! n! = O 1 n 2 .
(5.12)

In order to conclude the equivalent result that we are looking to demonstrate we will define a new sequence that is a remainder one and analyse it. Let us write b n with a remainder term,

b n = n k=1 ϕ k 2 k! 1 + ϕ 3 ϕ 3 2 -1 k 2 n - ϕ 3 ϕ 2 2 k n b n-k + a n .
(5.13)

From which by splitting the sum as before we find,

a n = ⌊ n 2 ⌋ k=1 ϕ k 2 n -k k (n -k)! n! - 1 k! 1 - k 2 n b n-k + ⌈ n 2 ⌉ k=2 ϕ k-2 2 ϕ 3 (k -1) n -k k -1 (n -k)! n! - 1 k! k(k -1) n b n-k - n-1 k=⌊ n 2 ⌋ ϕ k 2 1 k! 1 - k 2 n b n-k - n-1 k=⌈ n 2 ⌉ ϕ k-2 2 ϕ 3 1 k! k(k -1) n b n-k + n-1 k=3 a∈C n,n-k,r,ϕ |occ(a)| i=2,u i ̸ =0 ϕ u i i (n -k)! n! b n-k .
(5.14) Lemma 5.6.7. The remainder sequence is asymptotically

a n = n→∞ O b n n 2 .
Proof. Looking at Equation (5.14), the first two sums are bounded by Lemma 5.6.3 and Lemma 5.6.3. For instance the first sum, we have,

ϕ k 2 n -k k (n -k)! n! - 1 k! 1 - k 2 n = O ϕ k 2 k 4 k! n 2 ,
and therefore,

⌊ n 2 ⌋ k=1 ϕ k 2 n -k k (n -k)! n! - 1 k! 1 - k 2 n b n-k ≤ b n n 2 ⌊ n 2 ⌋ k=1 c ϕ k 2 k 4 k! = O b n n 2 .
In the proof c is some positive constant. The second sum in Equation (5.14) can be treated in the same way. as well as the last sum by Equation (5.12). The two sums in the middle starts at n = n/2 . For example,

n-1 k=⌊ n 2 ⌋ ϕ k 2 1 k! 1 - k 2 n = O 1 ( n/2 -2)! , Therefore, n-1 k=⌊ n 2 ⌋ ϕ k 2 1 k! 1 - k 2 n b n-k ≤ b n n-1 k=⌊ n 2 ⌋ c 2 ( n/2 -1)! ≤ b n c 2 ( n/2 -2)! = O b n n 2
, where c 2 is some positive constant. The same can be done for the remaining sum. Therefore, the result holds. □

From Equation (5.13) a differential equation for b(z) can be written in term of the function a(z):

-e ϕ 2 z z ϕ 2 2 -ϕ 3 - ϕ 2 z b (z) + ∂ z a (z) + e ϕ 2 z -2 ∂ z b (z) ,
which its homogeneous part has a generic solution b(z) = C g(z) and g(z) is:

g(z) = exp   z 0 e ϕ 2 t t ϕ 2 2 -ϕ 3 -ϕ 2 t (e ϕ 2 t -2) dt   .
The function g(z) can be expanded around its singularity ln 2 ϕ 2 to give:

g(z) ∼ z→ln 2/ϕ 2 exp - ϕ 2 2 -ϕ 3 ln (2) (ln (ln (2)) -ln (-zϕ 2 + ln (2))) ϕ 2 2 ,
which gives asymptotically

g n ∼ n→∞ 1 Γ (-ϕ 2 2 +ϕ 3 ) ln 2 ϕ 2 2 ϕ 2 ln 2 n n ( -1+ ϕ 3 ϕ 2 2 ) ln 2-1 .
By constant variation we find that

c ′ (z) = a ′ (z) (e ϕ 2 z -2)g(z)
,

and therefore since b(z) = c(z)g(z) we have b(z) = g(z) z 0 a ′ (t) (e ϕ 2 t -2)g(t)
From now on the same arguments hold as the ones we saw in the last part of Section 5.5 to conclude the equivalent result.

Asymptotics for general r

[Proof of Theorem 5.2.6].

In some applications it might be the case that we would like to allow a different kind of repetitions like exactly k repetitions at each iteration step, or a subset {3, 4, 8}, so that at each iteration step we could select 3 or 4 or 8 leaves to expand. In this case r is any non empty subset of integers r ⊂ N * .

It is interesting to see that even in this case we can get a very general asymptotic formula for the coefficients of such processes. In fact, the proof is very close to the one presented in Section 5.8. The only difference is that the asymptotic formula is more general.

The initial condition of the process has to be little modified, since for example if we allow for exactly 2 repetitions at each iteration step (i.e r = {2}), we can not start with a single leaf, since at each iteration step we have to select exactly 2 leaves and only one is available. We will denote by min(r) the smallest integer present in the set m. Therefore, the initial condition of the process is a single tree which is a leaf with min(r) leaves attached to it. So it is always possible to iterate.

Finally, depending on the set r of allowed repetitions, some coefficients may always be 0. For instance if r = {2}, the number of trees of odd sizes is always 0. This why the asymptotics of the Theorem works for n of the form n = 0(mod m).

It turns out that our analysis in Section 5.8 is robust, and that studying this case is just about adding some details to the analysis that we have already done.

The initial condition on the coefficient of B n differs following to the minimal number of allowed repetitions. We will denote this number m = min(r). Then B k = 0 for all k < m and B m = 1. The recurrence goes on afterwards as described in Equation (5.2). The reason is that if number of allowed repetitions is at least 2 we can start with a single leaf. So we start with a single root containing 2 leaves.

If we do a Borel transform on the coefficients of B n , we get the same equation as Equa tion (5.11), but the first two sums now range only over accepted values of r, since some repetitions might not be allowed.

b n =                                    0 if n < m 1 m! if n = m ∞ k=1,k∈r ϕ k 2 n -k k (n -k)! n! b n-k + ∞ k=2,(k-1)∈r ϕ k-2 2 ϕ 3 (k -1) n -k k -1 (n -k)! n! b n-k + n-1 k=3   a∈C n,n-k,r,ϕ |occ(a)| i=2,u i ̸ =0 ϕ u i i   (n -k)! n! b n-k if n > m (5.15)
It is then possible to use Lemma 5.6.3 and Lemma 5.6.4 seen in Section 5.6.

In order to get the asymptotic equivalent wee that it is to write b n as follows:

b n = ∞ k=1,k∈r ϕ 2 k k! 1 - k 2 n b n-k + ϕ 3 ϕ 2 2 ∞ k=2,(k-1)∈r ϕ 2 k k! k 2 n - k n b n-k + a n (5.16)
We can then show by using Lemma 5.6.7 that:

a n = O b n n 2
, It is true that this time b n can be exponentially decreasing. This is where the condition of ϕ n intervenes. By using Lemma 5.6.7 we see that

a n ≤ n-3 k=1 c m! k/m n 3 b n-k
We know that min(r) = m but r = m, since this case has been treated previously. This implies that the singularity of b(z) is smaller than

m! 1/m ϕ 2 . Let g(z) = ∞ k=1,k∈r ϕ 2 k z k k! we have, 1 z ∞ k=1,k∈r ϕ 2 k (k -k(k -1))z k k! = g ′ (z) -zg ′′ (z).
and,

ϕ 3 ϕ 2 2 z ∞ k=2,(k-1)∈r ϕ 2 k k (k -1) z k k! = ϕ 3 z ϕ 2 g ′ (z).
Then by coefficient translation of Equation (5.16) we get

1 + ϕ 3 z ϕ 2 g ′ (z) -z g ′′ (z) b(z) + (g(z) -1) b ′ (z) + a ′ (z) = 0
by solving the homogeneous equation we obtain

r(z) = exp   z 0 (1 + ϕ 3 z ϕ 2 )g ′ (z) -z g ′′ (z) g(z) -1 dz  
We see that the real dominant singularity ζ is the smallest real solution of g(z) -1 = 0 Let

d 1 (z) = (1+ ϕ 3 z ϕ 2 )g ′ (z)-z g ′′ (z) g(z)-1 . Then lim z→ζ (z -ζ) d 1 (z) = lim z→ζ (1 + ϕ 3 z ϕ 2 )g ′ (z) -z g ′′ (z) g ′ (z)(z -ζ) (z -ζ) = 1 + ϕ 3 ζ ϕ 2 - ζ g ′′ (ζ) g ′ (ζ) .
The asymptotic behaviour of r(z) around ζ mechanically obtained to be

r(z) = z→ζ h(z -ζ) (z -ζ) -1- ϕ 3 ζ ϕ 2 + ζ g ′′ (ζ) g ′ (ζ)
for some function h that is analytic at 0 and h(0) = 0. Then

r n = n→∞ κ 1 ζ n n -1+ ζ ϕ 3 ϕ 2 - ζ g ′′ (ζ) g ′ (ζ)
From there the result follows. Then it is possible to write

b(z) = c(z)r(z), c(z) = z 0 a ′ (t) (g(t) -1) r(t)
The rest of the calculations follow by using the method used in the end of Section 5.5.

Finally, to obtain in the asymptotic form given by Theorem 5.2.6, the function

f (z) is defined by f (z) = ∞ i=1,i∈r z i
i! while in the proof that we did we used g(z) that is defined as

g(z) = ∞ i=1,i∈r (ϕ 2 z) i i! .
We see that, the solutions ζ i of g(z) -1 have the form ζ i = ρ i /ϕ 2 while the solutions of f (z) -1 are just the ρ i . Now in the proof ζ was the singularity of smallest modulus of g(z) -1. Then ρ = ϕ 2 ζ, is the singularity of smallest modulus of f (z) -1. Therefore, it suffices to replace ζ by ρ/ϕ 2 and also

g ′′ (ζ)/g ′ (ζ) = ϕ 2 f ′ (ρ)/f ′′ (ρ)
in the asymptotics of b n to get the exact form.

Asymptotic analysis for r = [m]

[Proof of Theorem 5.2.8]. The proof of this Theorem is the same as the one for Theorem 5.2.6. The only difference is in the treatment of δ 1 . Theorem 5.2.8 also shows us how the value of the singularity moves from 1 ϕ 2 to ln 2 ϕ 2 as we allow more leaves to evolve in the same time.

The transcendental ρ when r = N * is a rare phenomena in the asymptotic form arising from combinatorial problems. It reflects the fact that the specification of the problem is an infinite sum in this case or equivalently it is based on a particular substitution see Section 5.6. This time the function g(z) seen in ?? contains all the coefficients :

g(z) = m k=1 ϕ 2 k z k k! .
(5.17)

From ?? we have:

δ 1 = lim z→ζ (z -ζ) d 1 (z) = lim z→ζ (1 + ϕ3 z ϕ2 )ϕ 2 f (z) + 1 -(ϕ2 z) m m! -z ϕ 2 ϕ 2 f (z) + 1 -(ϕ2 z) m-1 (m-1)! -(ϕ2 z) m m! (z -ζ) ϕ 2 f (z) + 1 -(ϕ2 z) m m! (z -ζ) = (1 + ϕ3 ζ ϕ2 )ϕ 2 f (ζ) + 1 -(ϕ2 ζ) m m! -ζ ϕ 2 ϕ 2 f (ζ) + 1 -(ϕ2 ζ) m-1 (m-1)! -(ϕ2 ζ) m m! ϕ 2 f (ζ) + 1 -(ϕ2 ζ) m m! = 1 + ϕ 3 ϕ 2 ζ -ϕ 2 ζ + (ϕ 2 ζ) m ϕ 2 (m -1)! f ′ (ζ) = 1 + τ + ϕ 2 ζ -1 + ϕ 3 ϕ 2 2
.

By letting

β = ϕ 2 (ϕ 2 ζ) m (m-1)!f ′ (ζ) and ρ = ϕ 2 ζ.
We make the same shift as in the end of the previous section. We finally get τ = ρ m (m-1)!f ′ (ρ) as defined in Theorem 5.2.8.

Asymptotics when unary nodes are allowed

In this section, we see how allowing unary nodes affects the study of evolution processes. An important question directly related to this problem is how is it possible to allow unary nodes in the evolution processes (see Section 5.1 and Definition 5.2.1) that we have been studying? In fact, it is possible but we have to add a little constraint on the evolution process. We recall that the processes that we study have a notion size and that this notion size for us is the number of individuals that can develop in the next iteration step. On the level of trees, this corresponds to the number of leaves of the tree. If we allow unary nodes in all generality. so that at each iteration step all leaves that are evolving make unary nodes. The overall size of the tree does not change, and as a consequence, there is an infinite number of trees for each fixed size.

Therefore, it is possible to allow unary nodes, but we have to be careful. In fact, it is impos sible to allow unary nodes if the set of allowed repetitions is equal to one (i.e r = {1}). We will need this set to be different from {1}. We require the following additional constraint, at least one of the leaves evolving at an iteration step has to evolve into a nonunary node. This means that all other evolving leaves can make unary nodes. This also implies that the weighted degree function can not contain only unary nodes.

The recurrence on the coefficients of this model does not change Equation (5.2), we give it again:

     B 1 = 1, B n = n-1 k=1 a∈A n,k,r,ϕ (n-k)! (n-k-|a|)! |occ(a)| i=0,u i ̸ =0 ϕ u i i+1 u i ! B n-k
We write B n instead of B r,ϕ n and define, s 1 = 1

s n = ϕ 2 (n -1) ∞ i=1,i∈r ϕ i-1 1 n -1 i -1 s n-1 , for n > 1.
(5.18)

We immediately find have,

s n = ϕ n-1 2 n-1 k=1 (n -k) ∞ i=1,i∈r ϕ i-1 1 n -k -1 i -1 .
The idea now is to renormalize B n , for all n ≥ 1,

b n = B n ϕ n-1 2 n-1 t=1 (n -t) ∞ i=1,i∈r ϕ i-1 1 n-t-1 i-1 We get a new recurrence, b 1 =1 b n = n-1 k=1 a∈A n,k,r,ϕ (n -k)! (n -k -|a|)! |occ(a)| i=0,u i ̸ =0 ϕ u i i+1 u i ! • ϕ n-1-k 2 n-1 t=k+1 (n -t) ∞ i=1,i∈r ϕ i-1 1 n-t-1 i-1 ϕ n-1 2 n-1 t=1 (n -t) ∞ i=1,i∈r ϕ i-1 1 n-t-1 i-1 b n-k (5.19)
Notation. We will denote c n,k for the coefficient in front of b n-k . By analysing the coefficient of c n,k at k = 1, the possibilities for a tree of size n -1 to evolve into a tree of size n are

ϕ 2 (n -1) ∞ i=1,i∈r ϕ i-1 1 n -2 i -1 .
Therefore,

ϕ 2 (n -1) ∞ i=1,i∈r ϕ i-1 1 n -2 i -1 ϕ n-2 2 n-1 t=2 (n -t) ∞ i=1,i∈r ϕ i-1 1 n -t -1 i -1 = ϕ n-1 2 n-1 t=1 (n -t) ∞ i=1,i∈r ϕ i-1 1 n -t -1 i -1 .
So that, c n,1 = 1. From the above discussion we see that,

b n = b n-1 + ϵ n ,
where ϵ n groups all the of terms in Equation (5.19). Since they are all positive, we get imme diately: Lemma 5.9.1. The sequence b n is increasing, that is for all n ≥ 2,

b n ≥ b n-1 .
Proof. The proof is straightforward from the fact that b n = b n-1 + . . . □

Now, if we are able to show that b n is bounded to finish the proof. It would mean that:

b n ∼ n→∞ c,
for some constant c and therefore,

B n ∼ n→∞ c s n .
This is where we want to go. Let us take some upper bounds on c n,k .

c n,k ≤ ∞ i=1,i∈m ϕ i-1 1 n -k -1 i -1 a∈A n,k,r, φ (n -k)! (n -k -|a|)! |occ(a)| i=0,u i ̸ =0 ϕ u i i+1 u i ! • ϕ n-1-k 2 n-1 t=k+1 (n -t) ∞ i=1,i∈m ϕ i-1 1 n-t-1 i-1 ϕ n-1 2 n-1 t=1 (n -t) ∞ i=1,i∈m ϕ i-1 1 n-t-1 i-1 = ∞ i=1,i∈m ϕ i-1 1 n -k -1 i -1 a∈A n,k,r, φ (n -k)! (n -k -|a|)! |occ(a)| i=0,u i ̸ =0 ϕ u i i+1 u i ! • ϕ n-1-k 2 (n -k -1)! n-1 t=k+1 ∞ i=1,i∈m ϕ i-1 1 n-t-1 i-1 ϕ n-1 2 (n -1)! n-1 t=1 ∞ i=1,i∈m ϕ i-1 1 n-t-1 i-1 = a∈A n,k,r, φ (n -k)! (n -k -|a|)! |occ(a)| i=0,u i ̸ =0 ϕ u i i+1 u i ! • ϕ n-1-k 2 (n -k -1)! n-1 t=k ∞ i=1,i∈m ϕ i-1 1 n-t-1 i-1 ϕ n-1 2 (n -1)! n-1 t=1 ∞ i=1,i∈m ϕ i-1 1 n-t-1 i-1
where φ(z) = ϕ(z) -ϕ 1 z. The first inequality can be justified combinatorially, for each coefficient B n-k , by expanding a subset of leaves into nonunary nodes, we should take this into account to allow some others to make unary nodes. But as an upper bound we consider the size of the subset of leaves that has expanded into nonunary nodes to be equal to 1, and allow all other leaves to unary nodes. Then in the first equality we pull out a term from the product (from both numerator and denominator). The last equality comes from inserting the sum

∞ i=1,i∈r ϕ i-1 1 n-k-1 i-1 into n-1 t=k+1 ∞ i=1,i∈r ϕ i-1 1 n-t-1 i-1 . Lemma 5.9.2. For 3 ≤ k ≤ n -1, n-1 t=k ∞ i=1,i∈r ϕ i-1 1 n-t-1 i-1 n-1 t=1 ∞ i=1,i∈r ϕ i-1 1 n-t-1 i-1 = n→∞ O 1 n k-1 .
Proof. It comes from the fact that r = {1} and r = ∅. Therefore, the sum

n-1 t=1 ∞ i=1,i∈r ϕ i-1 1 n -t -1 i -1 , is at least linear in n for each term with 1 ≤ t ≤ k -1. □ Let us first denote q n,k = a∈A n,k,r, φ (n -k)! (n -k -|a|)! |occ(a)| i=0,u i ̸ =0 ϕ u i i+1 u i ! (n -k)! n! .
Where φ has no unarynodes. A remark is that,

q n,k = t n,k (n -k)! n! ,
where t n,k has the same form as in Section 5.6.

t n,k = a∈C n,n-k,r,ϕ |occ(a)| i=2,u i ̸ =0 ϕ u i i = a∈A n,k,ϕ (n -k)! (n -k -|a| + 1)! |occ(a)| i=2,u i ̸ =0 ϕ u i i+1 u i ! Lemma 5.9.3. When n grows, q n,k = O (1) .
Proof. From Section 5.6, for 3

≤ k ≤ n -1, we have seen that,   a∈C n,n-k,r,ϕ |occ(a)| i=2,u i ̸ =0 ϕ u i i   (n -k)! n! = O 1 n 2 , ( 5.20)
where C n,n-k,r,ϕ is C n,n-k,r,ϕ with some removed configurations namely the ones that make only binary nodes or the ones that make a single ternary with the others all binary. See Remark 5.6.2 for more details. We can the proceed as in Lemma 5.6.6. But this time,

|C n,n-k,r,ϕ | ≤ n -1 k .
And following the same steps we find that,

q n,k = t n,k (n -k)! n! = O (1) .
□ Now, we are ready, to give upper bounds on the coefficients c n,k .

Lemma 5.9.4.

c n,2 = n→∞ O 1 n 2 , c n,3 = n→∞ O 1 n 2 , and for 4 ≤ k ≤ n -1 c n,k = n→∞ O 1 n k-1 . Proof. c n,k ≤ t n,k n (n -k) ϕ n-1-k 2 n-1 t=k ∞ i=1,i∈r ϕ i-1 1 n-t-1 i-1 ϕ n-1 2 n-1 t=1 ∞ i=1,i∈r ϕ i-1 1 n-t-1 i-1 = O 1 n k-1 .
The result comes by combining Lemma 5.9.2 and Lemma 5.9.3 By a direct inspection of of c n,2 ,

c n,2 ≤ ϕ 2 2 n -2 2 + ϕ 3 n -2 1 + ϕ 1 ϕ 3 (n -2)(n -3) • ϕ n-1-k 2 n-1 t=3 (n -t) max(m) i=1,i∈m ϕ i-1 1 n-t-1 i-1 ϕ n-1 2 n-1 t=1 (n -t) max(m) i=1,i∈m ϕ i-1 1 n-t-1 i-1
We have,

ϕ n-1-k 2 n-1 t=3 (n -t) max(m) i=1,i∈m ϕ i-1 1 n-t-1 i-1 ϕ n-1 2 n-1 t=1 (n -t) max(m) i=1,i∈m ϕ i-1 1 n-t-1 i-1 = O 1 n 4 .
Finally,

c n,2 = n→∞ O 1 n 2 .
The same thing can be done for c n,3 ,

c n,3 = n→∞ O 1 n 2 . □
If we sum up all the preceding we have,

b n = b n-1 + n-1 k=2 c n,k b n-k ≤ b n-1 + b n-2 n-1 k=2 c n,k = b n-1 + b n-2 c n 2 ,
(5.21)

for some positive constant c. It comes from

n-1 k=2 c n,k = O 1 n 2 + n-1 k=4 O 1 n k-1 = O 1 n 2 Therefore, we can write a new recurrence,    g 1 = 1, g 2 = ϕ 2 , g n = g n-1 + c n 2 g n-2 ,
for n > 2.

(5.22) Lemma 5.9.5. For all n ≥ 1,

g n ≥ b n .
Proof. The proof follows Lemma 5.9.4, and the resulting upper bound on b n in Equa tion (5.21). □

Let the g(z) be the generating function of the sequence g n :

g(z) = n≥0 g n z n
It is possible to write a differential equation satisfying g(z), we find,

-cg (z) -2 ∂g (z) + (1 -z) ∂ 2 g (z) ,
with initial conditions that depend on the set r. We see directly that z = 1 is a regular singularity. The differential equation also satisfies the conditions of Theorem 2.4.18.

δ 1 = lim z→ζ (z -ζ)a 1 (z) = lim z→1 2 (z -1) (z -1) = 2.
Therefore the singular expansion is of the form,

(z -1) -1 H(z -1) + H 0 (z -1) (log(z -1)) k , with k ∈ {0, 1},
where the functions H( 0) and H 0 (0) are different from 0. Therefore,

g n ∼ n→∞ c 2 ,
where c 2 is some constant that depends on the function H(z). This concludes the proof of Theorem 5.2.7.

In fact it is possible to extend the Theorem to cases where ϕ 1 ≥ 1 and for some j > 1, ϕ j ≥ 1.

The same type of Theorem holds but with a shift on the coefficients since there appear some periodicities. In the following we give the statement of the Theorem without proof, because of the heavier notations and the fact that the proof is the same as the one that we already did.

Condition 5.9.6. Let ϕ(z) be a weighted degree function as presented in Section 3.5.1 and such that ϕ 1 ≥ 1, and for some d ≥ 2, ϕ d ≥ 1 and ϕ n = O n! n 5 . Theorem 5.9.7. Let ϕ(z) be as in Condition 5.9.6, and let r ⊂ N * , r = ∅, and r = {1}, then when n is of the form n = 1 mod (d -1),

B r,ϕ n ∼ n→∞ κ n-1 k=1,k=1mod (d-1) (n -k) ∞ i=1,i∈r ϕ i-1 1 n -k -1 i -1 ,
where κ is a constant that depends on ϕ(z) and r.

Asymptotics where no binary nodes are allowed

So far we have been studying the evolution process (Definition 5.2.1) in terms of counting and asymptotic enumeration. The two main theorems that encompasses the other results namely Theorem 5.2.6 and Theorem 5.2.7. The Theorems work when we include binary nodes (i.e ϕ 2 ≥ 1).

We have also seen in Section 5.9, that for Theorem 5.2.7, it is possible to extend the result very naturally for situations where we do not have binary nodes but there exists some j > 2, such that ϕ j ≥ 1 in Condition 5.9.6.

For cases where there are nor either unary nodes and nor binary nodes more diverse asymp totic situations appear, there is still much work to do to figure out the form of the asymptotics.

We have resumed some results in Table 5.10.

There is a paper [START_REF] Bodini | On the number of increasing trees with label repetitions[END_REF], in which the authors studied the cases when r = N * and ϕ(z) = z d for d ≥ 2. Their main Theorem gives:

Theorem 5.10.1. Let r = N * , and ϕ(z) = z d , then the class strictly monotonic Schröder tree G d , is specified by:

G d (z) = z + G d (z + z d ) -G d (z).
When n grows we get:

G d n    = 0 if n ≡ 1modk -1, ∼ n→∞ η d (m -1)! d -1 ln 2 m m 2-d ln 2 2(d-1) if n = 1 + (d -1)m.
(5.23)

We see from the Theorem that the form of the asymptotic behaviour has similarities with Corollary 5.2.10. It also reduces to it when d = 2.

For ϕ(z) = ϕ d z d with ϕ d ≥ 2, it is also quiet simple to give the asymptotics for when r = {1}.

Since the recurrence reduces to

B d 1 = 1, B d n = ϕ d B n-d+1
(5.24)

We will write B d n instead of B {1},z d for simplicity Then, for d > 2, when n is of the form n = 1 mod (d -1),

B d n = ϕ ⌊ n d-1 ⌋ d ⌊ n d-1 ⌋ k=1 (n -(d -1)k) ,
We can define a new sequence

s d n = B d n(d-1)+1
, and then,

s d n = ϕ n-1 d n-1 k=1 (n -k -1)(d -1) + 1 , Then if ϕ d = 1, the exponential generating function(EGF) of s(z) s d (z) = (1 -(d -1) z) -1 d-1 .
From which by singularity analysis,

s d n ∼ n→∞ α n! (d -1) n n -d-2 d-1 .
And then, Theorem 5.10.2.

B d n ∼ n→∞ β ( n d -1 ) ! (d -1) n d-1 n -d-2 d-1 , ϕ(z) r Theorem References z d N * Theorem 5.10.1 [BGGW20] z d {1} Theorem 5.10.2 z d 1-z {1} Conjecture 5.10.3
Table 5.10: Some asymptotics when ϕ 2 = 0 in the evolution process of Equation (5.1). andϕ(z) = z d 1-z . Let T d be the resulting class of trees. Then, 5

Open question (Stretched exponential). The parametrisation of Equation

(5.1) is r = {1}, d ≥ 2,
T d (z) = z + z d 1 -z ∂ z T d (z).
The first values of T d n for d = 2, 3, 4, 5, 6 are written in Table 5.11. The sequences of T 2 n and T 3 n can be found in EIS A059480 and EIS A059480. T 2 (z) corresponds to the model of increasing Schröder trees studied in Section 4.2 and the enumeration problem is easily solved. However, for d > 2. The asymptotic enumeration is harder and it seems to involve 5

∂ z = d dz is the classical differential operator T 2 n T 3 n T 4 n T 5 n T 6 n 1 1 1 1 1 1 0 0 0 0 3 1 0 0 0
       T d 1 = 1, T d d = 1, T d n = 0, for 1 < n < d T d n = T d n-1 + (n -d + 1) T d n-d+1 , for n > d.
(5.25)

Conjecture 5.10.3. For d ≥ 3, when n grows, we have,

T d n ∼ n→∞ β n d -1 ! (d -1) n d-1 e ( d-2 ∑ k=1 c k n ( k d-1 ) ) n -1 ,
where c k are rational constants.

We give this as a conjecture, as we were able to solve the case for d = 3 which is given below. The solution is based on an exact solution for the generating function. The cases where d > 3, can not be solved by differential equations since their orders are higher. We are able to get asymptotic expansions by a process of bootstrapping, however, this does not give a rigorous a proof. In Table 5.12, we give the expansions that we got for d = 4 and d = 5.

We show here how to solve the for d = 3. But we do not write all the details of the proof. The recurrence by Equation (5.25) gives:

       T 3 1 = 1, T 3 2 = 0, T 3 3 = 1, T 3 n = T 3 n-1 + (n -2) T 3 n-2 , for n > 3.
(5.26)

Applying a Borel transform on the recurrence gives a new recurrence that we call t n , so that:

t n = T d n n! .        t 1 = 1, t 2 = 0, t 3 = 1, t n = (n-1) n(n-1) t n-1 + (n-2) n(n-1) t n-2 for n > 3.
(5.27)

From which it is possible to write a differential equation for the generating function t(z) of

d Asymptotics 3 c 1 n 2 ! 2 n 2 e n 1/2 n -1 4 c 2 n 3 ! 3 n 3 e n 2/3 2 + n 1/3 6 n -1 5 c 3 n 4 ! 4 n 4 e n 3/4 3 + n 1/2 8 + 5 n 1/4 96 n -1
Table 5.12: Conjectured asymptotic behaviour for d = 4 and d = 5, the case for d = 3 is solved in this section the sequence t n .

(-z -1) ∂ z t (z) + ∂ 2 z t (z) + 1 with initial conditions t (0) = 0 and ∂ z (t) (0) = 1. Then we can solve this equation with a computer algebra system and find that:

t(z) = z 0 - √ 2π 2 erf √ 2 2 (x + 1) e (x+1) 2 2 + e x(x+2) 2 √ 2π 2 erf √ 2 2 e 1 2 + 1 dx,
where erf(z) is the error function which is defined for all complex z by:

erf(z) = 2 √ π z 0 e -t 2 dt.
.So that, we have:

t ′ (z) = - √ 2π 2 erf √ 2 2 (z + 1) e (z+1) 2 2 + e z(z+2) 2 √ 2π 2 erf √ 2 2 e 1 2 + 1 .
We notice that this function is entire. An expansion of t ′ (z) around z = ∞, yields:

t ′ (z) ∼ z→∞ - √ 2π 2 e 1 2 + √ 2π 2 erf √ 2 2 e 1 2 + 1 e z 2 2 +z + O 1 z .
Then by saddlepoint analysis,

[z n ]t ′ (z) = t n+1 n! ∼ n→∞ α n 2 ! 2 n 2 -1 e √ n , with α = 1/4 √ π √ 2erf 1/2 √ 2 e 1/2 - √ π √ 2e 1/2 + 2 e -1/4 .
Figure 5.12: Simulation for n ∈ {1, 400} of (Blue) T 3 n plotted against its asymptotic be haviour. (Red) T 4 n and (Green) T 5 n are plotted against their conjectured behaviour in Ta ble 5.12.

Finally, with a shift on the coefficients of t ′ (z) we have,

[z n-1 ]t ′ (z) = t n (n -1)! ∼ n→∞ β √ n n 2 ! 2 n 2 -1 e √ n , with β = 1/4 √ π √ 2erf 1/2 √ 2 e 1/2 - √ π √ 2e 1/2 + 2 e -1/4 . Multiplying by 1 n we find, t n n! ∼ n→∞ β 1 √ n n 2 ! 2 n 2 -1 e √ n ,
We find finally after multiplying t n by n! that,

T 3 n ∼ n→∞ c n 2 ! √ 2 n e √ n n , with c = 1/2 (- √ πe 1/2 + √ πe 1/2 erf(1/2 √ 2)+ √
2)e -1/4 √ π = 0.106979181603588 . . . , which is in ac cordance with Conjecture 5.10.3. Figure 5.12 shows how the asymptotic first order of T d n converges to the constant c.

Conclusion

In this chapter, we have seen how the evolution process we define, can be specialised to different classes of existing trees and several interesting new ones. We have been able to systematically enumerate and give the asymptotic behaviour of many models. However, our study falls short of giving the asymptotic behaviour of tree models where no binary nodes are allowed.

On the theoretical level, this chapter gives an interpretation for some transcendental polyno mials terms that appeared in earlier research paper. On the other hand, we give a first study of trees with weakly increasing labellings along branches.

A lot of work has still to be done for cases without binary nodes, but we tried to give directions and conjectures for future studies about this tree classes.

CHAPTER 6

Average compaction of increasing tree models Contents Do you know the land where the lemontrees grow, In darkened leaves the goldoranges glow, A soft wind blows from the pure blue sky, The myrtle stands mute, and the bay tree high? Do you know it well? It's there I'd be gone, To be there with you, O, my beloved one! Translated by azucarinho on lyricstranslate.com

Introduction

In this chapter we study the average compression rate of two tree classes. Compression of data structures is an important part in the study of data structures both on a theoretical and practical levels.

Treeshape data structures are present in a lot of places in computer science. In compilation and parsing the syntax structure of a program is a tree, in algebra systems the symbolic ex pressions have a tree structure. XML documents and other markup languages use tree data structures.

Our focusing point of view is lossless compression, where the original data structure can be perfectly recovered from the compacted one. An introduction to the subject can be found in [START_REF] Sayood | Introduction to Data Compression[END_REF].

The compression of tree structures has been studied within different fields, such that computer science, information theory and combinatorics. The idea is that in a single tree, some subtrees can be isomorphic and therefore when compressing the tree we can keep only one occurrence of a repeated subtree and put pointers to it in the other occurrences which save an important amount of spacial memory. Usually an algorithmic step called the common subexpression recognition is run to identify identical fringe subtrees (i.e. a node and all its descendants) so that only one occurrence is stored and all other are replaced by pointers to the first one.

From the previous discussion, in computer science it is more common to talk about the size of the compacted tree while in combinatorics it is more common to talk about the number of nonisomorphic subtrees of a tree. The terms are different but they mean the same thing so we could use them interchangeably. Moreover, the size in terms of number nodes of the compacted tree, corresponds also to the number of nonisomorphic subtrees of this tree. In Figure 6.1 we have depicted a plane binary tree and its compacted version, we see that the compacted version has only 5 nodes while the original had 17 nodes. We also notice that the compacted tree has no longer a tree structure but rather a structure of a DAG (directed acyclic graph).

We will study the average compression rates of plane binary trees and Pólya tree (see Sec tion 3.5 for their definitions) under what we call increasingly labelled distribution. We will see that this corresponds also exactly to the study of the average compression rate in increas ing binary trees and recursive trees, when we do not consider the labels of the trees in the compression process. Definition 6.1.1. The increasingly labelled distribution over the unlabelled rooted tree class T corresponds to the uniform distribution of treeshapes (trees obtained after removing all labels) in IT , where IT is the increasing labelled version of T .

The treeshapes in IT are exactly the trees in T , but the probability distribution is different. Since the weight of its tree shape depends on its number of increasing labellings. Therefore, it leads to putting more weights on dense trees with small depths, since these trees have many different increasing labellings. Sampling from the increasingly labelled distribution is equivalently done by sampling a tree uniformly at random in IT and then erasing its labels. In Figure 6.2 we draw plane binary trees of size 3 with their distribution according to both uniform and increasingly labelled distributions. If we let X n be a random plane binary tree of size n sampled according to the increasingly labelled distribution. Then

P(X n = t) = ℓ(t) IB n ,
where ℓ(t) denotes the number of ways to increasingly label the treeshape t and IB n is the total number of increasing binary trees of size n.

There, a random plane binary tree under increasingly labelled distribution can be sampled by taking a tree uniformly at random from increasing binary trees (also binary search trees) and erasing its labels. See Section 3.5.5, for a discussion on building a uniform tree in classes of increasing trees.

Figure 6.3: A uniformly sampled plane binary tree with 500 internal nodes: black fringe subtrees are removed by the compaction process; the red head is of size 250.

Another example, is the one of Pólya trees, a random tree underincreasingly labelled distri bution corresponds to uniformly picking a tree in the class of recursive trees.

One of the main parameter of interest in information theory is the entropy of the data structure: it represents an optimal lower bound on the average number of bits required to represent the data structure: see for example [START_REF] Thomas | Elements of Information Theory[END_REF] for an introduction to the subject. For trees, the entropy of some models of plane trees have been studied in particular in [CMST17, GMS18, MTS18].

An analysis of a model of nonplane binary trees has been presented in [START_REF] Cichoń | On symme tries of nonplane trees in a nonuniform model[END_REF]. The au thors focus on the number of symmetry nodes (internal nodes having two isomorphic subtrees as children) and its relation with Rényi entropy. As it has been said before, these questions are well defined when the probability distribution over the trees is defined. The last reference focuses on increasingly labelled (also binary search tree) distribution model. Likewise, it can be rephrased as the binary increasing tree model we will deal with in Section 6.3, as it was already pointed out in [START_REF] Bergeron | Varieties of increasing trees[END_REF].

A seminal paper of Flajolet et al [START_REF] Flajolet | Analytic variations on the common subexpression problem[END_REF] considers the compaction ratio of binary trees under uniform distribution. They prove that the average size of the compacted result is αn/ log n with a computable constant α. In the end of the paper the authors finally state that their analysis is fully adapted to all families of simple trees (see Section 3.5.1) under uniform distribution.

We recall that in the context of simple trees under uniform distribution of size n, the typical depth is of order √ n (this is the case for the binary trees). BousquetMélou et al.

[BMLMN15] present the complete proof for the compaction quantitative analysis of all varieties of simple trees and apply it experimentally on XMLtrees. Finally, in [START_REF] Ralaivaosaona | Repeated fringe subtrees in random rooted trees[END_REF] the authors are inter ested in the number of fringe subtrees with at least r occurrences in a random simple tree under uniform distribution. This approach is an extension of the previous results where it was dealt with subtrees appearing at least once (thus for r = 1).

As we have seen, simple trees under uniform distribution models have been well studied in terms of compression rate. However, not much has been done for these trees under other distributions and particularly under the increasingly labelled distribution. This distribution is particularly interesting, because it includes other models like random search trees and additionally these trees have a different shape on average, and their depth is typically of order log n in contrast with √ n under the uniform model. In Figure 6.3 we have represented a uniformly sampled binary tree with 500 internal nodes.

If we compact it then all the fringe subtrees in black are removed and only the red structure is kept with addition of several pointers (that are not represented in the figure). The remaining red tree is of size 250. In contrast Figure 6.4 shows a binary search tree structure of size 500, with 172 nodes (represented in red) remaining after compaction. The gain compaction between the two structures is quite important.

Our study focuses on the number of nonisomorphic subtrees in a tree and this corresponds also to the size of the compacted tree (also called minimal DAG representation in [START_REF] Zhang | Redundancy analysis in lossless compression of a binary tree via its minimal DAG representation[END_REF]). This parameter is different from the study of symmetry nodes mentioned above (see [START_REF] Cichoń | On symme tries of nonplane trees in a nonuniform model[END_REF]), since there symmetries happen if an internal node has two isomorphic children (a local sym metry) whereas the number of nonisomorphic subtrees of a tree is capturing a global sym metry. Using the results in [START_REF] Cichoń | On symme tries of nonplane trees in a nonuniform model[END_REF] to design and analyse a data compression algorithm leads to constant compression rate on average, as was already shown in [START_REF] Flajolet | Patterns in random binary search trees[END_REF]. In our case, we gain on average at least a logarithmic factor.

The distribution on plane binary trees we use is the same as the one of [START_REF] Cichoń | On symme tries of nonplane trees in a nonuniform model[END_REF][START_REF] Magner | Lossless Compression of Binary Trees With Correlated Vertex Names[END_REF].

Even if the analysed parameters are not the same, the mathematical tools are based for all such studies on differential equation analyses due to the underlying distribution on trees.

We are interested in the analysis of the compaction ratio, relating the treesize and its minimal DAG size as in [START_REF] Zhang | Redundancy analysis in lossless compression of a binary tree via its minimal DAG representation[END_REF].

Section 6.2 is dedicated to the study of the average compression ratio of Pólya trees under the increasingly labelled distribution defined in Definition 6.1.1 which corresponds to unlabelled recursive trees. Then, in Section 6.3, we study the average compaction ratio of binary trees under the same distribution, which corresponds to unlabelled binary search trees.

Both these families have been much studied lately in both probabilities theory [Drm03, BDMdlS08, DIMR09, SM95] and in combinatorics [BFS92, KP07, PP07].

Our main contribution:

For binary trees under increasingly labelled distribution, we prove that, asymptotically, if a random tree of size n denoted X n is compacted, then the resulting structure has an average size of E(X n ) = Θ n ln n .

For Pólya trees under increasingly labelled distribution, we prove that, asymptotically, if a random tree of size n denoted Y n is compacted, then the resulting structure has an average size of

C 1 √ n ≤ E(Y n ) ≤ C 2 n ln n .
For some constants C 1 and C 2 .

We thus remark that such kind of trees are compacted in a more efficient way (in the sense of the number of remaining nodes) than the same models (plane binary tree and Pólya trees) under uniform distribution.

In Section 6.4, we present a new lossless data structure based on the compaction of binary search trees (bst). An experimental study is provided by using a prototype in python for our new data structure, the compacted bst. The experiments are very encouraging for the development of such new compacted search tree structures.

We conclude this chapter in Section 6.5 with a discussion about the reason why we were not able to show a stronger result. The discussion leads us to make to formulate conjectures and open questions for future works.

Average compression of Pólya trees under increasingly labelled distribution

The class of recursive trees has been studied by Meir and Moon [START_REF] Meir | On the altitude of nodes in random trees[END_REF] (see Section 3.5.4 for more details). These trees are models in several contexts as e.g. for the study of epi demic spreads, and thus many quantitative study have focused on this family. Some details are presented either in [START_REF] Drmota | Random trees: An interplay between combinatorics and probability[END_REF] or in [START_REF] Flajolet | Analytic Combinatorics[END_REF]. Using the classical operators from Analytic Combinatorics presented Section 2.2, recursive trees can be specified by the boxed product (also called Greene operator) seen in Section 2.2.2,

T = Z □ ⋆ Set(T ), (6.1)
meaning that the structure of a recursive tree (in the class T ) is defined as a root Z attached to a set of recursive trees (the set may be empty, then Z is a leaf) and such that the whole structure is canonically labelled (1,2,…, up to the size). The box in the boxed product indicates that the lowest label goes into the left component (the atom in this case). The atoms Z in the structure are therefore labelled increasingly on each path from the root of the tree to any leaf. In Figure 6.5 we have represented a recursive tree structure containing 5,000 nodes on Figure 6.5: (left) a uniformly sampled nonplane recursive tree of size 5,000: black fringe subtrees are removed by the compaction; (right) the red head is of size 663 the lefthand side. It has been uniformly sampled among all trees with the same size. The original root of the tree is represented using a small circle •. On the righthand side we have depicted the nodes that are kept after the compaction of the latter tree. There are only 663 nodes remaining.

Let the EGF of T (z) be:

T (z) = n≥1 T n z n n! ,
where T n corresponds to the number of trees containing n nodes i.e. of size n. We get directly from the specification Equation (6.1) that:

T (z) = z 0 exp(T (v)) dv.
The unique power series solution satisfying T (0) = 0 is

T (z) = ln 1 1 -z ,
whose dominant singularity is ρ = 1. Finally, we get the value T n = (n -1)!.

Let T n be the class of recursive trees of size n; the size of a tree τ is defined as the number of its nodes and is denoted by |τ |. Let X n be the size of the compacted tree corresponding to a random recursive tree τ of size n. In other words, X n is the number of distinct fringe subtreeshapes in τ . We define P as the set of Pólya trees. This set of trees corresponds to the possible shapes of the recursive trees, once the increasing labelling has been removed. We denote by P ≤n the set of all Pólya trees with size at most n. Then we have

E (X n ) =
t∈P ≤n P(t occurs as subtree of τ ) = t∈P ≤n 1 -P(t does not occur as subtree of τ ).

(6.2) Recall that the tree t corresponds to a treeshape, it is unlabelled, while τ is a recursive tree and therefore is increasingly labelled. Now for a given Pólya tree t ∈ P let us consider a perturbed combinatorial class S t that contains all recursive trees except for those that contain a tshape as a (fringe) subtree. The corresponding exponential generating function satisfies the differential equation

S ′ t (z) = exp(S t (z)) -P ′ t (z), (6.3)
where P t (z) = ℓ(t) z |t| |t|! , with ℓ(t) denoting the number of ways to increasingly label the tree shape t. So, using Equation (6.2) we obtain

E (X n ) = t∈P ≤n
(1 -P(t does not occur as shape of a fringe subtree of τ ))

= t∈P ≤n 1 - [z n ]S t (z) [z n ]T (z) . (6.4)
Therefore, the problem is now essentially reduced to the analysis of the asymptotic behaviour of [z n ]S t (z).

Solving Equation (6.3) we obtain the exponential generating function

S t (z) = ln 1 1 - z 0 exp(-P t (v)) dv -P t (z).
(6.5) Since P t (z) is not singular, the dominant singularity ρ of S t (z) the following equation must hold:

ρ 0 exp(-P t (v)) dv = 1. (6.6)
As exp(-P t (v)) < 1 for positive v, the dominant singularity ρ is greater than 1. Therefore we write ρ = ρ(1 + ϵ) = 1 + ϵ with suitable ϵ > 0.

Notations

Before we proceed, let us introduce some frequently used notations: For the size and the weight of a Pólya tree t we use

k = |t| and w(t) = ℓ(t) |t|! , respectively. Moreover, let G(z) := z 0 e -Pt(v) dv = z 0 e -w(t)v k dv.
if z ≥ 0 and its complex continuation if z is not a nonnegative real number. With this notation Equation (6.6) reads as G(1 + ϵ) = 1. By expanding the integrand, we obtain

G(z) = ℓ≥0 (-w(t)) ℓ z ℓk+1 (ℓk + 1) • ℓ! ,
which shows that G(z) is an entire function.

How to proceed

Taking a random recursive tree of size n, we are interested in the asymptotic behaviour of the size of the compacted tree issued from the compaction of the recursive one. In order to obtain bounds for this compacted size we proceed as follows: First, in Lemma 6.2.1, we compute a upper bound for ρ.

Then, in Lemma 6.2.4, we provide asymptotics for the nth coefficient of the generating function S t (z) when n tends to infinity, thereby showing that the error term is uniform in the size k of the "forbidden" tree t.

The average size of a compacted tree corresponding to a random recursive tree is expressed as a sum over the forbidden trees. Thereby, the two cases, where the size k of the forbidden tree t is smaller or larger than log n are treated in a different way: Upper bounds for the size of the compacted tree are derived in Proposition 6.2.6 (small trees) and Proposition 6.2.7 (large trees). Finally, Proposition 6.2.9, gives a (crude) lower bound for the size of the compacted tree.

Lemma 6.2.1. Let S t (z) be the generating function of the perturbed combinatorial class ( cf. Equation (6.3) of recursive trees that do not contain a subtree of shape t and ρ be the dominant singularity of S t (z) ( cf. Equation (6.6)). Furthermore, let k = |t| and w(t) = ℓ(t)/k! where ℓ(t) denotes the number of possible increasing labellings of the Pólya tree t. Then

ρ = 1 + ϵ < 1 + 2w(t) k .
Proof. First observe that the number of increasing labellings of the Pólya tree t is bounded by (k -1)!, which gives the very crude bound w(t) ≤ 1/k.

Next, as ρ satisfies G(1 + ϵ) = 1, it suffices to show the inequality G 1 + 2w(t) k > G(1 + ϵ).

We show the equivalent inequality

G 1 + 2w(t) k -G(1) > G(1 + ϵ) -G(1).
Then we have

G(1 + ϵ) -G(1) = 1 - 1 0 e -w(t)v k dv ≤ 1 - 1 0 (1 -w(t)v k ) dv = w(t) k + 1 .
On the other hand, if k ≥ 3, then we have the lower bound

G 1 + 2w(t) k -G(1) ≥ 2w(t) k exp -w(t) 1 + 2w(t) k k ≥ 2w(t) k exp -w(t) 1 + 2 k 2 k = w(t) k • 2e -2w(t) > w(t)
k + 1 which implies the assertion. In the course of this chain of inequalities we used w(t) < 1/k and then 1 + 2 k 2 k < 2 (for k ≥ 3) in the second line, then again w(t) < 1/k, and finally k ≥ 3 and 2e -2/3 > 1.

If k = 2, then t is a path of length one and therefore w(t) = 1/2. This gives explicitly 3/2 1 e -v 2 /2 dv > 1/6 which is easily verified. □ Corollary 6.2.2. With the notations of Lemma 6.2.1 we have the following asymptotic rela tion:

ρ = 1 + ϵ ∼ 1 + w(t) k , as k → ∞. Proof. Write G(z) as G(z) = z + R(z) with R(z) = ℓ≥1 (-w(t)) ℓ z ℓk+1 (ℓk + 1) • ℓ! (6.7)
As ρ = 1 + ϵ is the smallest positive solution of G(z) = 1, it is the smallest positive zero of z -1 + R(z). From Lemma 6. k .

Now we are able to derive a uniform asymptotic expression for the coefficients of S t (z).

Lemma 6.2.4. Let S t (z) be the generating function of the perturbed class of recursive trees seen in Equation (6.5). Then for sufficiently small δ > 0 we have

[z n ]S t (z) = ρ-n n 1 + O 1 √ ln n , as n → ∞,
which holds uniformly for D ≤ |t| ≤ n, where D > 0 is independent of n and sufficiently large.

Proof. Recall that by Equation (6.5) we have

S t (z) = ln 1 1 -G(z)
-P t (z). (6.9)

Since G(z) is an entire function, the singularities of S t are exactly the zeros of G(z) -1. Therefore, consider z 0 such that G(z 0 ) = 1 and write G(z) = z + R(z) with R(z) as in Equation (6.7). Then

|R(z 0 )| ≤ 1 k + 1 ℓ≥1 |w(t)| ℓ |z 0 | kℓ+1 ℓ! < 1 k (e |w(t)||z 0 | k -1) (6.10)
The first step is to show that G(z) -1 does not have any zeros in a sufficiently large domain.

We have to approach this in three steps, each enlarging the domain.

Assume first that |z 0 | ≤ 1 + e-1 k . As the dominant singularity of S t (z) is ρ and ρ > 1, we must have |z 0 | > 1. Thus, the upper bound on |z 0 | and Equation (6.10) imply

1 -z 0 = R(z 0 ) = O 1/k 2 .
(6.11)

On the other hand, R(z) ∼ -w(t) k z k 0 and 1 -z 0 ∼ -w(t)/k because of Corollary 6.2.2. Thus z 0 is asymptotically equal to a kth root of unity. But then z 0 = ρ, because the distance between the other kth roots of unity and 1 is greater than 1/k, which contradicts Equa tion (6.11).

Now assume that |z

S t (z) = ln 1 1 -G(z) -P t (z) = -ln 1 - z ρ -ln(ρ G(z)) -P t (z),
where, apart from the first summand, there are no singularities in |z| ≤ 1 + ln k k . Expanding the logarithm gives

[z n ]S t (z) = ρ-n n 1 + O nρ n [z n ] ln G(z) (6.12)
and we want to estimate [z n ] ln G(z) using Cauchy's estimate. Unfortunately, G(z) is not uniformly bounded in k, so we have to analyse G(z) a little more.

For applying Cauchy's estimate on the remainder function in Equation (6.12) we use the integration contour |z| = 1 + ln k+ln ln ln k k . On this contour, we have

1 k ≤ |G(z) -1| ≤ |z -1| + |R(z)| ≤ 3 + ln k k , ln k k < |z -ρ| < 3.
Since G(z) = (G(z) -1)/(z -ρ), this implies | ln G(z)| ≤ ln k + ln 3. Consequently, by Cauchy's estimate we get

[z n ] ln G(z) = O 1 + ln k + ln ln ln k k -n ln k .
Finally, if k is sufficiently large, then

ρn 1 + ln k + ln ln ln k k -n ln k ≤ 1 + ln k + ln ln ln k k -n ≤ 1 + ln n + ln ln ln n n -n = O 1 n √ ln n ,
which yields the desired result after all. □ Remark 6.2.5. Within this section many logarithms that occur are with respect to the base 1 σ , where σ ≈ 0.338 denotes the dominant singularity of the generating function of Pólya trees ( cf. [FS09, Section VII.5]). To ensure a simpler reading we omit this base subsequently and just write log n instead. In order to distinguish, the natural logarithm will always be denoted by ln n. Now we decompose the sum Equation (6.4) into

E (X n ) = t∈P ≤n k<log n 1 - [z n ]S t (z) [z n ]T (z) + t∈P ≤n k≥log n 1 - [z n ]S t (z) [z n ]T (z) , (6.13)
and investigate the two sums individually, starting with the leftmost one, whose summands can be estimated by 1.

Proposition 6.2.6. The first sum in (Equation (6.13)) behaves asymptotically as

t∈P ≤n k<log n 1 - [z n ]S t (z) [z n ]T (z) = n→∞ O n (log n) 3 .
Proof. Remember that we have set k := |t|. Furthermore, we denote by P (z) the gener ating function of Pólya trees and by σ its dominant singularity. Then

t∈P ≤n k<log n 1 - [z n ]S t (z) [z n ]T (z) ≤ t∈P ≤n k<log n 1 = k<log n [z k ]P (z) ∼ 1 1 -σ [z ⌊log n⌋ ]P (z) = O σ -⌊log n⌋ (log n) 3 .
Since log n has the base 1/σ, we estimate σ -⌊ln n⌋ ≤ n, which completes the proof. □

Now we are able to estimate the asymptotic behaviour of the second sum in Equation (6.13).

Proposition 6.2.7. Let P ≤n denote the class of Pólya trees of size at most n. Then

t∈P ≤n k≥log n 1 - [z n ]S t (z) [z n ]T (z) = n→∞ O n log n .
Proof. Using Lemma 6.2.4 we get, when n tends to infinity, that

[z n ]S t (z) [z n ]T (z) ∼ n→∞ ρ-n = (1 + ϵ) -n ,
uniformly in |t| = k. Thus,

t∈P ≤n k≥log n 1 - [z n ]S t (z) [z n ]T (z) ∼ n→∞ t∈P ≤n k≥log n 1 -(1 + ϵ) -n .
By means of the Bernoulli inequality we get

t∈P ≤n k≥log n 1 -(1 + ϵ) -n ≤ t∈P ≤n k≥log n n • ϵ,
which by use of Lemma 6.2.1 can be further simplified to

t∈P ≤n k≥log n n • ϵ ∼ n→∞ n k=log n t∈P ≤n |t|=k n • w(t) k = n k=log n n k t∈P ≤n |t|=k w(t).
Using the fact that

t∈P ≤n |t|=k w(t) = [z k ]T (z) = 1 k , we further get n k=log n n k t∈P ≤n |t|=k w(t) = n k=log n n k 2 = Θ n ∞ log n 1 x 2 dx = Θ n log n .
Thus the statement is proved. □ Theorem 6.2.8. Let X n be the size of the compacted tree corresponding to a random recursive tree τ of size n. Then

E (X n ) = n→∞ O n log n .
Proof. The result follows directly by combining the previous propositions. □ Finally, we now prove a lower bound for the average size of the compacted tree based on a random recursive tree of size n. Proposition 6.2.9. Let P ≤n denote the class of Pólya trees of size at most n. Then

t∈P ≤n k≥log n 1 - [z n ]S t (z) [z n ]T (z) = n→∞ Ω √ n .
Proof. First, we use the inequality

(1 + ϵ) -n ≤ exp -nϵ + nϵ 2 2
in order to estimate , x ≥ 0, is a concave nonnegative function with a zero in the origin and w(t) > 0 for all t, we can estimate the inner sum in (Equation (6.14)), which yields

t∈P ≤n k≥log n 1 - [z n ]S t (z) [z n ]T (z) = t∈P ≤n k≥log n 1 -(1 + ϵ) -n ≥ k≥log n t∈P ≤n |t|=k 1 -e -nϵ+nϵ
k≥log n t 1 -e -nϵ+nϵ 2 /2 ≥ k≥log n 1 -exp -n t ϵ + n 2 ( t ϵ) 2 .
Note that ϵ depends on t, and that

t ϵ ∼ n→∞ t w(t) k = 1 k t w(t) = 1 k 2 .
Thus, we get

t∈P ≤n k≥log n 1 - [z n ]S t (z) [z n ]T (z) ≥ k≥log n 1 -exp - n k 2 + n 2k 4 ∼ n→∞ ∞ ln n 1 -exp - n x 2 + n 2x 4 dx = √ n ∞ √ n log n 1 -exp - 1 y 2 + 1 2ny 4 dy.
Since the integral is convergent this gives a lower bound that is Θ( √ n). □

Average compression of plane binary trees under increasingly labelled distribution

Plane binary increasing trees have a classical specification in the context of Analytic Com binatorics, once again by using the Greene operator, or boxed product, allowing to define increasing labelling constraint for decomposable objects. Thus the specification of this class

T is T = Z □ ⋆ (1 + T ) 2 .
(6.15) This specification defines a tree to be rooted with an atom Z associated to a pair of elements that are either the empty element (representing no subtree) or a subtree itself from the class T . Once again the operator • □ ⋆ • ensures the fact that the smallest available label must be used for the atom Z.

In Figure 6.6 we have represented on the lefthand side a plane increasing binary tree structure containing 5.000 nodes. It has been uniformly sampled among all trees with the same size. The original root of the tree is represented using a small circle •. On the righthand side, we have depicted the nodes that are kept after the compaction of the latter tree. It remains only 1,361 nodes. Figure 6.6: (left) a uniformly sampled (plane) increasing binary tree of size 5,000: black fringe subtrees are removed by the compaction; (right) the red head is of size 1,361 By using the symbolic method [START_REF] Flajolet | Analytic Combinatorics[END_REF], the latter specification Equation (6.15) translates as

T (z) = z 0 (1 + T (v)) 2 dv,
in terms of T (z) the exponential generating function for T . We can also rewrite it as a differential equation

T ′ (z) = (1 + T (z)) 2 ,
with T (0) = 0

The equation can be solved such that

T (z) = z 1 -z ,
with the dominant singularity ρ = 1.

The exponential generating function S t (z) of the perturbed class of plane increasing binary trees that do not contain the treeshape t (where t is a nonlabelled binary tree) as a fringe subtree, fulfils the equation

S ′ t (z) = (1 + S t (z)) 2 -P ′ t (z)
with S t (0) = 0 (6.16)

where

P t (z) = ℓ(t)z |t| |t|!
and ℓ(t) denotes the number of ways to increasingly label the plane binary tree t. The quantity ℓ(t) is also called the hook length of t and it is well known that ℓ(t) equals |t|! divided by the product of the sizes of all fringe subtrees of t (cf. e.g. [START_REF] Donald | The art of computer programming[END_REF]p.67] or [START_REF] Bodini | A Quantitative Study of Pure Parallel Processes[END_REF]). We first start with a lemma establishing an upper bound for the normalised hook length. Lemma 6.3.1. Let t be a binary tree of size k. By defining the weight of the tree t as w(t) := ℓ(t) k! , where ℓ(t) denotes the hook length of t, we have

w(t) ≤ 1 2 k-2 .
Proof. Recall that the hook length equals |t|! divided by the product of the sizes of all fringe subtrees s of t. If we write s ≤ t to say that s is a fringe subtree of t, then this means that w(t) = 1/ s : s≤t |s|. Consider now a tree t. If k = 1, then t is a single node and hence w(t) = 1. Otherwise, the root of t has children being roots of fringe subtrees. If s ≤ t, then either s = t and so |s| = k or s is one of the fringe subtrees of one of the subtrees rooted at a child of the root of t. Therefore we assume that the result is correct until k -1.

w(t) = 1 k w(t ′ ) if
Let t be a binary tree of size k. If the root of t has only one child t ′ of size k -1, then by induction we obtain

w(t) = w(t ′ ) k ≤ 1 k 2 k-3 ≤ 1 2 k-2 .
Otherwise, the root of t has two children. Let us denote the corresponding fringe subtrees by t ℓ of size ℓ and t r of size k -ℓ -1, (with ℓ < k). By the induction hypothesis, we have w(t ℓ ) ≤ 1/2 ℓ-2 and w(t r ) ≤ 1/2 k-ℓ-3 and thus

w(t) = 1 k w(t ℓ )w(t r ) ≤ 1 k 1 2 k-5 = 8 k 1 2 k-2 , which is smaller than 1/2 k-2 for k ≥ 8. □
Finally, note that the inverse term by term of our sequence corresponds to the sequence stored as EIS A132862.

By the same combinatorial argument as in the previous section we know that S t (z) has a unique dominant singularity ρ, which is greater than the dominant singularity ρ = 1 of T (z). Thus, we set again ρ = ρ(1 + ϵ) = 1 + ϵ. Since Equation (6.16) is a Riccati differential equation (cf. [START_REF] Lindsay | Ordinary Differential Equations[END_REF] for a background on Riccati equations), we use the ansatz S t (z) = -u ′ (z)

u(z)
to get the transformed equation

u ′′ (z) -2 u ′ (z) + (1 -w(t)kz k-1 ) u(z) = 0, (6.17)
where we use the same abbreviations as in the previous section, namely k := |t| and w(t) := ℓ(t) k! . Note that the condition S t (0) = 0 implies u ′ (0) = 0 and u(0) = 0.

The singularities of a function u(z) solving a linear differential equation (with polynomial coefficients) are given by the singularities of the coefficient of the highest derivative, i.e., in our case the coefficient of u ′′ (z), which is 1. The reader can refer to Miller [START_REF] Peter | Applied Asymptotic Analysis[END_REF] for details. Thus, we can conclude that u(z) is an entire function. As a direct consequence we know that the singularities of S t (z) are given by the zeros of u(z) (that are not zeros of u ′ (z)) and are therefore poles. More precisely the dominant singularity ρ must be a simple pole for S t (z), since for u(z) = (ρ -z) l v(z), (such that ρ is not a zero of v(z)), it follows that

u ′ (z) = -(ρ -z) l-1 v(z) + (ρ -z) l v ′ (z). Thus S t (z) = l ρ -z - v ′ (z) v(z) ,
which implies

S t (z) ∼ z→ρ l/ρ 1 -z/ρ .
Taking the derivative we get

S ′ t (z) ∼ 1 ρ2 l (1-z/ρ) 2 .
Plugging in the asymptotic expressions for S t and S ′ t in the original differential Equation (6.16) we get

1 ρ2 l 1 -z ρ 2 ∼ z→ρ 1 + l/ρ 1 -z ρ 2
, since the monomial P t is analytic in ρ. Comparing the main coefficients yields l = 1, and thus ρ is a simple zero of the function u(z) and

S t (z) ∼ z→ρ 1 ρ -z .

How to proceed

As in the previous section, we have a singularity ρ = 1 + ϵ with ϵ > 0 depending on t, or k. In order to get results on the average size of the compacted tree of a random increasing binary tree we proceed similarly to the recursive tree case. Lemma 6.3.3 gives an asymptotic expression for ρ that quantifies its dependence on t, when the size k of the "forbidden" tree tends to infinity.

As a next step, Lemma 6.3.4 shows that S t (z) has a unique dominant singularity ρ on the circle of convergence, which is used in Lemma 6.3.5 to obtain the asymptotic behaviour of the coefficients of the generating function S t (z).

Again, the average size of a compacted tree can be represented as a sum over the forbidden trees, where we distinguish between the two cases whether the size of the trees is smaller or larger than log n in order to get an upper bound (see Proposition 6.3.7 and Proposition 6.3.8). This time the lower bound is obtained in Theorem 6.3.10 by carefully analysing the sum bounds and which uses estimate for the weights w(t) (see Lemma 6.3.1). The final Θ result is then obtained as an immediate corollary.

We start from the equation u ′′ (z) -2 u ′ (z) + (1 -w(t)kz k-1 ) u(z) = 0 with the initial conditions u(0) = γ, and u ′ (0) = 0. The value γ can be chosen arbitrarily, as S t (z) = γu ′ (z)/(γu(z)), and thus, γ cancels. For simplification reasons in the following we choose u(0) = -1 together with the initial condition u ′ (0) = 0.

Lemma 6.3.2. The function u(z) defined by the differential Equation (6.17) and the initial conditions u(0) = -1 and u ′ (0) = 0 satisfies

u(z) =ze z m≥0 w(t)k (k + 1) 2 m 1 m! (m + α) m z (k+1)m -e z m≥0 w(t)k (k + 1) 2 m 1 m! (m -α) m z (k+1)m ,
where (x) m denotes the falling factorials (x) m = x(x -1) • • • (x -m + 1) and α = 1/(k + 1).

Before starting with the proof, note our computer algebra system suggests a solution of Equa tion (6.17) as a linear combination of Bessel functions. Before proving the latter statement, let us recall the context of Bessel functions. The reader can refer to the book of Bender and Orszag [START_REF] Carl | Advanced Mathematical Methods for Scientists and Engi neers: Asymptotic methods and perturbation theory[END_REF] for more details. The ordinary differential equation

z 2 y ′′ (z) + z y ′ (z) + (z 2 -α 2 ) y(z) = 0,
with α not being an integer is such that the solutions y(z) are linear combination of the Bessel functions J α (z) and Y α (z) defined as

J α (z) = ∞ n=0 (-1) n n! Γ(n + α + 1) z 2 2n+α and Y α (z) =
J α (z) cos(απ) -J -α (z) sin(απ) .

Proof. In order to be closer to the Bessel equation, we define a new function,

y(z) := u(z) • exp(-z)/ √ z,
thus we get an new equation for y(z): . After simplification we obtain

y ′′ (z) + 1 z y ′ (z) - 1 4z 2 + w(t)kz k-1 y(z) = 0, with lim z→0+ y(z) = -∞
β 2 y ′′ (β) + β y ′ (β) + β 2 - 1 (k + 1) 2 y(β) = 0, with β = 2 √ -w(t)k k+1
t (k+1)/2 . We recognise the Bessel equation and thus y(β) is a linear com bination of the functions J α (β) and Y α (β).

A first remark is necessary while reading the expression for u(z) = √ z exp(z)y(z). At a first sight, it seems that the solution is not analytic at 0 due to the factor √ z. But this is only an artefact in the way we present u(z) through a linear combination of Bessel functions. We recall that using Equation (6.17) we previously proved that u(z) is an entire function.

Let us now introduce the following functions

f (z) = √ z exp(z)J α 2 βz 1 2α and f (z) = √ z exp(z)J -α 2 βz 1 2α
,

with β := √ -w(t)k k+1
and α := 1 k+1 . Due to the relationship between the function u(z), y(β) and the Bessel functions, we deduce u(z) is a linear combination of the functions f (z) and f (z). Let us write first it as u(z) = λf (z) + λ f (z) and now let us find both constants λ and λ. Using the series expression for J • (•) we notice both functions f (z) and f (z) are analytic and can be expanded around 0 as

f (z) = βα 1 Γ(1 + α) z + . . . and f (z) = β-α 1 Γ(1 -α) + β-α 1 Γ(1 -α) z + . . . .

Thus we deduce

u(0) = -1 = λ β-α 1 Γ(1 -α) , and u ′ (0) = 0 = λ βα Γ(1 + α) + λ β-α Γ(1 -α) .
By using Γ(1+α) Γ(m+1+α) = 1 (m+α)m , where (x) m denotes the falling factorials (x) m = x(x -1) . . . (x -m + 1), we conclude

u(z) =ze z m≥0 w(t)k (k + 1) 2 m 1 m! (m + α) m z (k+1)m -e z m≥0 w(t)k (k + 1) 2 m 1 m! (m -α) m z (k+1)m .

□

We are now ready to analyse the dominant singularity of S t (z).

Lemma 6.3.3. Let S t (z) be the generating function of the perturbed combinatorial class of plane increasing binary trees that do not contain the shape t as a subtree (of size k). With ρ denoting the dominant singularity of S t (z), we get

ρ = 1 + ϵ ∼ k→∞ 1 + 2w(t) k 2 ,
where w(t) = ℓ(t) k! and ℓ(t) denotes the hook length of t.

Proof. For combinatorial reasons we deduced that the equation u(z) = 0 must have a solution ρ > 1 and no smaller positive solution. When k tends to infinity we expect that ρ = 1 + ϵ tends to 1, i.e. ϵ tends to 0.

First observe that u(0) = -1 and

u 1 + 1 k 2 = 1 k 2 + O w(t) k > 0,
as w(t) decays exponentially due to Lemma 6.3.1. Thus ϵ = O (1/k 2 ) and plugging z = 1+ϵ into u(z) = 0 gives then

ϵ + (1 + ϵ) k+1 w(t)k (k + 1) 2 1 + ϵ 1 + α - 1 1 -α = O w(t) 2 k 2 .
This implies ϵ -2w(t)/k

< |z| < 1 + (2-δ) ln k k .
Proof. First let us remember that the singularities of S t (z) are given by the zeros of the function u(z) that is defined in Lemma 6.3.2. Now let us write ũ(z) := u(z) exp(-z) and note that u(z) and ũ(z) have the same zeros. Thus, in the remainder of this proof we investi gate ũ(z), which can be written as ũ(z) = zF (z) -G(z) with

F (z) = m≥0 w(t)k (k + 1) 2 m 1 m! 1 (m + α) m z (k+1)m
, and

G(z) = m≥0 w(t)k (k + 1) 2 m 1 m! 1 (m -α) m z (k+1)m ,
still with α := 1/(k + 1). Therefore we get

|F (z) -G(z)| = m≥0 w(t)k (k + 1) 2 m 1 m! 1 (m -α) m - 1 (m + α) m z (k+1)m = O w(t) k α |z| k+1 = O w(t) k 2 |z| k+1 . Now, let us rewrite ũ(z) as ũ(z) = (z -1)F (z) + F (z) -G(z),
(6.18) set |z| = 1 + η and perform a distinction of two cases:

• η = O (1/k):
This implies |z| k+1 = Θ(1) for k tending to infinity. Thus F (z) ∼ 1, G(z) ∼ 1, and then F (z) -G(z) tends to 0 when k tends to infinity. Furthermore, Equation (6.18) implies ũ(z) ∼ z -1. The equation ũ(z) = 0 therefore yields z -1 ∼ F (z) -G(z), which is O (w(t)/k 2 ). Since we know that ρ ∼ 1 + 2w(t) k 2 we get |z -1| = Θ(ρ -1).

But for zeros z 0 of ũ(z) with

|z 0 | = 1 + o (1/k) we know z 0 -1 ∼ (2w(t)/k 2 ) • z k 0 ∼ 2w(t)/k 2 , which is equivalent to z k 0 ∼ 1. Hence z 0 ∼ k √ 1 = cos 2π k + i sin 2π k and ρ k √ 1 ∼ 1 + 2w(t) k 2 1 - 2π 2 k 2 + i 2π k ∼ 1 + i 2π k ,
which is a contradiction to z 0 -1 ∼ 2w(t)/k 2 . Thus, the function ũ(z) has no zeros for ρ

< |z| ≤ 1 + O (1/k). • η = C k /k, with C k ≤ (2 -δ) ln k,
(z) = z -1 + o(w(t)) ∼ z -1. Since |z| = 1 + η we have |z -1| ≥ C k /k and because of o(w(t)) = o (1/k) we know that ũ(z) cannot be zero in ρ < |z| < 1 + ((2 -δ) ln k)/k.

□

Now we are interested in the ratio [z n ]S t (z)/[z n ]T (z), which corresponds to the probability that a random plane binary tree of size n does not contain the binary tree shape t as a fringe subtree.

Lemma 6.3.5. Let T (z) be the generating function of plane increasing trees and S t (z) the generating function of the perturbed class that has the dominant singularity ρ. Then, for any η > 0 we have

[z n ]S t (z) [z n ]T (z) = n→∞ ρ-n-1 1 + O ln n n 1-η , uniformly for D ≤ k ≤ n, if D is sufficiently large (but independent of n).
Proof. First, let us remember that ρ is a unique zero of the function u(z). Thus, we can write

u(z) = 1 - z ρ v(z), (6.19)
with v(ρ) = 0 and by Lemma 6.3.4 we additionally know that v

(z) = 0 in ρ < |z| < 1 + (2-δ) ln k k
, provided that k is sufficiently large. Furthermore, we have

u ′ (z) = 1 - z ρ v ′ (z) - 1 ρ v(z), which yields S t (z) = 1 ρ -z - v ′ (z) v(z) .
Thus,

[z n ]S t (z) = ρ-n-1 -[z n ] v ′ (z) v(z) = ρ-n-1 -(n + 1)[z n+1 ] ln v(z). (6.20)
Now, we estimate the second summand in Equation (6.20). First we use a Cauchy coefficient integral to write

n[z n ] ln v(z) = n 2πi C ln v(t) t n+1 dt, ( 6
|u(z)| ≤ m≥0 w(t) k m 1 m! z (m + α) m - 1 (m -α) m |z| (k+1)m .
Along C we have |z| (k+1)m ≤ (k 2-δ ) m and the absolute value

z (m+α)m - 1 (m-α)m can be estimated by z (m+α)m - 1 (m-α)m ≤ 2+µ (m-α)m , for some µ > 0 which results in |u(z)| ≤ m≥0 (w(t)k 1-δ ) m 2 + µ m!(m -α) m ≤ K, for a constant K independent of k.
Putting all together, we can estimate the integral Equation (6.21) by

n[z n ] ln v(z) = n 2πi C ln v(t) t n+1 dt ≤ n(ln k + ln K -ln((2 -δ) ln k) 1 + (2 -δ) ln k k -n-1 ≤ n ln n 1 + (2 -δ) ln k k -n
which implies the following asymptotic relation:

[z n ]S t (z) = ρ-n-1 1 + O n ln n 1 + (2 -δ) ln k k -n
ρn Finally, note that for sufficiently large k we have the estimate

ρ 1 + (2 -δ) ln k k -1 ≤ 1 + (2 -2δ) ln k k -1 ≤ 1 + (2 -2δ) ln n n -1
and, as

1 + (2 -2δ) ln n n -n = O n -2+2δ ,
we obtain the assertion by setting η = 2δ. □ Now, we separate the sum of interest, i.e. t∈B P [t occurs at subtree of τ ], where τ denotes a plane increasing binary tree of size n and B denotes the class of (unlabelled) plane binary trees, analogously as we did in the previous section for recursive trees.

Remark 6.3.6. Now our underlying class of treeshapes is the class of plane binary trees and no more the class of instead of Pólya trees. Since the dominant singularity of the generating function of binary trees is 1/4, we use henceforth log n as an abbreviation for the logarithm with respect to base 4.

E (X n ) = t∈B ≤n k<log n 1 - [z n ]S t (z) [z n ]T (z) + t∈B ≤n k≥log n 1 - [z n ]S t (z) [z n ]T (z) . (6.22)
In order to estimate the first sum, we proceed analogously to Proposition 6.2.6. Proposition 6.3.7. Let B(z) be the generating function associated to B, of (unlabelled) bi nary trees, whose dominant singularity is 1/4. Then asymptotically when n tends to infinity we have

t∈B ≤n k<log n 1 - [z n ]S t (z) [z n ]T (z) = n→∞ O n (log n) 3 .
Proof. A crude estimate gives

t∈B ≤n k<log n 1 - [z n ]S t (z) [z n ]T (z) ≤ t∈B ≤n k<log n 1 = k<log n [z k ]B(z) ∼ n→∞ 1 1 -1 4 [z ⌊log n⌋ ]B(z) = n→∞ O 1 4 -⌊log n⌋ (log n) 3 .
This is already sufficient, since log n = log 4 n and thus 1 4 -⌊log n⌋ ≤ n, which completes the proof. □

Estimating the second sum in (Equation (6.22)) works analogously to the proof of Proposi tion 6.2.7 in the previous section.

Proposition 6.3.8. Let B ≤n denote the class of binary trees of size at most n. Then

t∈B ≤n k≥log n 1 - [z n ]S t (z) [z n ]T (z) = n→∞ O n log n .
Proof. Using Lemma 6.3.5 we get that for n tending to infinity

[z n ]S t (z) [z n ]T (z) ∼ n→∞ ρ-n-1 = (1 + ϵ) -n-1
Thus,

t∈B ≤n k≥log n 1 - [z n ]S t (z) [z n ]T (z) ∼ n→∞ t∈B ≤n k≥log n 1 -(1 + ϵ) -n-1 .
Bernoulli's inequality then gives

t∈B ≤n k≥log n 1 -(1 + ϵ) -n-1 ≤ t∈B ≤n k≥log n (n + 1) • ϵ,
which by use of Lemma 6.3.3 further simplifies to

t∈B ≤n k≥log n (n + 1) • ϵ ∼ n→∞ n k=log n t∈B ≤n |t|=k (n + 1) • 2w(t) k 2 = n k=log n 2n k 2 t∈B ≤n |t|=k w(t).
But since the inner sum equals 1, we finally get

t∈B ≤n k≥log n (n + 1) • ϵ = n→∞ n k=log n 2n k 2 = n→∞ Θ n ∞ log n 1 x 2 dx = n→∞ Θ n log n
. □ Theorem 6.3.9. Let X n be the size of the compacted tree corresponding to a random binary tree of size n. Then

E (X n ) = n→∞ O n log n .
Proof. The result follows directly by combining the previous propositions. □ Theorem 6.3.10. Let X n be the size of the compacted tree corresponding to a random binary tree of size n. Then

E (X n ) = n→∞ Ω n log n . Proof. E (X n ) = t∈B ≤n k<log n 1 - [z n ]S t (z) [z n ]T (z) + t∈B ≤n k≥log n 1 - [z n ]S t (z) [z n ]T (z) ≥ t∈B ≤n k≥log n 1 - [z n ]S t (z) [z n ]T (z) ≥ t∈B ≤n k≥2 log n 1 - [z n ]S t (z) [z n ]T (z)
Using Lemma 6.3.5 we get that for n tending to infinity

[z n ]S t (z) [z n ]T (z) ∼ n→∞ ρ-n-1 = (1 + ϵ) -n-1
Thus,

t∈B ≤n k≥2 log n 1 - [z n ]S t (z) [z n ]T (z) ∼ n→∞ t∈B ≤n k≥2 log n 1 -(1 + ϵ) -n-1 .
We have that from Lemma 6.3.1

w(t) = w(t ′ ) k ≤ 1 k 2 k-3 ≤ 1 2 k-2 .
And we have from Lemma 6.3.3

ϵ ∼ k→∞ 2w(t) k 2 . Therefore: ϵ = k→∞ O 2 2 k-2 k 2 , and when 2 log n ≤ k ≤ n, -(n -1)ϵ = k→∞ O 1 k 2 . And thus, (1 + ϵ) -n-1 ∼ n→∞ 1 -(n -1)ϵ.
Finally,

t∈B ≤n k≥2 log n 1 -(1 + ϵ) -n-1 ∼ t∈B ≤n k≥2 log n (n + 1) • ϵ,
The rest of the calculations are the same as in the last two lines of the proof of Proposi tion 6.3.8, since the lower bound of the sum only changes by a constant which does not change the Θ result.

If we sum up what we have obtained

E (X n ) ≥ t∈B ≤n k≥2 log n 1 - [z n ]S t (z) [z n ]T (z) ,
and

t∈B ≤n k≥2 log n 1 - [z n ]S t (z) [z n ]T (z) = n→∞ Θ n log n .
And we have

E (X n ) = Ω n log n , as desired. □ Corollary 6.3.11. E (X n ) = n→∞ Θ n log n .
Proof. The proof is a direct consequence of Theorem 6.3.9 and Theorem 6.3.10. □

A compressed data structure

The probability model induced by plane increasing binary trees is the classical permutation model of binary search trees (or bst). Thus the typical shape of a uniformly sampled plane in creasing binary tree consisting of n internal nodes corresponds to the typical shape of a binary search tree built using a uniform random permutation of n elements. See Drmota [Drm09, Section 1.3.3] for details about the latter correspondence. Thus the tree structure of a typical bst has the properties we have found out in the previous section. In particular, by remov ing the information stored in the nodes the typical compaction of the tree gives a compacted structure consisting of Θ(n/ ln n) nodes (on average).

Our objective here is to desing a new lossless immutable data structure based on the tree structure induced by the compaction of a bst to which we associate some extra information in the nodes and in the edges to keep all the information and keep the same bounds to searching. We also make experiments related to this data structure in the end of this section.

The main idea is ta have an efficient database for searching elements while this databse oc cupy the least possible memory space. However, we compressing the data structure it be comes immutable and therefore only searching operations can be done on it. We can access but not modify it efficiently. Of course since the compaction is lossless, it is always possible to decompress it, modify it as we want and then compress it once again.

The bst built for example on the permutation (4, 8, 6, 2, 9, 1, 3, 7, 5) is represented with the classical tree structure in the lefthand side of Figure 6.7. This example will be used as an illustration throughout the whole section. In order to compress the tree structure, first the Figure 6.8: Labeled compacted structure associated to the original bst addition to the red pointer, the list of the labels, obtained through a preorder traversal of the substructure is stored. The latter, associated to the size of the substructures, depicted with the circled blue values, allows to obtain an efficient research. Let us present an example. We would like to know if 7 is stored in the structure. 7 is larger than 4, thus from the root we take the right edge to reach 8. The value we are looking for is smaller than 8. We take the left red pointer, and take also in consideration the list L := [6, 5, 7]. We define an index i = 0 corresponding to the actual index in the list we are interested in. Using the pointer, we reach 2 that corresponds in fact to L[0] = 6. Since 7 is larger than 6, we must follow the right child of 2, thus the new index is i := i + 2 (the list stores the values obtained through the preorder traversal), the constant 2 is the size of the left subtree attached to 2 plus 1 for the node labeled by 2. Now L [START_REF] For V, W ∈ V N | such that v = w, then let G(v) = [v 0 -v 1 ] + num(, n) and G(w) = [-v 1 ] + num(r, n) then num(t, n) = numn(r, n). because at least one of v i = w i . Therefore G(v) = G(w)[END_REF] = 7, we have reached the value we were interested in. Proposition 6.4.1. In the compacted bst containing n values, the search complexity is the same as in the bst with respect to the number of value comparisons. There may be an extra cost corresponding to the number of additions (related to the index) to traverse a list. The number of additions is at most equal to the number of comparisons to search for the value.

Proof. The number of value comparisons is exactly the same in the compacted structure as in the original bst. In fact, we just share the identical unlabeled tree structure, thus the number of comparisons does not change. For the same reason, if we must search inside a list associated to a red edge, then, for each comparison there is one addition to shift inside the list. □

In the following Figure 6.9 we have represented two experiments through our python proto type. In the lefthand side we are interested in the compaction ratio between the compressed data structure and the original bst. Here we are interested in the whole size needed in memory.

In particular the size of the integer values is counted but further the data structure size itself is important. It is this latter that is in fact compressed: in the bst many pointers are needed to reach the nodes of the tree. Many pointers and nodes are replaced in the compressed data by lists of integers that need much less memory in practice. In the figure, in the abscissa we represent the number of integers stored in the data structures; and in the ordinate, we compute the ratio between the size in memory of the compressed data structure in front of the size of its corresponding bst. Each dot corresponds to one sample, and the green curve is the average value among all samples. The experiments are starting with 250 integer values up to 20,000 with steps every 250 values, and for each size we have used 30 uniformly sampled bsts. We observe that even for small bsts, the compression ratio is very interesting, smaller than 0.5. Further we remark that the green curve looks like the theoretical result: it is very close to a function x → α/ ln x for a given α. Let us conclude this section with the following remark. The point of view we have chosen is to build first the bst and then, once the insertion and deletion process is done, we convert the bst into a compressed data structure that is used only for search. We could develop a prototype data structure that manages insertion in deletion but the efficiency would probably be much less than the one of bst, because of the substructure recognition problem.

Conclusion

For the case of binary trees under increasingly labelled distribution (see Definition 6.1.1) we were able to get a Θ result, by showing that if we have random tree of size n, denoted X n , the size of the compacted tree on average is

E(X n ) = Θ n ln n .
However, for Pólya trees under increasingly labelled distribution the size of the compacted tree is smaller asymptotically than the average size of Pólya trees under uniform distribution.

More precisely, we proved that if we have a random tree of size n, denoted Y n , the compacted tree is on average of size

C 1 √ n ≤ E(Y n ) ≤ C 2 n ln n .
For some constants C 1 and C 2 .

Numerical simulations suggest that this upper bound is already sharp, i.e., that the size of the compacted tree is Θ n ln n . However, in order to prove this conjecture, one has to find the distribution of the weights w(t), which is very challenging task for nonplane trees due to the appearance of automorphisms. In Figure 6.10 we have depicted Pólya trees that give the maximum number of labellings for the first sizes. We also gave their number of increasing labellings as well as the size of their automorphism group. Open question (Maximum number of labellings of nonplane trees). Let P n , be the set of all Pólya trees of size n and let ℓ(t) denotes the number of ways to increasingly label a tree t. We define the sequence M n as follows

M n = max({l(t) | t ∈ P n }).
The sequence M n represents the number of labellings of the tree in P n that gives the maxi mum of number increasing labellings. How does the sequence M n behaves and how does its asymptotics looks like?

Thus, obtaining the (maximum) number of labellings of nonplane trees of a given size is still work in progress, with the aim to improve the lower bounds such that we can show the Θresult.

Open question (Average compaction rate for an any class of trees under increasingly labelled distribution). Based on our theoretical and numerical results we conjecture the following.

Conjecture 6.5.1. Let T be a rooted class of trees. Let X n be a random tree of size n gener ated according to the increasingly labelled distribution defined in Definition 6.1.1. Then the average size of the compacted version of X n is

E(X n ) = Θ n ln n .
We explain the choice of the two classes of increasing trees, that were investigated within this paper. The reason to choose recursive trees and increasing binary trees was that for these two classes our computer algebra system is able to solve the differential equation defining S t (z), although in case of increasing binary trees the solution is already more complicated and involves some Bessel functions. However, in case of the third prominent class of increas ing trees, ports (plane oriented recursive trees), we did not get any explicit solution for the analogous of S t (z); thus this case is still an open question.

As a final note, remember the way we have compacted the bsts in the last section. Using a pointer to describe the erased fringe subtree and the list of the labels in a specific traversal (labels that must be kept in the compacted tree), we are able to search in the compacted struc ture efficiently. But more generally, the way we have compacted the tree can be used for all possible tree structures. In the original paper [FSS90] by Flajolet et al., the authors compact only identical fringe subtrees in simply generated trees. We focus on the tree structure and its compaction as well, but the probability model on the tree shapes is a different one, induced by the labelling. Moreover, we use a different additional information management in order to cope with labels and could there extend the compaction to labelled tree models. It is desirable to study other natural labelled tree classes and the resulting compaction ratio. The idea is to get automatic random generation algorithms directly from the combinatorial specification (symbolic method). A later paper by Flajolet, Fusy and Pivoteau extended the admissible operators in [START_REF] Flajolet | Boltzmann sampling of unlabelled structures[END_REF]. However, these papers did not include the operators for increasingly labelled structures such as increasing trees. Bodini, Roussel and Soria showed in [START_REF] Bodini | Boltzmann samplers for firstorder differen tial specifications[END_REF] how to extend the samplers to include specifications that give rise to differen tial equations of the first order as it is the case for in increasing trees. The thesis of Bodini [START_REF] Bodini | Autour de la génération aléatoire sous modèle de Boltzmann[END_REF] and Roussel [START_REF] Roussel | Génération aléatoire de structures ordonnées par le modèle de Boltzmann[END_REF] are dedicated to the study of Boltzmann samplers. The thesis of Dien [START_REF] Dien | Concurrent process and combinatorics of increasingly labeled structures : quan titative analysis and random generation algorithms[END_REF] has also a dedicated chapter for Boltzmann samplers on increasing classes of graphs.

Boltzmann sampling has the great advantage of being very fast in time complexity, they can also be tuned to generate structures with some fixed parameters (multivariate combinatorial classes) in [START_REF] Bodini | Multidimensional Boltzmann sampling of languages[END_REF] and [START_REF] Bendkowski | Polynomial tuning of multiparametric combinatorial samplers[END_REF].

However, Boltzmann samplers are less efficient for exact size sampling. Since they are based on an expected size n for the generated object. There exists some methods in order to get exact size generation with a rejection principle. But then the time complexity, in most cases the complexity becomes quadratic instead of the linear complexity for the approximate size sampling.

On the other hand the recursive generation method makes use of the recursive specification of the combinatorial class in order to get systematic uniform random generation algorithms. Many of the basic principles of this approach have been developed in the 70's by Nijenhuis and Wilf [START_REF] Nijenhuis | Combinatorial algorithms[END_REF]. This approach has the been adapted to the analytic combinatorics point of view in [START_REF] Flajolet | A calculus for the random gener ation of labelled combinatorial structures[END_REF] by Flajolet, Van Custem and Zimmerman.

Unranking algorithms form also part of this global approach. The idea is to first define a total order over the objects under consideration so that to each object corresponds exactly one integer. Then, after choosing an integer it is possible to build deterministically the as sociated object. Moreover, if the rank is uniformly chosen among all possible ranks, then the unranking algorithm becomes a uniform random sampler. The unranking approach gives also a way for obtaining an exhaustive sampler, just by iterating the sampling over all possi ble ranks. In [START_REF] Bodini | Beyond seriesparallel concurrent systems: the case of arch processes[END_REF], the authors give an example of both methods: recursive generation and unranking method. Other accounts can be found in the books of Ruskey [START_REF] Ruskey | Combinatorial generation[END_REF] and the one by Alonso and Schott [START_REF] Alonso | Random Generation of Trees[END_REF].

The recursive generation method generally operates in two steps. First, it necessitates a step of precomputations of some information such that the enumeration sequence of the combinatorial class. The more information is stored in the beginning, the more efficient will be the second step. The second step is for sampling random objects. The precomputations are done once before the sampling, then any number of objects can be sampled.

This chapter is organised as follows. Our main objective is to sample any variety of trees generated by the evolution process presented in Chapter 5. As we will see a uniform random generation algorithm will not have a polynomial complexity in the general case. However, for the three classes presented in Chapter 4, there exist fast algorithms to efficiently sample these trees uniformly at random with exact size generation. We present them in Section 7.2 under the sections Section 7.2.1, Section 7.2.2 and Section 7.2.3

Then in Section 7.3 we focus our attention on the general case and give an unranking algo rithm to generate uniformly a tree of a fixed size in the specified variety. This algorithm necessitates the generating of all integer partitions of size n, which does not have a polyno mial complexity.

Efficient uniform samplers for the three models of increasing Schröder trees

In the next three sections we present the recursive generation algorithms for the three classes of trees presented in Chapter 4. For these three models there are simplifactions in the recur rence that allow us to have efficient uniform samplers which is not the case in general.

In Figure 7.1 we compare between the complexities of the uniform samplers for each model of increasing Schröder trees that are presented in Algorithm 1, Algorithm 3 and Algorithm 5.

Increasing Schröder

In this section, we present an algorithm that samples a Schröder tree uniformly at random among all Schröder trees of a given size. Our aim is to use this algorithm to generate trees of large size (typically several thousands of leaves): we thus provide a detailed analysis of the complexity of our sampler.

Note that the uniform sampling of structures with increasing labelling constraints is not so classical in the context of analytic combinatorics. Martínez and Molinero [START_REF] Martínez | Generic algorithms for the generation of combinato rial objects[END_REF][START_REF] Molinero | Ordered Generation of Classes of Combinatorial Structures[END_REF] focus on the recursive method: using and generalising recursive and unranking generation methods, they give a method that, given a combinatorial specification, automatically outputs a uniform generation algorithm and its complexity analysis. Using a different approach based on Boltzmann generation, Bodini, Roussel and Soria [START_REF] Bodini | Boltzmann samplers for firstorder differen tial specifications[END_REF] give an algorithmic frame work to develop Boltzmann samplers in the context of specifications that lead to differential equation of the first order.

The paper [BDF + 16] show that this framework can be extended to the context of differential equations of higher order; in particular, they apply this method to the generation of diamonds satisfying differential equations of order 2.

The bijection presented in Section 4.2 immediately gives an algorithm that samples a tree uniformly among all Schröder trees of size n: first sample a permutation uniformly at random among all permutations of size n in HP, and then build its image by M. While there exists fast algorithms to sample permutations (see for example [START_REF] Bacher | Generating Random Per mutations by Coin Tossing: Classical Algorithms, New Analysis, and Modern Implementation[END_REF]), it is not clear how to make the application of M efficient.

Instead, we use the bijection M as a basis for a direct probabilistic construction. Indeed, one can sample a uniform bijection uniformly at random in HP by doing the following recursive procedure: if n = 2, then return σ (2) = (2, 1). If n ≥ 3, assume we have sampled σ (n-1) uniformly among all permutations of size n -1. Draw an integer k n uniformly at random in {1, . . . , n}, and set σ (n) n = k n , and

σ (n) i = σ (n-1) i if σ (n-1) i < k n σ (n-1) i + 1 otherwise.
One can indeed check that σ (n) is uniformly distributed among all permutations of size n in HP. Executing this random sampling of σ (n) simultaneously with M (note that, for all n ≥ 3, σ (n-1) = σ(n) , where the notation σ is defined in the definition of M) is the idea of our sampler:

Using the adequate data structures, as for example by keeping an array of pointers to all leaves and another one to the last inserted internal node, each insertion in the tree under construction is done in constant time. We thus get Since the generation times is almost linear it is possible to generate trees of large sizes, up to 10000 in few seconds. In Figure 7.2 we simulate these trees with some parameters. Some of these parameters have already been studied in Section 4.2, namely the average number of dary nodes in the tree, the depth of the leftmost leaf and the average height of the tree. However, the profile of the tree has not been studied yet.

Strict monotonic Schröder

To sample uniformly at random a strict monotonic Schröder tree of size n, we could choose a twostep algorithm. First we sample uniformly an ordered partition of the set {1, . . . , n -1} and then with the use the bijection of Section 4.3 we transform it into a strict monotonic Schröder tree. But here, in this section, we prefer to present a direct algorithm that generates uniformly a strict monotonic Schröder tree, i.e. without the intermediate step of generating another combinatorial object like an ordered partition.

We will use the recursive generation method which will turn out to give as directly an un ranking algorithm as a byproduct of the process.

For both types of algorithms (unranking or recursive generation) some precomputations are done (only once before the sampling of many objects). We compute (and store) the num bers of trees of sizes from 1 to n. This calculation is be done with a quadratic complexity (in the number of arithmetic operations) using the recursive formula for (g n ) n≥1 (see Equa tion (4.22)). This complexity is only achieved if we first compute and memorise all values of (i!) 1≤i≤n . Then it only remains to build the tree of rank r recursively. If r is sampled uniformly at random in {0, 1, . . . , g n -1} the algorithm is a uniform sampler and if r is de terministically chosen, then the algorithm is a classical unranking algorithm. To do this, we recall that (see Equation (4.18)), for all n ≥ 1,

g n = n -1 n -2 g n-1 + n -1 n -3 g n-2 + • • • + n -1 0 g 1 , ( 7.1)
and interpret this equation combinatorially: to build a tree of size n, we take a size ℓ ∈ {1, . . . , n -1} tree T ℓ constructed with exactly one less iteration. To grow it into a sizen tree, we interpret the binomial coefficient n-1 ℓ-1 as the number of composition of n in ℓ parts: some of the ℓ leaves of T ℓ are replaced by some internal nodes to which leaves are attached, some leaves remain leaves. To do that we traverse the tree T ℓ and each time we see a leaf, we do the following action: if the next part (in the composition) is of value 1, we keep the leaf unchanged otherwise for a value s > 1, we replace the leaf by an internal node (well labelled with the currently step number) and attached s leaves to it. We then take the next part of the composition into consideration and continue the tree traversal.

Focusing on Equation (7.1) and the equation above we see that a function allowing the un ranking of compositions is necessary. Recall the composition of the integer n into ℓ parts is in bijection with the number of combinations of (ℓ -1) elements chosen in (n -1) ones. A way to prove it consists in laying (ℓ -1) barriers in the sequence of n bullets in order to define ℓ parts. There are classical algorithms to unrank combinations in the lexicographical order. A first algorithm has been described by Buckles and Lybanon [START_REF] Bill | Algorithm 515: Generation of a Vector from the Lexico graphical Index [G6][END_REF]. Another, more efficient, has just been settled in the technical report [DGH]. For both of them we can easily prove that their average complexity (when ℓ rages over all possibilities) is Θ(n) in the number of arithmetic operations by having first memoized all factorial values of the numbers from 0 to n. In the following we develop a simpler approach based on the classical recursive generation without any lexicographic constraint like in the two mentioned papers. The algorithm is an unranking method for the composition of integers. It is based on the reverse lexicographic order (cf e.g. [START_REF] Ruskey | Combinatorial generation[END_REF]) so that we get an easier implementation 2 . For simplification, we sup pose having memoized all values of r s for r ∈ {1, n} and s ∈ {1, r}. Using the classical Pascal's rule for binomial coefficients, we obtain the following recurrence for the number of composition of n into ℓ:

C n,ℓ = n -1 ℓ -1 = C n-1,ℓ + C n-1,ℓ-1 . (7.2)
We thus deduce Algorithm Algorithm 2 for the unranking method.

2

For the composition unranking, note that it would suffice to look for the rank n ℓ -1 -r (instead of r) in order to get the lexicographic order. Proof. We prove that the algorithm is correct by induction on n. The result is true when n = ℓ = r = 1 since the algorithm returns (1). Fix an integer n and assume that the algorithm is correct for all ℓ ≤ n -1, and that the total order over compositions is the reverse lexicographic one (see, e.g., [START_REF] Ruskey | Combinatorial generation[END_REF] for the definition of the reverse lexicographic order). Let ℓ be an integer between 0 and n, and r be an integer chosen uniformly at random in {0, . . . , C n,ℓ -1}. Equation Equation (7.2) implies that a composition of n in ℓ parts is either a composition of (n -1) in ℓ parts whose first part has been increased by one, or it is a composition of (n -1) in (ℓ -1) parts, and a new part equal to 1 is added at the beginning of the composition. In both cases, the first elements are all greater than the second elements according to the lexicographic order. The recurrence hypothesis ends the proof since the rank value r (or s in the second case) is adapted to each of the latter cases.

The number of arithmetic operations is direct when all binomial coefficients are first memo rised. □

In Equation (7.1) the first term is much bigger than the second one, which is much bigger than the third one and so on. This approach, focusing first on the dominant terms is an adaptation to the idea underlying the Boustrophedonic order presented in [START_REF] Flajolet | A calculus for the random gener ation of labelled combinatorial structures[END_REF]. It allows to improve essentially the average complexity of the random sampling algorithm. In our case of strict monotonic Schröder trees do not follow a standard specification (cf. [START_REF] Flajolet | A calculus for the random gener ation of labelled combinatorial structures[END_REF] for details), the complexity gain is even better. The loop starting in line 6 aims at determining the interesting term in the sum Equation (7.1), thus the size of the tree in the evolution process letting to build the tree of rank s and size n.

The traversal T used to substitute some leaves in line 13 determines partly the total order over the strict monotonic trees. Let α be an strict monotonic tree, and T a given traversal of all trees. Remark that there is a single evolution process building α (the construction is T :=UnrankTree(n -ℓ, r mod g n-ℓ ) 12:

C :=UnrankComposition(n, n -ℓ, r//g n-ℓ ) 13: Substitute in T , using traversal T , some leaves according to C 14:

return the tree T The sequences (g ℓ ) ℓ≤n and (ℓ!) ℓ∈{1,...,n} have been precomputed and stored. Line 13: The operation // is the Euclidean division.

unambiguous). If α is built at the step ℓ, then we denote by α the single tree (built with ℓ -1 steps) and α the single composition such that at step ℓ replacing the leaves from α according to the composition α, using the traversal T , we obtain α.

Here we remark that the whole tree α is strongly dependent from the traversal of the leaves of α (while some leaves are substituted by an internal nodes attached to new leaves according to α). We define now how to compare strict monotonic trees (we use the analogous notations than the latter for all trees).

Definition 7.2.3. Let α and β be two trees. We define α < β if

• the size of α is smaller than the one of β, or • if both sizes are equal to n and if the size of α is strictly greater than the one of β or if both sizes of α and β are equal and the composition α is smaller than β, using the reverse lexicographic order over compositions. Proposition 7.2.4. The order defined over strict monotonic trees is a total order. The result is direct since all possible cases according to the trees α and β for comparing them are explored. Theorem 7.2.5. The function UnrankTree is an unranking algorithm and calling it with the parameters n and a uniformlysampled integer s in {0, . . . , g n -1} gives as output a uniform strict monotonic Schröder tree of size n .

The correctness of the algorithm follows directly from the total order over the trees and Equa tion (7.1). Theorem 7.2.6. Once the precomputations have been done, the function UnrankTree needs on average Θ(n) arithmetic operations on big numbers to construct a tree of size n.

Proof. Let us assume that all binomial coefficients (C n,ℓ ) 0≤ℓ≤n have been memorised and prove that, with this information stored, the complexity in terms of arithmetic operations is of order Θ(n). Note that if we only memorise the factorial numbers (i!) 0≤i≤n-1 the complexity is at most three times the complexity obtained when memorising the binomial coefficient and thus still of order Θ(n).

For all n ≥ 1, we denote by a n the number of arithmetic operations on big numbers that come from the loop in line 7 and the calls in lines 11 and 12, when building all trees of size n (i.e. we sum the number needed for each r ∈ {0, . . . , C n,ℓ -1}). The exact value of arithmetic operations is a n + O(ng n ), because at each recursive call there is at most a constant number of operations that are not counted in a n . We first analyse a n : we have

a n = n-1 ℓ=1 n -1 ℓ (min(ℓ, n -1 -ℓ) -1 + 2ℓ) g n-ℓ + a n-ℓ .
In fact, for the terms with index ℓ, we are interested in the trees α of size n such that their corresponding tree α is of size n -ℓ. Thus such trees α are counted by n-1 ℓ g n-ℓ . And for each of them the factor min(ℓ, n -1 -ℓ) -1 is the the number of operations needed for the unranking of the composition (we use the symmetry in the binomial coefficients), the factor 2ℓ is the number of multiplication and subtractions in the loop in line 7. Furthermore we have a 1 = 0. By taking an upper bound for the min function, we get that if ā1 = 0, and, for all n ≥ 2, ān = We thus deduce ān ∼ 3ng n , which concludes the proof. □ Theorem 7.2.7. Once the precomputations have been done, the function UnrankTree needs on average (n 2 ) arithmetic operations to construct a tree of size n.

Proof. The proof of this comes when we see that the number of arithmetic operations needed for the unranking of the composition is n. When we were counting the arithmetic operations on big numbers we were not counting any operation when entering the if condition. But now, this counts for one operation. The number of calls to UnrankComposition(n, l, r) is bounded by n and for each call we do exactly one operation. For all n ≥ 1, we denote a n the number of arithmetic operations that come from the loop in line 7 and the calls in lines 11 and 12, when building all trees of size n (i.e. we sum the number needed for each r ∈ {0, . . . , C n,ℓ -1}). The exact value of arithmetic operations is a n + O(ng n ), because at each recursive call there is at most a constant number of operations that are not counted in a n . Let ā1 = 0, and, for all n ≥ 2, ān = Which concludes the proof. □

Let us give some final remarks for this algorithm. In order to obtain a better time complexity for the implementation, we must handle an array of pointers to the leaves of the tree under construction so that the tree traversal is efficient. At each step ℓ, a leaf stored in the array is replaced by n -ℓ + 1 leaves that must be stored in the array. An efficient way consists in reusing the cell from the replaced leaf, and the to append all other leaves at the end on the array. Thus, the most efficient traversal T of the leaves consists to the left right traversal of the array. But obviously this is not really a natural traversal for the tree. Thus in practice we use this efficient traversal T . Some simulations on several parameters are presented in Figure 7.3. The lines between the points represent the theoretical expected values that we have shown in Section 4.3.

In Figure 7.1, the figures show that the average number of arithmetic operations on big num ber is Θ(n) and they suggest that the average total number of arithmetic operations is Θ(n 2 ).

We have shown

Strict monotonic general Schröder

In this section we exhibit an efficient way for the uniform sampling of the tree model using the evolution process.

Once again when r grows, the sequence (f n-r ) r decreases extremely fast. Thus for the uni form random sampling, it will appear more efficient to read Equation (4.27) in the following way:

f n = n -1 1 2 n-2 f n-1 + 2 i=1 n -2 i 2 n-2-i f n-2 + 3 i=1 n -3 i 2 n-3-i 2 i -1 f n-3 + • • • + f 1 . (7.3)
Using the latter decomposition the algorithm can now be described as Algorithm 5. Let us define first the algorithm for unranking a binomial that we give in Algorithm 4. The idea is to that if we want to choose k elements from n disposable ones. The algorithm gives a rank to each possible set of elements and then we can return the element the rth element from the n k possible ones. Algorithm 5 is very similar to the one corresponding to strict monotonic trees. In fact this new one is a bit more involved than the previous one because of the recurrence formula for enumerating the tree. However both algorithm cores are very close. if n = 1 then 3:

return the tree reduced to a single leaf 4: ℓ := 1 5: r := s 6:

i := 1 7:

while r >= 0 do 8:

t := n-ℓ leaf is kept, and if it is 1 then the leaf is substituted. And finally the composition unranking allows to determine how many leaves are attached to the nodes selected with B. Theorem 7.2.8. The function UnrankTree is an unranking algorithm and calling it with the parameters n and a uniformlysampled integer s in {0, . . . , f n -1} gives as output a uniform strict monotonic general tree of size n .

The correctness of the algorithm follows directly from the total order over the trees deduced from the decomposition Equation (7.3).

Theorem 7.2.9. Once the precomputations have been done, the function UnrankTree needs in average Θ(n) arithmetic operations on big numbers to construct a tree of size n.

The proof for this theorem is analogous to the one for Theorem 7.2.6 corresponding to the complexity of the tree builder for strict monotonic Schröder trees.

We have depicted some simulations of some parameters in Figure 7.4. These simulations agree with the theoretical results found in Section 4.4. In fact, we unary nodes are allowed many of them appear at each iteration step. Since they do not add the final size of the tree their number can grow quadratically. This also affects the height that becomes linear rather than logarithmic as we saw with the two other models.

General Model uniform random generation

In order to have exact size uniform random generation, we need to work with the general recurrence Equation (5.2) of the evolution process Definition 5.2.1.

We start this section by recalling Definition 5.4.1 seen in Chapter 5:

Definition 7.3.1. We denote by A n,r,k,ϕ the set of ordered multisets with elements in N such that for each ordered multiset a = [a 1 , . . . , a l ] ∈ A n,k,r,ϕ :

• We have that a 1 + • • • + a l = k.

• The elements a 1 , . . . , a l are ordered decreasingly.

• |a| ∈ r and |a| ≤ (n -k).

• ∀i, 1 ≤ i ≤ l, [z a i +1 ]ϕ(z) > 0.

where |a| represents the size of the list a.

The elements of the set A n,k,r,ϕ are used in the main recurrence of the evolution process. It means that for unranking method to work and even for enumeration purposes we need to be able to generate these elements. We recall the main recurrence of the process Equation (5.2) seen in Section 5.4:

B n =          0 if n < m 1 if n = m n-1 k=1 a∈A n,k,r,ϕ (n-k)! (n-k-|a|)! |occ(a)| i=0,u i ̸ =0 ϕ u i i+1 u i ! B n-k if n > m (7.4)
As we will see it is possible to generate a super set of A n,k,r,ϕ , namely A n,k,N * ,ϕ . We just take the set of allowed repetitions to be all possible repetitions. Therefore it is immediate that

A n,k,r,ϕ ⊂ A n,k,N * ,ϕ .
It is then possible to filter the elements A n,k,N * ,ϕ to produce exactly the desired set A n,k,r,ϕ . The set A n,k,N * ,ϕ is related to restricted integer partitions through a bijection with an inter mediate object. It will be easier to add an element for the proofs of the bijections to add an element a 0 in the elements of A n,k,N * ,ϕ .

For simplicity we will denote and A n,k,ϕ for A n,k,N * ,ϕ . In fact:

A n,k,ϕ = ∞ i=1 A n,k,i,ϕ
A related set of objects A n,k,r,ϕ that we present hereafter will be used in order to generate the set A n,k,r,ϕ . This set A n,k,r,ϕ is closely related to integer partitions for which plenty of algorithms exist to generate them. Definition 7.3.2. We denote by A n,r,k,ϕ the set of ordered multisets with elements in N * such that for each ordered multiset a = [a 1 , . . . , a l ] ∈ A n,k,r,ϕ :

• a 0 = n -k. • We have that a 1 + • • • + a l = k.
• The elements a 1 , . . . , a l are ordered decreasingly.

• |a| ∈ r and |a| ≤ (n -k).

• ∀i, 1 ≤ i ≤ l, [z a i +1 ]ϕ(z) > 0.
where |a| represents the size of the list a. we denote by A n,k,ϕ

A n,ϕ = n-1 i=1 A n,i,ϕ
The same definitions can be done with A n,ϕ and A n,k,ϕ .

The main difference between A n,r,k,ϕ and A n,r,k,ϕ , is the fact that the former does not contain zeros. The former incorporate also an additional element a 0 , which is useful for the proofs of the bijection.

We remind that the zeros in A n,r,k,ϕ account for building varieties of trees where we have unary nodes. In fact A n,r,k,ϕ in essence in the set of trees where unary nodes are not allowed. In the end of the generation process, once we can generate A n,r,k,ϕ , it will be simple to modify it and obtain A n,r,k,ϕ . We take each element of A n,r,k,ϕ , and some zeros to it and check if the new element belongs to A n,r,k,ϕ .

Generating the elements of A n,ϕ from Integer partitions

We will need the same operations that have been defined on A n,k,r,ϕ . Therefore we use a slightly modified version of Definition 5.4.2: Definition 7.3.3. Let a be an ordered list of integers. We define the maximum function max to be the function that maps a\{a 0 } to its greatest element. We define the occurrences function to be the one such that occ(a) = [u 0 , . . . , u max(a) ] where u i is the number of elements in a\{a 0 } equal to i. For example, when a = [4, 3, 1, 1], occ(a) = [0, 2, 0, 1].

From this definition we can immediately write a pseudocode for the occ function, see Algo rithm 6.

The function occ serves for computing the product of inside the recurrence. We define now the restricted class of integer partitions that we will use: return res copy() copies the element of a list to make complete independent copy of the list.

• We take the decreasing ordering as a canonical order.

• p 0 = k. • for all 1 ≤ i ≤ m, if p i -p i+1 > 0 =⇒ [z i+1 ]ϕ(z) > 0.
We define

P n,ϕ = n-1 k=1 P n,k,ϕ .
Our main objective is to show an equivalence (a bijection) between A n,ϕ and P n,ϕ . Since integer partitions are a well known and well studied class of objects. We can use efficient generation algorithms and adapt them for our problem.

We define the following class of object that will be the intermediate class between A n,ϕ and P n,ϕ . This intermediate class will help proving the bijection.

Definition 7.3.5. V n,k,ϕ the set of ordered multisets with elements in N such that for each ordered multiset v = [v 0 , v 1 , . . . , v l ] ∈ V n,k,ϕ :

• v 0 = n, v 1 = k, v l = 0.
• The sequence is strictly decreasing that is ∀, 0 ≤ i ≤ l -1, v i < v i-1 .

• The spacings (difference between two consecutive elements) is always decreasing, that is ∀i,

0 ≤ i ≤ l -2, v i -v i+1 ≥ v i+1 -v i+2 . • ∀i, 1 ≤ i ≤ l -2, if v i -2v i+1 + v i+2 > 0 =⇒ [z i+1 ]ϕ(z) > 0.
For instance, for ϕ(z) = z 1-z , [6, 4, 3, 0] / ∈ V 6,4,ϕ while [6, 4, 2, 0] ∈ V 6,4,ϕ .

We define

V n,ϕ = n-1 k=1 V n,k,ϕ .
Finally, we define

V n,k,i,ϕ = {v = [v 0 , v 1 , v 2 , . . . , v l ] | v ∈ V n,k,ϕ ∧ v 2 = i}.
In Table 7.1, we depict an example of the bijection to be proven between these three classes of objects. We see on that example that the differences between the elements of V n,ϕ are the elements of the integer partition. Now we will show the correspondence between these classes. The diagram in Figure 7.5 sums up the results.

• a 0 = n -( |v|-1 i=0 iv i ).

• For i going from 0 to m -1, append v i occurrences of i to the list a.

For example, d = [0, 2, 0, 1], n = 9, num(d, 9) = [4, 3, 1, 1].

Remark 7.3.9. We have that ∀a ∈ A n,ϕ , num(occ(a), n) = a.

From Figure 7.5, we see that for our application. Since we will generate A n,ϕ from P n,ϕ , we will give the pseudocodes of the mappings G and F because they go to the right direction.

Definition 7.3.10. The function G is a mapping from V n,ϕ to A n,ϕ such that ∀v ∈ V n,ϕ , if v = [v 0 , , . . . , v l ]. We construct an new ordered list b having:

• b l-2 = v l-1 . • ∀i, 1 ≤ i ≤ l -3, b i = v i -2v i+1 + v i+2 .
Then the result of the mapping is a new list a = [v 0 -v 1 ] + num(b, n). Where "+" is the operation of concatenation of two ordered lists.

The pseudocode of G is presented in Algorithm 7. In the following Propositions we will prove that N and F form a bijection.

Algorithm 7

The mapping G for j from 0 to k -1 do 7:

res.insert(i) 8:

else if length(v) -1 -i = 1 then 9: k := v[i] -2v[i + 1] 10:

for j from 0 to k -1 do 11:

res.append(i) 12: else 13: k := v[i] 14:

for j from 0 to k -1 do 15:

res.append(i) 16:

x := res.pop(0) 17:

res.sort_reverse_order() 18:

res.insert(0, x) 19: return res pop(i) function, removes ith element from a list and returns it. insert(i, e) function, insert the element e at the ith position of the list. sort_reverseorder() function, sorts a list of element in a decreasing order. Proposition 7.3.11. The mapping G is injective.

The proof is postponed to Section 7.5.1. Proposition 7.3.12. ∀a ∈ A n,ϕ , G(M(a)) = a.

Proof. The proof is postponed to Section 7.5.1. □ Remark 7.3.13. The mapping G is the inverse mapping of M From these previous Propositions the bijection between A n,ϕ and V n,ϕ follows immediately.

Theorem 7.3.14. The mapping M and its inverse G is a bijection between A n,ϕ and V n,ϕ .

Proof. The result follows directly from Proposition 7.3.7, Proposition 7.3.11 and Propo sition 7.3.12. □ Now we show the second bijection between P n,ϕ and V n,ϕ . We will follow the same steps as we did for the first bijection. We give the definitions of the mappings N and F. We give the pseudocode of F since it is the direction of interest to us for the generation. Finally, we prove the bijection. From the definition of F it is possible to directly write a pseudocode for it that we present in Algorithm 8. Both definitions are simple. In fact, the elements of P n,ϕ are just the differences between the elements of V n,ϕ .

Algorithm 8 The mapping F for i from 0 to length(p) -1 do 5:

res.append(res[i] -p[i]) 6: return res

The append(e) function appends the element e to the end of an existing list.

Proposition 7.3.17. The mapping N is injective.

The proof is in Section 7.5.1. The proof is in Section 7.5.1.

Remark 7.3.19. F is the inverse function of V

The bijection follows directly from the previous Propositions.

Theorem 7.3.20. The mapping V and its inverse F is a bijection between V n,ϕ and P n,ϕ

Proof. The result follows from Proposition 7.3.17 and Proposition 7.3.18. □

Sampling algorithm

We can now find a new recurrence to our general problem by using the bijections. We first need to show a small result. In order to make our random generation Algorithm we needed to generate the set A n,k,r,ϕ . The problem has now been simplified to the one of generating integer partitions and then use the mappings F and G defined in Definition 7.3.10 and Defi nition 7.3.16 to get the set A n,k,ϕ and filter it to get A n,k,r,ϕ .

Algorithm 9

The inner product of the recurrence : We need now to make the algorithm that generates all partitions of size n and filter them according to ϕ(z) and the set r of allowed repetitions to generate A n,r,ϕ . Finally, in order to generate A n,r,ϕ , we need to see where it is possible to add 0 elements since the set A n,r,ϕ has no zeros. For example we see that in Table 7.1, unary nodes are allowed since ϕ 1 = 1. But no element in A 7,z/(1-z) contains zeros.

Therefore, in order to generate A 7,z/(1-z) from A 7,z/(1-z) , we take each element in A 7,z/(1-z) , and make new sets with zeros as long as the condition |a| ≤ (n -k) is met.

Algorithm 10 Check if the node arities are accepted (i.e all arities belong to ϕ(z)). Algorithm 12, generates exactly the set A n,r,ϕ of elements required for the recurrence Equa tion (7.4). Since it generates A n,r,ϕ through the mappings F and G defined by the functions part_to_v and v_to_arities. Once this is done, for each element of the resulting set we try to add zeros (i.e unary nodes are allowed) to see if they are allowed in terms of arities through ϕ and if they are allowed in terms of the number of nodes that can grow in one iteration step through the set r.

Algorithm 11 Check if the number of repetitions is accepted (i.e the number of node added at this step is in r). if check_node_arities(a, ϕ) = 1 then 9:

if check_nb_repetitions(a, r) = 1 then 10:

res.append(a) 11:

if ϕ(1) > 0 then 12:

for i from length(a) -1 to a[0] -1 do 13:

tmp := a.copy() 14:

tmp.append(0) 15:

if check_nb_repetitions(tmp) = 1 then 16:

res.append(tmp) 17:

return res generate_partitions(n) function, returns a list of all integer partitions of n. Each element is an ordered list of integers

If we let:

t n,k = a∈A n,k,r,ϕ (n -k)! (n -k -|a|)! |occ(a)| i=0,u i ̸ =0 ϕ u i i+1 u i ! ,
It is possible to compute t n,k from A n,r,ϕ , we only need to go through A n,r,ϕ and keep the elements that starts with n -k, then sum the inner products using Algorithm 9. Proof. The precomputations involve computing the sequence B and the set A n,r,ϕ . As we saw the set A n,r,ϕ is built from integer partitions of n which have complexity:

O e √ n n ,
in term of the number of arithmetic operations, see [START_REF] Yamanaka | Constant time generation of integer partitions[END_REF] for more details. Each integer partition is then analysed and we try to add zeros to it which necessitates at worst case n operations. After storing the values of the set, the sequence B can be computed in O (n 2 Substitute in T , using traversal T , the leaves selected with in ls with internal nodes of the degrees of the list ar with colours selected in col 21:

return the tree T

The sequences (B ℓ ) ℓ≤n and A ℓ,k,r,ϕ for ℓ < n, 1 ≤ k ≤ n -1 have been precomputed and stored. choice(list, weights) chooses an element from a list according to the weights of the elements.

Algorithm 13 is based on the recursive generation method. However, we are faced with a problem in the choice function. Each element of the set A n,r,ϕ has a weight, because the same configuration of new nodes at an iteration step can be put on different leaves. Either, we can store the weight of an element as a repetition of this element same element and make a new set and finally sample uniformly from it. If we store exactly A n,r,ϕ . Then there is a need to sample from this set according the weights of each element.

The variable ar, contains the new nodes that will be added to the tree at this ietration step. The the variable col, contains the color of each new node in ar. Finally, the variable ls, serves to choose wich leaves will get expanded at the current iteration step. Proof. The number of calls of SampleTree is bounded by n -1. The UnrankBinomial and UnrankComposition functions need O(n) arithmetic operations as it has been seen in Section 7.2.2. Then the choice function is O e √ n , since it needs to go through all elements of A n,k,r,ϕ . □

Conclusion

For the three classes of increasing Schröder trees, we saw that some simplifications occur in the main recurrence, and thus we can take advantage of these situations to design fast uniform samplers. For increasing Schröder trees, the uniform sampler it very fast, linear in time, so we can go to big sizes of order 20000 in some seconds. For strict monotonic Schröder trees, we can go to sizes of order 1000 in few seconds also after having done precomputations.

For the third model general monotonic Schröder trees, the size of the numbers in the main recurrence are of order n 2 . Even if, the average number of arithmetic operations on big numbers is Θ(n), the intrinsic complexity of the model is higher. For this model we can go to sizes up to 500 in few seconds.

Finally, the generam model relies on generating and storing restricted integer partitions which can not be done in polynomial time. For the general case we can go to sizes of or der 50 in few seconds after the precomputations have been made.

Appendix A

7.5.1 Proofs for the bijections presented in Section 7.3.1

Proof of Proposition 7.3.7. We proceed in two steps.

(1) Firstly, we'll show that for all a ∈ A n,ϕ , M(a) ∈ V n,ϕ .

• Let v = M(a), then v 0 = sum(a) = n,v 1 = v 0 -a 0 = n -(n -k) = k.
Let us denote m = max(a). We have that v m+1 = 0 and by definition v m = u m > 0 and so the subsequence of the last two elements is decreasing. But by the construction of v, we have that ∀i,

1 ≤ i ≤ m -2, v m-i = u m-i + 2v m-i+1 - v m-i+2 ≥ u m-i + v m-i+1 ≥ v m-i+1
and so the sequence is decreasing in its entirety. • For all 0 ≤ i ≤ m we have that for the consecutive differences

s i = v i -vi + 1 of elements in v, s m = v m -v m+1 = u m > 0 and s m-1 = v m-1 -v m = u m-1 + 2v m = u m+1 + 2s m > s m .
Once again by definition of v we have that ∀i,

2 ≤ i ≤ m, s m-i = v m-i -vm -i + 1 = u m-i + 3v m-i+1 -v m-i+2 = u m-i + s m-i+1 + 2v m-i+1 > s m-i+1 since v m-i+1 > 0 in this interval. • Finally, if v i -2v i+1 + v i+2 > 0 =⇒ v i > 2v i+1 -v i+2 =⇒ u i > 0 =⇒ [z i+1 ]ϕ > 0. (2
ib i = (l -1)v l-1 + l-2 i=1 i(v i -2v i+1 + v i+2 ) = (l -1)v l-1 + l-2 i=1 iv i -2 l-2 i=1 iv i+1 + l-2 i=1 iv i+2 = (l -1)v l-1 + l-2 i=1 iv i - 2 l-1 i=2 (i -1)v i + l i=3 (i -2)v i = (l -1)v l-1 -(l -1)v l-1 + v 1 + 2v 2 -4v 2 + 2 l-1 i=2 v i -2 l i=3 v i = v 1 -2v 2 + 2v 2 = v 1 = k.
• Since the spacings in v are deceasing all b i s are positive non zero(b i = v i -

2v i+1 + v i+2 ). • If 1 ≤ i ≤ l, a i > 0, let j = a i , then j > 0 =⇒ b j > 0 =⇒ v j -2v j+1 + v j+2 > 0 =⇒ [z j+1 ]ϕ > 0 =⇒ [z a j +1 ]ϕ > 0.

Index

  Seq(A) = {ϵ} + A + (A × A) + (A × A × A) + . . .The pointing of a class A is a new class made by selecting any unit element in A. More formally, Θ(A) = n≥0 A n × {ϵ 1 , ϵ 2 , . . . , ϵ n }

1

  God made the integers, all else is the work of man

Figure 3

 3 Figure 3.1: A permutation of 6 elements and its corresponding graphical representation.

Figure 3 . 3 :

 33 Figure 3.3: The 13 Ordered partitions of the set {1, 2, 3}.

Figure 3 . 4 :

 34 Figure 3.4: The 5 integer partitions of 4.

Figure 3 . 5 :

 35 Figure 3.5: The 8 integer compositions of 4.

,Figure 3

 3 Figure 3.6: A graph of 6 vertices

Figure 3

 3 Figure 3.7: (left )A labelled graph and (right) a directed labelled graph both of 6 vertices

Figure 3

 3 Figure 3.8: A labelled multigraph of 6 vertices

Figure 3

 3 Figure 3.9: (left) An ordered rooted and (right) a different ordered rooted tree, both trees have 7 nodes.

Definition 3.5. 7 .

 7 Let ϕ(u) be a colored degree function. The class T ϕ of simple trees or (simply generated trees) parametrized by ϕ(u) contains all trees that are rooted, plane and unlabelled. Each internal node has a degree d and a color c (d, c) such that the degree and the color belongs to Ω (i.e [u d ]ϕ(u) ≥ 1 and c ≤ [u d ]ϕ(u) ). The size of a tree is given by its total number of nodes. Some examples of simple varieties of tree are given in the following. Example 3.5.8. Binary trees. Take Ω = {1, 1, 2} which gives ϕ(u) = 2u + u 2 . The num ber of binary trees of size n is known to be the famous Catalan numbers referenced under EIS A000108. Example 3.5.9. Proper binary trees. Take Ω = {2} which gives ϕ(u) = u 2 . The number of proper binary trees of size n corresponds to shifted Catalan numbers that include 0 on even indices because there are no trees of even sizes. They are referenced under EIS A126120. Example 3.5.10. Plane trees. Take Ω = {1, 2, . . . } which gives ϕ(u) = u 1-u . This class of tree is also counted by Catalan numbers. Example 3.5.11. Motzkin trees or (unarybinary trees). Ω = {1, 2} with ϕ(u) = u + u 2 . EIS A178834. See Figure 3.10 for an example. Example 3.5.12. kary trees. Ω = {k} with ϕ(u) = u k .

  Figure 3.10: An example of a Motzkin tree

Figure 3 .

 3 Figure 3.11: All 4 Pólya trees of size 4.

Figure 3 .

 3 Figure 3.12: All 11 Schröder trees of size 4.

. 5 )

 5 An example of the plane scheme is given by Example 3.5.19. Increasing binary trees. Take Ω = {1, 1, 2} which gives ϕ(u) = 2u + u 2 . The number of increasing binary trees of size n corresponds to the number of permutations referenced under EIS A000142. The trees of size 3 are depicted in Figure 3.13. Another example, this time corresponding to the nonplane scheme Example 3.5.20. Recursive trees. Take Ω = {1, 2, . . . } which gives ϕ(u) = e u -1. The number of recursive trees of size n corresponds also to the number of permutations but of size n -1.

Figure 3 .

 3 Figure 3.13: All 6 increasing binary trees of size 3.

Figure 3 .

 3 Figure 3.14: (left) A monotonic tree in the sense of [PU83] with k = 9, (right) A monotonic tree in the sense of Definition 3.5.23 the root always starts with label 1 and there are no skipped labels.

Figure 3 .

 3 Figure 3.15: An example of a strict monotonic Schröder tree seen in Definition 3.5.24 (the labels are strictly increasing along all paths) it is also a monotonic tree.

Figure 3 .

 3 Figure 3.16: An example of a connected monotonic Schröder tree seen in Definition 3.5.26 (the same labels are connected).

Figure 4 . 2 :

 42 Figure 4.2: Two increasing Schröder trees

Figure 4

 4 Figure 4.4: A size8 example of the mapping M

Figure 4

 4 Figure 4.5: A size8 example of the mapping N

Figure 4

 4 Figure 4.6: A size8 example of the mapping O

Figure 4

 4 Figure 4.7: A tree of size 8 that has 5 internal nodes, one of which has a internal node as a second child (node labelled 3), the root node does not count

n n -2 ln n ln n

Figure 4 . 8 :

 48 Figure 4.8: The asymptotic number of ℓary nodes

Figure 4

 4 Figure 4.9: Two strict monotonic Schröder trees

  1, 1, 3, 13, 75, 541, 4683, 47293, 545835, 7087261, 102247563, 1622632573, . . . The 13 trees of size 4 are depicted in Figure 4.10, we notice that a new tree with two repetitions of the label 2 appears. The rest of the trees are the same as the ones presented in Figure 4.3.

Figure 4 .

 4 Figure 4.10: All 13 Strict monotonic Schröder trees of size 4

  Figure 4.11: The constructive bijection between an ordered partition and a strict monotonic Schröder tree

Figure 4 .

 4 Figure 4.14: Distribution of (g n,k ) k for n ∈ {1, . . . , 7}

Figure 4 .

 4 Figure 4.15: Distribution of (g n,k ) k for n ∈ {1, . . . , 7}

  8: Values of g n,k , the number of n strict monotonic Schröder trees of size n with leftmost leaf at depth k, for all 0 ≤ k ≤ n ∈ {1, . . . , 7}.

Figure 4

 4 Figure 4.16: Two strict monotonic general trees

Figure 4

 4 Figure 4.18: The graph G 3 graph. In this representation, the vertices V = {1, . . . , n} are drawn from left to right (node 1 is the leftmost, node n is the rightmost), and their label is their image by ℓ: in this example ℓ = (2, 1, 3).

Figure 4

 4 Figure 4.19: Bijection between an evolving tree in S from size 3 to 5 and its corresponding graph G.

  5.3.1 Double nature of ϕ(z) 5.3.2 Varieties of strict monotonic Schröder trees 5.3.3 Varieties of connected monotonic Schröder trees 5.3.4 Varieties of monotonic Schröder trees 5.3.5 Weakly increasing plane dary trees (monotonic dary trees) 5.3.6 Applications of trees with unary nodes 5.4 Combinatorial model 5.5 Asymptotic analysis for r = {d} 5.5.1 Asymptotic analysis for r = {1} 5.5.2 Asymptotic analysis for d ≥ 2 5.6 Asymptotic analysis for r = N * 5.7 Asymptotics for general r 5.8 Asymptotic analysis for r = [m] 5.9 Asymptotics when unary nodes are allowed 5.10 Asymptotics where no binary nodes are allowed 5.11 Conclusion ً َة ِب ّ َي ط ً َة ِم َل ك ًا ل َ َث م ُ ه َّ الل َبَ َر ض َ ْف َي ك َ َر ت ْ َم ل أَ ِي ف َا ُه ْع َر َف و ِتٌ َاب ث َا ُه ل صْ أَ ٍ َة ِب ّ َي ط ٍ َة َر َج َش ك . 1ِ َاء م َّ الس Quran 14:24 1

Figure 5 . 1 :

 51 Figure 5.1: Example of Definition 5.2.1. (Left) An example of the colored degree function,here ϕ(z) = 3z 2 + z 3 + 2z 4 , there are 3 colours of binary nodes, 1 colour for ternary nodes and 2 colours for quaternary nodes. (Right) A tree of size 15 built with ϕ(z) where the set of allowed repetitions r = {1, 2, 3}, so that each label can appear 1,2 or 3 times. But they might not all appear, in the example there is no node with 3 repetitions.

Condition 5. 2 . 4 .

 24 Let r ⊂ N * and m = min(r). Let ϕ(z) be a coloured degree function as presented in Definition 3.5.6 and such that ϕ 1 = 0, ϕ 2 ≥ 1 and ϕ n = n→∞ O n! m! n/m n m+4 . Condition 5.2.5. Let ϕ(z) be a coloured degree function as presented in Definition 3.5.6 and such that ϕ 1 ≥ 1, ϕ 2 ≥ 1 and ϕ n = O n! n 5 .

Figure 5 . 2 : 2 :

 522 Figure 5.2: Example of Definition 5.3.1. (Left) An example of the colored degree function, seen as a class of rooted unlabelled trees here binary trees ϕ(z) = z 2 + 2z 3 + 5z 4 , the trees of first sizes 2, 3 and 4 are depicted. At each iteration step a leaf can evolve into a whole unlabelled shape and that all its internal nodes get the label of the current iteration step. (Right) A resulting monotonic binary tree, here r = N * .

Figure 5 . 3 :

 53 Figure 5.3: All 7 strict monotonic binary trees of size 4. There can be label repetitions, but the labellings along each branch are strictly increasing.

3 .

 3 Example 5.3.4. Consider the class T with ϕ(z) = z 2 + z 3 . The first few values of T n are: 0, 1, 1, 3, 12, 68, 482, 4122, 41253, 472795, . . . Then we have by Theorem 5.2.6

The 6

 6 trees of size 6 are depicted in Figure 5.4.

Figure 5 . 4 :

 54 Figure 5.4: All 6 tree of increasing binary trees with 2 repetitions B 2 6 .

  5: First non zero values of increasing binary trees B d n with d repetitions and d ∈ {1, 2, 3, 4}.

Figure 5 . 5 :

 55 Figure 5.5: Simulation for n ∈ {10, 200} of the ratio of B d n and its main asymptotic behaviour

Figure 5

 5 Figure 5.6: (Above) All 21 connected monotonic binary trees of size 4. (Below) This tree is the only tree of size 4 that belongs to the set of monotonic binary trees but not to the set of connected monotonic binary trees.

  Theorem 5.2.6 C. M. Schröder trees {1} (S(z) -z) α n! n 2 [BGN19],Theorem 5.2.6 Strictly monotonic Schröder N * z 2 -1)! ( 1 ln 2 ) n [BGN19],Theorem 5.2.6 Monotonic Schröder N * (S(z) -z) κ(n -1)! ( 1 ln 2 ) n n 2 ln 2 Theorem 5.2.6 Table 5.7: Comparison of the asymptotic behaviour of families of labelled Schröder trees.

Figure 5 . 8 :

 58 Figure 5.8: Simulation for n ∈ {1, 100} of the ratio of Schröder trees with different labellings with their main asymptotic behaviour. The models of increasing Schröder trees and strict monotonic Schröder trees have the same constant and therefore their plots coincide.

Figure 5 . 9 :

 59 Figure 5.9: Simulation for n ∈ {1, 100} of the ratio of binary trees with different labellings and their main asymptotic behaviour.

  2.10. But for d > 2 the problem remains open. The parametrisation of Equation (5.1) is to take r = N * and ϕ(z) = T d (z) the class of rooted plane dary trees counted by its number of leaves. We have, for d > 2,

Figure 5 .

 5 Figure 5.10: An example of A 10,6,ϕ,r with ϕ(z) = z 2 1-z and r = N * .

Figure 5 .

 5 Figure 5.11: An example of C 8,3,ϕ,r with ϕ(z) = z 2 1-z and r = N * .

  .5) We remark that ∀n ≥ 2, b n ≥ b n-1 . Indeed, if we develop the formula of b n , we see that b n = ϕ 2 b n-1 + ϵ n and all the terms in ϵ n are positive. Let us define for all n

Figure 6 Figure 6 . 2 :

 662 Figure 6.1: (left) A binary tree of size 17. (right) Its compacted version that has size 5.

Figure 6 .

 6 Figure 6.4: A uniformly sampled (plane) binary search tree structure with 500 internal nodes: black fringe subtrees are removed by the compaction; the red head is only of size 172

  0 | = 1 + η with (e -1)/k < η < ln(k)/k. Then w(t)|z 0 | k ≤ 1 and so by Equation (6.10) we have then |R(z 0 )| ≤ (e -1)/k. But we assumed |z 0 -1| > (e -1)/k.

Finally, let 1 +

 1 ln(k) k < |z| ≤ 1 + ln k+ln ln ln k k . In this region we have |z -1| > ln(k)/k but, using Equation (6.10), we get |R(z)| ≤ (ln(k) -1)/k and thus R(z) is too small to compensate the value of z -1. Indeed, we obtain that|G(z) -1| > 1/k.Summarising what we have so far, we obtain that eitherz 0 = ρ or |z 0 | > 1 + ln k+ln ln ln k k . Notice that G ′ (ρ) = exp -w(t)ρ k = 0 and therefore ρ is a simple zero of G(z) -1. Thus G(z) -1 = (z -ρ) G(z)where G(z) is analytic in the domain |z| ≤ 1 + ln k+ln ln ln k k and does not have any zeros there. Thus,

2 √

 2 and lim z→0+ y ′ (z) = +∞. Let us now introduce the following change of variable x := k+1

  .21) where the curve C is described by |t| = 1 + (2-δ) ln k k with some δ > 0. The absolute value of the logarithm of v(z) is given by | ln v(z)| = ln |v(z)|e i arg v(z) = |ln |v(z)| + i arg(v(z))|. Furthermore, by Equation (6.19) we have |v(z)| = |u(z)|/ |1 -z/ρ|, which can be estimated along C via |v(z)| ≤ |u(z)|k (2 -δ) ln k . Now, we have to estimate |u(z)|. By Lemma 6.3.2 we get

Figure 6

 6 Figure 6.7: (left) A bst built e.g. on (4, 8, 6, 2, 9, 1, 3, 7, 5); (right) The compacted tree structure associated to the bst

Figure 6

 6 Figure 6.9: (left) Experimental compression ratio; (right) Experimental search time compar ison

Figure 6 .

 6 Figure6.10: Pólya trees that give the maximum number of increasing labellings for 2 ≤ n ≤ 11. 'Inc Lab' stands for the number of increasing labellings of the tree and 'Aut' Gr the size of the automorphism group of the tree.

Figure 7 . 1 :

 71 Figure 7.1: Complexity of uniform samplers for the the three models of increasing Schröder trees. (up left) Time complexity of the sampling in milliseconds. (up right) Arithmetic oper ations on big numbers complexity. (down) Arithmetic operations complexity.

Figure 7 . 2 :

 72 Figure 7.2: Simulation of different parameters on Increasing Schröder trees. (left) The num ber of dary nodes. (right) The height and the depth of the (LM) leftmost leaf. The sizes of the sampled trees range from 1 to 500. (down left) The profile of trees of size 10000. (down right) Root degree, the lines gets darker as n moves from 2 to 250, there are 40 trees sampled for each size

Figure 7 . 3 :

 73 Figure 7.3: Simulation of different parameters on Strict monotonic Schröder trees. (left) The number of dary nodes and the number of iteration steps. (right) The height and the depth of the (LM) leftmost leaf. The sizes of the sampled trees range from 1 to 250. (down) Root degree, the lines gets darker as n moves from 2 to 100, with 40 trees sampled for each size.

Algorithm 3

 3 Strict monotonic Schröder Tree Unranking 1: function UnrankTree(n, s)

  n-ℓ + ān-ℓ ) , then a n ≤ ān for all n ≥ 1. Using similar calculations as in the proof of Proposition 4.3.3, we obtain an equation satisfied by the Borel transform of the series associated to (ā n ): 2 B Ā(z) ′ = e z B Ā(z) ′ + 3ze z (BG(z)) ′ .

  ℓ (n g n-ℓ + ān-ℓ ) , It is immediate that for all n ≥ 1, ān ≥ a n . We also get as in the previousān ∼ n→∞ α n 2 g n , since the EGF of Ā(z) is 2 B Ā(z) ′ = e z B Ā(z) ′ + z(ze z (BG(z)) ′ ) ′ .

Algorithm 5

 5 First the While Algorithm 4 Reverse Lexicographic binomial Unranking 1: function UnrankBinomial(n, ℓ, r) 2: C :=UnrankComposition(n + 1, ℓ + 1, r) 3: r := [C[0]] 4: cumul := C[0] 5: for i from 1 to length(C) -2 do 6: cumul := cumul + C[i] Strict Monotonic General Tree Unranking 1: function UnrankTree(n, s) 2:

Figure 7 . 4 :

 74 Figure 7.4: Simulation of different parameters on general strict monotonic Schröder trees. (left) The number of dary nodes and the number of iteration steps. (right) The height and the depth of the (LM) leftmost leaf. The sizes of the sampled trees range from 1 to 250. (down) Root degree, the lines gets darker as n moves from 2 to 100, with 40 trees sampled for each size.

for i from 0

 0 Definition 7.3.4. Let P n,k,ϕ be the set of integer partitions of n: such that for each p = [p 0 , . . . , p m ] ∈ P n,k,ϕ : Algorithm 6 The occ function 1: function occ(a : an (ordered list)to length(l) do 6: res[l[i]] := res[l[i]] + 1 7:

1:

  function v_to_arities(v : (ordered list)) 2:res := [v[0] -v[1]] 3: for i from 1 to length(v) do 4: if length(v) -1 -i ≥ 2 then 5: k := v[i] -2v[i + 1] + v[i + 2] 6:

Definition 7.3. 15 .

 15 The function N is a mapping from V n,ϕ to P n,ϕ . If v = [v 0 , . . . , v m ] ∈ V n,ϕ , and p = [p 0 , . . . , p m-1 ]. We define ∀i, 0 ≤ i ≤ m -1, p i = v i -v i+1 . Then N (v) = p. Definition 7.3.16. The function F is a mapping from P n,ϕ to N n,ϕ . If p = [p 0 , . . . , p m ] ∈ p n,ϕ , and v = [v 0 , . . . , v m+1 ]. We define v 0 = sum(p) ∀i, 0 ≤ i ≤ m, v i+1 = v i -p i . Then F(p) = v.

1:

  function part_to_v(p : an integer partition (ordered list)) 2: n := sum(p) 3: res := [n] 4:

Proposition 7. 3 .

 3 18. ∀v = [v 0 , . . . , v m ] ∈ V n,ϕ , F(N (v)) = v.

  (n-k)! (n-k-|a|)! |occ(a)| i=0,u i ̸ =0 ϕ u i i+1 u i ! 1: function prod(a : an (ordered list), n :integer, k :integer, ϕ : function N * → N * ) 2: l := occ(a) 3: p := 1 4: for i from 0 to length(l) -1 do 5: if l[i]

1:

  function check_node_arities(a : an (ordered list) , ϕ : functionN * → N * ) 2: for i from 1 to length(a) -1 do 3: if ϕ(a[i] + 1)

1: 0 Algorithm 12

 012 function check_nb_repetitions(a : an (ordered list), r : function N * → {0, 1}) 2: if r(length(a) -1) Generate A n,r,ϕ 1: function generate_A(n : integer, , ϕ : function N * → N * , r : function N * → {0, 1}) 2: res := [] 3: l := generate_partitions(n) 4: for e ∈ l do 5: e.sort_reverse_order() 6: v := part_to_v(e) 7: a := v_to_arities(v) 8:

  Theorem 7.3.21. The precomputations can be done in O e √ n arithmetic operations.

  Theorem 7.3.22. The function SampleTree operates in O e √ n n 2 arithmetic operations.

  ) We now show that M is indeed injective. Consider a, b ∈ A n,ϕ such that a = b. Then the fact that M (a) = M (b) follows from the fact that the construction of M makes use of the occ function and the fact that occ(a) cannot equal occ(b) by definition of occ and A n,ϕ . □ Proof of Proposition 7.3.11. We show first that G(v) ∈ A n,ϕ and then we show the injec tion.(1) We show that forv ∈ V n,ϕ , G(v) ∈ A n,ϕ . • Let a = [a 0 ] + num(b, n) = G(v), then a 0 = v 0 -v 1 = n -k.By definition of num(b, n) the elements are placed in decreasing order. Let l = last(v), sum(a\{a 0 }) = l i=1 ib i = (l -1)v l-1 + l-2 i=1

Table 2 . 2

 22

: Admissible constructions from [FS09, Ch 1]

Table 2 .

 2

3: Admissible constructions from [FS09,

Ch 2]

  has its coefficients determined by Theorem 2.4.10 and Theorem 2.4.11 and τ

Table 3 .

 3 Table 3.1 for the first values of Stirling cycle numbers. These numbers are referenced in EIS A132393.

	1
	1	1
	2	3	1
	6	11	6	1
	24	50	35	10	1
	120 274 225 85 15 1
	720 1764 1624 735 175 21 1

1: Stirling cycle numbers for n ∈ {1, . . . , 7} and k ∈ {1, . .

Table 3

 3

	1
	1 1
	1 4	1
	1 11	11	1
	1 26	66	26	1
	1 57 302 302	57	1
	1 120 1191 2416 1191 120 1

.2 and the table can be find in EIS A008292. These numbers have remarkable properties there is a wealth of literature about them. Some accounts are [Knu98, Cha08, FS06, Car59].

Table 3 .

 3 2: Eulerian numbers for n ∈ {1, . . . , 7} and k ∈ {0, . . . , n}

  2, 5, 15, 52, 203, 877, 4140, 21147, 115975, . . . Let us now define the numbers n k which represents the number of set partitions of a set n elements into k nonempty subsets. These numbers are called Stirling partition numbers (or Stirling numbers of the second kind). See Table 3.3 for the first values of n k . It is clear that S n can be defined as a sum of n k , Table 3.3: Stirling partition numbers for n ∈ {1, . . . , 7} and k ∈ {1, . . . , n}

	1
	1 1
	1 3	1
	1 7	6	1
	1 15 25 10		1
	1 31 90 65 15 1
	1 63 301 350 140 21 1
	Once again, Stirling partition numbers have a simple recurrence relation. 0 0 n > 0, n 0 = 0 and n	= 1. For
	It is referenced under EIS A000110.
	1 subset	2 subsets		3 subsets
	{{1, 2, 3}} {{1, 2}, {3}} {{1}, {2}, {3}}
	{{1, 3}, {2}}
	{{2, 3}, {1}}
	S n =	n k=1	n k	.

Figure 3.2: The 5 partitions of the set {1, 2, 3}.

Let S be the class of set partitions. Using the symbolic method we see that set partitions are sets of nonempty sets of integers, therefore the EGF of S, S = Set (Set ≥1 (Z)) .

Which gives S(z)

= e e z -1 . n = 1. Then for n ≥ 2, and

  Table 3.4: Ordered Stirling partition numbers for n ∈ {1, . . . , 7} and k ∈ {1, . . . , n}

	1
	1 2
	1 6	6
	1 14	36	24
	1 30 150 240	120
	1 62 540 1560 1800	720
	1 126 1806 8400 16800 15120

  1, 1, 3, 11, 45, 197, 903, 4279, 20793, 103049, 518859, 2646723, 13648869, 71039373, . . . ) .

	Equation (3.3) implies that the generating function S is algebraic and in fact

Schröder trees Contents 4.1 Introduction 4.2 Increasing Schröder trees

	4.2.1 The model and its context
	4.2.2 Overview of the main results
	4.2.3 Exact enumeration and relationship with permutations
	4.2.4 Iterative construction of a tree
	4.2.5 Bijections with permutations and relationship to internal nodes and
	depth of a leaf
	4.2.6 Relationship to Eulerian numbers and runs in permutations
	4.2.7 Analysis of typical parameters
	4.2.8 Analysis of the height of a typical increasing Schröder tree
	4.3 Strict monotonic Schröder trees
	4.3.1 The model and its context
	4.3.2 Overview of the main results
	4.3.3 Enumeration and relationship with ordered Bell numbers
	4.3.4 Bijections with ordered Bell numbers and relationship to internal nodes
	4.3.5 Analysis of typical parameters
	4

.4 Strict monotonic general Schröder trees

	4.4.1 The model and its enumeration
	4.4.2 Overview of the main results
	4.4.3 Iteration steps and asymptotic enumeration of the trees
	4.4.4 Correspondence with labelled graphs
	4.4.5 Analysis of typical parameters
	4.5 Conclusion
	what appears to be different
	truths are like apparently
	different countless leaves of the
	same tree.
	Mohandas Karamchand Gandhi
	(1869 1948), Teachings of
	Mahatma Gandhi

Table 4

 4 Table 4.2: Summary of the main results on parameters of Increasing Schröder trees

	.2.

Table 4 .

 4

	18 33	8	0
	1 41 171 131 16 0
	1 88 718 1208 473 32 0

3: The first values of q n,k with n ∈ {1, . . . , 7} and k ∈ {1, . .

  Table 4.4: Values of t n,k (the number of increasing Schröder trees with n leaves and k internal nodes) for n ∈ {1, 2, . . . , 7}, and k ∈ {0, 1, . . . , n -1}.

	1
	0 , 1
	0 , 1, 2
	0 , 1, 5, 6
	0 , 1, 9, 26, 24
	0 , 1, 14, 71, 154, 120
	0 , 1, 20, 155, 580, 1044, 720

and t n,k = 0 otherwise. The first values of t n,k are listed in Table

4

.4. Note that, for all n ≥ 1, t n,n-1 is the number of increasing binary trees (see

[START_REF] Flajolet | Analytic Combinatorics[END_REF]

page 143] for details).

  Table 4.6: The values of t n,k , the number of increasing Schröder trees of size n trees whose leftmost leaf has depth k, for all 0 ≤ k < n ∈ {1, 2, . . . , 7}.

				□
	1
	0 , 1
	0 , 2,	1
	0 , 6,	5,	1
	0 , 24, 26,	9,	1
	0 , 120, 154, 71, 14, 1
	0 , 720, 1044, 580, 155, 20, 1

2.19

, is the generating function of all size n permutations with k cycles. Therefore, using Lemma 4.2.19, we get that Y n = n-X n in distribution, where X n is the number of internal nodes in a typical increasing Schröder tree, which concludes the proof, by Theorem 4.2.18.

  3.4 we will exhibit two bijections with Ordered Set partitions. Then in Section 4.3.4.3 we will show how strict monotonic Schröder trees can be generated from increasing Schröder by using Euler ian numbers and runs in permutations. We conclude the study by analysing some parameters on the trees where the results are summarised in Table4.7.

		Mean	Variance	Limit law
	Internal nodes	n -ln 2 ln n
	Distinct labels	1 2 ln 2 n

(1-ln 2)

(2 ln 2)

2

n Normal Degree of the root 2 ln 2 + 1 -2 ln 2 (ln 2 -1) (shifted) zerotruncated Poisson Depth of the leftmost leaf ln n ln n Normal Table 4.7: Summary of the main results on parameters of Strict monotonic Schröder trees

  's are the Stirling partition numbers (also called Stirling numbers of the second kind, see [FS09, Appendix A.8]). They count the number of ways to partition a set of n objects into k nonempty subsets. Theorem 4.3.4. The number b n is equal to the number g n+1 of strict monotonic Schröder trees of size n + 1, which implies that, for all n ≥ 1,

	n ℓ=0	ℓ!	n ℓ	∼ n→∞	n! 2 (ln 2) n+1 ,
	where the n ℓ

/2 as claimed. □ Recall that ordered Bell numbers are specified by B = Seq(Set ≥1 Z) and thus have exponen tial generating function B(z) = 1/(2-e z ). This directly implies that our sequence (g n ) n≥0 is equal to the sequence of ordered Bell numbers shifted by one, since B(z) is the derivative of BG(z). This link between strict monotonic trees and ordered Bell numbers has the interest ing following consequence: we have shown that the (shifted) ordinary generating function of the ordered Bell numbers satisfies Equation (4.17). As far as we can tell, this was not known before.

The asymptotic behaviour of ordered Bell numbers is known (see, e.g., [FS09, p. 109]): if we denote by b n the nth ordered Bell number, then b n =

  ). The first element gives [{3}, {1, 2}] and the second gives [{3}, {1}, {2}]. Another example is depicted in Figure 4.13.

If we look back at the bijection on Increasing Schröder trees presented in Section 4.2.5.1 with the mapping M. It is possible to do a mirror mapping M, for permutations where 2 comes before 1. For instance if n = σ 1 then we add a node to the last internal node of the tree. In the other case, we enumerate the leaves from left to right and add a new binary node. As a consequence of this mapping. Let MHP be the class of permutations where 2 appears before 1. then, Lemma 4.3.7. Let σ be an npermutation and σ ∈ HP (i.e 1 appears before 2). Then M(mir(σ)) gives the same tree.

  8 ≈ 1.4956. □ Proof of Theorem 4.4.2. The latter Lemma 4.4.4 gives a proof of Theorem 4.4.2. But in order to get a better upper bound for the constant c, let us introduce another proof. In the proof of Lemma 4.4.4 we have proved

  example of the bijection is depicted in Figure 4.19. Proof. From the definition, it is clear that two different trees have two distinct images by M ′′ , thus implying that M ′′ is injective; this is enough to conclude since |G n-1 | = |S n | (see Proposition 4.4.3 for the cardinality of S n ). □ Remark: It is interesting to note that this graph model is a labelled version of the binomial random graph G n ( 1 /2) = (V, E) defined as follows: V = {1, . . . , n} and each edge belong to E with probability 1/2, independently from the other edges. This model, also called the ErdösRenyi random graph was originally introduced by Erdös and Renyi [ER59], and simul taneously by Gilbert

	Theorem 4.4.5. The mapping M

′′ is bijective, and M

′′ (S n ) = G n-1 .

  where we have used Proposition 4.4.3 and the fact that t n conditioned on being in S n is uniformly distributed in this set and thus E[H F

n | t n ∈ S n ] = EH S n . By Proposition 4.4.10, we thus get E[H F n ] ≥ n /3, as claimed. □

Table 5

 5

	.1 sums up some of the most important examples that this evolution process captures.
	More examples are discussed in Section 5.3.

Supertrees are a class of rooted plane binary increasing trees where labels can appear twice. It has been introduced as a model of tree of life in [SDH + 04]. This class can be specified using our evolution process with ϕ(z) = z 2 and r = {1, 2}. Monotonic dary trees will be

Table 5 .

 5

4: Asymptotic behaviour for B d n for d ∈ {1, 2, 3, 4} when n ≡ 0 mod d. The se quences in OEIS appear shifted (without periodicities).

  The first terms of S(z) are z + z 2 + 3z 3 + 11z 4 + 45z 5 + 197z 6 + . . . . Hence. Let CS be the class of connected Schröder trees. The class CS is specified with parameters r = {1} and ϕ(z) = S(z)-z, then first values of CS n , i.e., the number of connected monotonic Schröder trees with n leaves,

are 0, 1, 1, 5, 32, 240, 2036, 19196, 199020, 2251764, 27630972, . . . We have by Theorem 5.2.6, CS n ∼ κ ϕ n! n 2 .

  .6 for a summary.

		r	ϕ(z)	Asymptotics References
	Increasing Binary Trees {1} z 2	(n -1)!	[FS09],Theorem 5.2.6
	C. M. Binary Trees	{1} (B(z) -z) α n! n	Theorem 5.2.6
	Increasing Schröder C. M. Schröder trees	{1} z 2 1-z {1} (S(z) -z) β n! n 2 1 2 n!	[BGN19],Theorem 5.2.6 Theorem 5.2.6
	Table 5.6: Connected monotonic and increasing labelling for binary and Schröder trees. 'C.
	M." stands for "Connected Monotonic"

  2 ) n n ln 2 Theorem 5.2.6 Table 5.8: Comparison of the asymptotic behaviour of labelled binary trees under different labelling models.

The first few values of M B n , i.e the number of monotonic binary trees with (n -1) internal nodes and n leaves, are 0, 1, 1, 4, 22, 152, 1264, 12304, 137332, 1729584, 24265584, . . . By Theorem 5.2.6, we have that,

Table 5 .

 5 11: The first values of T d

	12	1	1	0	0
	60	4	1	1	0
	360	8	1	1	1
	2520	28	5	1	1
	20160	76	10	1	1
	181440	272	16	6	1
	1814400	880	51	12	1
	19958400	3328	131	19	7
	239500800	12128	275	27 14
	3113510400	48736	785	81 22
	43589145600	194272	2226 201 31
	653837184000	827840	5526 81 41
	10461394944000 3547648 15731 410 118
	177843714048000 15965248 46895 734 286

n , 2 ≤ d ≤ 6 and n ∈ {1, .., 17}. stretched exponential of the following form. The case where d = 3, can still be solved using exact different equations solutions. But for d > 3 the full asymptotic behaviour is still an open question. The recurrence has the form for a fixed d ≥ 2,

Average compression of Pólya trees under increasingly labelled distribution 162 6.3 Average compression of plane binary trees under increasingly labelled distribution

	6.1 Introduction	157
	6.2 170
	6.4 A compressed data structure	182
	6.5 Conclusion	184
	Kennst du das Land, wo die
	Zitronen blühn, Im dunklen
	Laub die Goldorangen glühn,
	Ein sanfter Wind vom blauen
	Himmel weht, Die Myrte still
	und hoch der Lorbeer steht?
	Kennst du es wohl? Dahin,
	dahin Möcht ich mit dir, o mein
	Geliebter, ziehn! 1
	Johann Wolfgang von Goethe
	(17491832), Kennst du das
		Land
	1

  2.1 we know that ϵ = O (1/k 2 ) and thus ρk ∼ 1, as k tends to infinity, and R(ρ) = w(t)ρ k+1 /(k + 1) + O (1/k 3 ). This implies

				ϵ ∼	w(t) k + 1	ρk+1 ∼	w(t) k	,	(6.8)
	as desired.								□
	Remark 6.2.3. Using more terms of the expansion of G(z), it is possible to derive a more
	accurate asymptotic expression for ϵ (in principle up to arbitrary order). As an example, we
	state
	ρ = 1 +	w(t) k + 1	+	w(t) 2 (3k + 1) (k + 1)(4k + 2)	+	w(t) 3 (29k 3 + 32k 2 + 10k + 1) 6(k + 1) 2 (2k + 1)(3k + 1)	+ O	w(t) 4

  2 /2 .For the sake of simplified reading we will use the abbreviation t :=

	t∈P ≤n	in the re
	|t|=k
	mainder of this proof. Since x → 1 -exp -nx + nx 2 2
		(6.14)

  the root of t has one child t ′ 1 k w(t ℓ )w(t r ) if the root of t has the two children t ℓ and t r . Now proceed by induction: Set w n := max t : |t|=n w(t). Then we have obviously thatw n = max{w ℓ • w n-1-ℓ | ℓ = 0..n -1}/n with w 0 = 1. For the first seven values a direct compu tation shows

	(w 1 , w 2 , . . . , w 7 ) = 1,	1 2	,	1 3	,	1 8	,	1 15	,	1 36	, and	1 63	.
	As the first seven values of the sequence 1/2 k-2 are
	2, 1,	1 2	,	1 4	,	1 8	,	1 16	, and	1 32	,

  2 = O (w(t) 2 /k 2 ) and hence ϵ ∼ 2w(t)/k 2 , which finishes the proof. □ So, Lemma 6.3.3 ensures that for |t| = k tending to infinity the generating function S t (z) has a dominant singularity at ρ ∼ 1 + 2w(t)/k 2 . Now we show that in a circle with radius smaller than 1 + 2 ln(k)/k there is no other singularity for S t (z). Let ρ be the dominant singularity of S t (z). Then, for all δ > 0 the following assertion holds: If k is sufficiently large, then the generating function S t (z) does not have any singularity in the domain ρ

	Lemma 6.3.4.

  and C k tends to infinity with k: In this case we have |z| k+1 ∼ e C k = o(k 2 ), and thus |F (z) -G(z)| = o(w(t)) and F ∼ 1 + o (w(t)k) ∼ 1 when k tends to infinity. Using again Equation (6.18) yields ũ

  Boltzmann sampling is closely related to the Boltzmann distribution used in statistical mechanics. The idea of applying Boltzmann samplers for combinatorial classes has been introduced in 2004 by Duchon, Flajolet, Louchard and Schaeffer in[START_REF] Duchon | Boltzmann samplers for the random generation of combinatorial structures[END_REF].

	7.1 Introduction
	CHAPTER 7 Boltzmann sampling is a method for constructing random generation algorithms for combi
	natorial structures.
	Random generation
	Contents
	7.1 Introduction
	7.2 Efficient uniform samplers for the three models of increasing Schröder
	trees
	7.2.1 Increasing Schröder
	7.2.2 Strict monotonic Schröder
	7.2.3 Strict monotonic general Schröder
	7.3 General Model uniform random generation
	7.3.1 Generating the elements of A n,ϕ from Integer partitions
	7.3.2 Sampling algorithm
	7.4 Conclusion
	La création a toujours besoin de
	hasard. 1
	Jacques Godbout (1933 ), Les
	Têtes à Papineau
	1 Creation always needs chance

  The function UnrankComposition is an unranking algorithm (based the re verse lexicographic order) and calling it with the parameters ℓ ≤ n and a uniformlysampled integer r in {0, . . ., n-1ℓ-1 -1}, gives as output a uniform composition of n in ℓ parts. Using the memorisation of binomial coefficients, the algorithm needs at most (ℓ -1) arith metic operations on big integers.

	Algorithm 2 Reverse Lexicographic Composition Unranking
	1: function UnrankComposition(n, ℓ, r)
	2:	if n = ℓ and r = 0 then
	3:	return (1, 1, . . . , 1)
	4:	if r < n-2 ℓ-1 then
	5:	C :=UnrankComposition(n -1, ℓ, r)
	6:	C[0] := C[0] + 1
	7:	return C
	8:	else
	9:	s := r -n-2 ℓ-1
	10:	C := (1) ∪ UnrankComposition(n -1, ℓ -1, s)
	11:	return C
	Theorem 7.2.2.

z 2 4 √ 1-z . The nominator is entire while the denominator is singular at 1. However, the denominator is ∆analytic and so does R(z). We can write the singular expansion of R(z) at z = 1. The factor (1 -z) -1

Classical objects in Combinatorics

Three models of increasing Schröder trees

General asymptotics for varieties of monotonic Schröder trees

where min() returns the smallest value of a set

We are grateful to Professor Stephan Wagner for helping with the last calculations on a related problem.

Average compaction of increasing tree models

Remerciements

if i > min(ℓ, n -ℓ) then 12:

i := 1 13: ℓ := ℓ + 1 14:

if i > 1 then 15:

i := i -1 16: else 17:

Substitute in T , using traversal T , the leaves selected with B with internal nodes 27:

and new leaves according to C and the other leaves are changed or not based on F 28:

return the tree T

The sequences (f ℓ ) ℓ≤n and (ℓ!) ℓ∈{1,...,n} have been precomputed and stored.

loop allows to determine the values for ℓ, i and r. Then the recursive call is done using the adequate rank r mod f n-ℓ . The last lines of the algorithm (for 21 to 27) are necessary to modify the tree T of size n -ℓ that has just been built. In line 22 we determine which leaves T will be substituted by internal nodes (of arity at most 2) with new leaves. It is based on the unranking of combinations that is very close to the unranking of compositions. Then for the other leaves that are either kept as they are of replaced by unary internal nodes attached to a leaf we use the integer F seen as a n-ℓ-ibit integer: if the bit #s is 0 then the corresponding

], and m = max(a) we have:

Index of Open questions