Stochastic chains with memory of variable length

Stochastic chains with memory of variable length constitute an interesting family of stochastic chains of infinite order on a finite alphabet. The idea is that for each past, only a finite suffix of the past, called context, is enough to predict the next symbol. These models were first introduced in the information theory literature by Rissanen (1983) as a universal tool to perform data compression. Recently, they have been used to model up scientific data in areas as different as biology, linguistics and music. This paper presents a personal introductory guide to this class of models focusing on the algorithm Context and its rate of convergence.


Introduction
Chains with memory of variable length appear in Rissanen's 1983 paper called A universal data compression system. His idea was to model a string of symbols as a realization of a stochastic chain where the length of the memory needed to predict the next symbol is not fixed, but is a deterministic function of the string of the past symbols.
Considering a memory of variable length is a practical way to overcome the well known difficulty of the exponentially growing number of parameters which are needed to describe a Markov chain when its order increases. However if one wants to fit accurately complex data using a Markov chain of fixed order, one has to use a very high order. And this means that to estimate the parameters of the model we need huge samples, which makes this approach unsuitable for many practical issues.
It turns out that in many important scientific data, the length of the relevant portion of the past is not fixed, on the contrary it depends on the past. For instance, in molecular biology, the translation of a gene into a protein is initiated by a fixed specific sequence of nucleotide bases called start codon. In other words, the start codon designs the end of the relevant portion of the past to be considered in the translation.
The same phenomenon appears in other scientific domains. For instance in linguistics, both in phonology and in syntax, there is the notion of domains in which the grammar operates to define admissible strings of forthcoming symbols. In other terms, the boundary of the linguistic domain defines the relevant part of the past for the processing of the next linguistic units.
Rissanen's ingenious idea was to construct a stochastic model that generalizes this notion of relevant domain to any kind of symbolic strings.
To be more precise, Rissanen (1983) called context the relevant part of the past. The stochastic model is defined by the set of all contexts and an associated family of transition probabilities.
Models with memory of variable length are not only less expensive than the classical fixed order Markov chains, but also much more clever since they take into account the structural dependencies present in the data. This is precisely what the set of contexts expresses.
Rissanen has introduced models having memory of variable length as a universal system of data compression. His goal was to compress in real time a string of symbols generated by an unknown source. To do this, we have to estimate at each step the length of the context of the string observed until that time step, as well as the associated transition probabilities.
If we knew the contexts, then the estimation of the associated transition probabilities could be done using a classical procedure such as maximum likelihood estimation. Therefore, the main point is to put hands on the context length. In his seminal 1983 paper, Rissanen solved this problem by introducing the algorithm Context. This algorithm estimates in a consistent way both the length of the context as well as the associated transition probability.
The class of models with memory of variable length raises interesting questions from the point of view of statistics. Examples are the rate of convergence and the fluctuations of the algorithm Context and other estimators of the model. Another challenging question would be how to produce a robust version of the algorithm Context.
But also from the point of view of probability theory, this class of models is interesting. In effect, if the length of the contexts is not bounded, then chains with memory of variable length are chains of infinite order. Existence, uniqueness, phase-transitions, perfect simulation are deep mathematical questions that should be addressed to in this new and challenging class of models.
Last but not least, models of variable length revealed to be very performing tools in applied statistics, by achieving in an efficient way classification tasks in proteomics, genomics, linguistics, classification of musical styles, and much more.
In what follows we present a personal introductory guide to this class of models with no attempt to give a complete survey of the subject. We will mainly focus on the algorithm Context and present some recent results obtained by our research team.

Probabilistic context trees
In what follows A will represent a finite alphabet of size |A|. Given two integers m ≤ n, we will denote by x n m the sequence (x m , . . . , x n ) of symbols in A. Let A * + be the set of all finite sequences, that is We shall write A = A {...,−n,...,−2,−1} , and denote by x −1 −∞ any element of A. Our main object of interest is what we shall call context length function.
Definition 2.1 A context length function l is a function l : A * + → {1, 2, . . .}∪{∞} satisfying the following two properties. (i) For any k ≥ 1, for any x −1 −k ∈ A * + , we have Intuitively, given a sequence x −1 −∞ , the function l tells us, at which position in the past we can stop since we have reached the end of the context. The first condition is a kind of adaptivity condition. It tells us that we can decide whether the end of the context has already been reached at step k just by inspecting the past sequence up to that step. If l equals +∞, we have to look further back in the past. The second condition is a consistency condition. It tells us that once we have reached the bound of the context, we do not have to look further back in the past, and that the context of a longer sequence x −1 −i , i > k, is also the context of x −1 −k . In other terms, once the identification of the context is made at a given step k, this decision will not be changed by any further data present in the past before k.
By abuse of notation, we shall also call l the natural extension of the context length function to A, given by Definition 2.3 Let l be a given context length function. A stationary stochastic chain (X n ) n∈Z Z taking values in A is a chain having memory of variable length, if for any infinite past x −1 −∞ ∈ A and any symbol a ∈ A, we have (2.1) We shall use the short hand notation We are mainly interested in those values of Observe that the set {ℓ(X −1 −∞ ) = k} is measurable with respect to the σ-algebra generated by X −1 −k . Thus we have Proposition 2.4 Let (X n ) be a stationary chain as in definition 2.3, having context length function l.
Given a context length function l, we define an associated countable subset τ ⊂ A * + by To simplify notation, we will denote by x and y generic elements of τ.
Definition 2.5 Given a finite sequence x −1 −k , we shall call suffix of x −1 −k each string x −1 −j with j ≤ k. If j < k we call x −1 −j proper suffix of x −1 −k . Now let S ⊂ A * + . We say that S satisfies the suffix property if for no x −1 −k ∈ S, there exists a proper suffix The following proposition follows immediately from property (ii) of definition 2.1.
Proposition 2.6 Given a context length function l, the associated set τ l satisfies the suffix property.
As a consequence, τ can be identified with the set of leaves of a rooted tree with a countable set of finite labeled branches.
Definition 2. 7 We call probabilistic context tree on A the ordered pair (τ, p), where is the family of transition probabilities of (2.2). We say that the probabilistic context tree (τ, p) is unbounded if the function l is unbounded.
Definition 2.8 Let (X n ) n∈Z Z be a stationary chain and let (τ, p) be a probabilistic context tree. We shall say that (X n ) n∈Z Z is compatible with (τ, p), if (2.2) holds for all x ∈ τ.
In order to illustrate these mathematical concepts, let us consider the following example. Example 2.9 Consider a two-symbol alphabet A = {0, 1} and the following context length function Then the associated tree τ is given by where 10 k represents the sequence (x −k−1 , x −k , . . . , x −1 ) such that x −i = 0 for all 1 ≤ i ≤ k and x −k−1 = 1.
The associated transition probabilities are defined by Clearly, the stochastic chain associated to this context length function l is a chain of infinite order. This raises the mathematical question of existence of such a process. It is straightforward to see that the following proposition holds true. Proposition 2.10 Suppose that X 0 = 1. Put T 1 = inf{k ≥ 1 : X k = 1}. A necessary and sufficient condition for T 1 < +∞ almost surely is This means that if (2.3) is satisfied, then -provided the chain starts from 1 -almost surely there will be appearance of an infinite number of the symbol 1. This implies that there exists a non-trivial stationary chain associated to this probabilistic context tree.
Observe that the process X n is actually a renewal process with the renewal times defined as follows.
T 0 = sup{n < 0 : X n = 1}, and for k ≥ 1, This example shows clearly that the tree of contexts defines a partition of all possible pasts with the exception of the single string composed of all symbols identical to 0. The condition (2.3) shows that it is possible to construct the chain taking values in the set of all sequences having an infinite number of symbols 1 both to the left and to the right of the origin.
However, we could also include this exceptional string to the set of possible contexts by defining an extra parameter q ∞ . This is the choice of Csiszár and Talata (2006). If q ∞ is strictly positive, then condition (2.3) implies that after a finite time, there will appearance of the symbol 1, even if we start with an infinity of symbols 0. In other terms, this exceptional string does not have to be considered if we are interested in the stationary regime of the chain.
In case that q ∞ = 0 and (2.3) holds, we have the phenomenon of phase transition. One of the phases is composed of only one string having only the symbol 0.
The renewal process is an interesting example of a chain having memory of unbounded variable length. In the case where the probabilistic context tree is bounded, the corresponding chain is in fact a Markov chain whose order is equal to the maximal context length. However, the tree of contexts provides interesting additional information concerning the dependencies in the data and the structure of the chain. This raises the issue how to estimate the context tree out of the data. This was originally solved in Rissanen's 1983 paper using the algorithm Context.
At this point it is important to discuss the following minimality issue. Among all possible context trees fitting the data, we want of course to identify the smallest one. This is the tree corresponding to the smallest context length function. More precisely, if l and l ′ are context length functions, we shall say that From now on we shall call context of a string x −1 −∞ the context associated to the minimal context length function. Estimating this minimal context is precisely the goal of the algorithm Context.

The algorithm Context
We now present the algorithm Context introduced by Rissanen (1983). The goal of the algorithm is to estimate adaptively the context of the next symbol X n given the past symbols X n−1 0 . The way the algorithm Context works can be summarized as follows. Given a sample produced by a chain with variable memory, we start with a maximal tree of candidate contexts for the sample. The branches of this first tree are then pruned starting from the leaves towards the root until we obtain a minimal tree of contexts well adapted to the sample. We associate to each context an estimated probability transition defined as the proportion of time the context appears in the sample followed by each one of the symbols in the alphabet. We stop pruning once the gain function exceeds a given threshold.
Let X 0 , X 1 , . . . , X n−1 be a sample from the finite probabilistic tree (τ, p). For any finite string x −1 −j with j ≤ n, we denote N n (x −1 −j ) the number of occurrences of the string in the sample Rissanen first constructs a maximal candidate context X n−1 n−M (n) where M (n) is a random length defined as follows Here C 1 and C 2 are arbitrary positive constants. In the case the set is empty we take M (n) = 0. Rissanen then shortens this maximal candidate context by successively pruning the branches according to a sequence of tests based on the likelihood ratio statistics. This is formally done as follows.
Notice that Λ n (x −1 −i ) is the log-likelihood ratio statistic for testing the consistency of the sample with a probabilistic suffix tree (τ, p) against the alternative that it is consistent with (τ ′ , p ′ ) where τ and τ ′ differ only by one set of sibling nodes branching from x −1 −i . Λ n (x −1 −i ) plays the role of a gain function telling us whether it is worth or not taking a next step further back in the past.
Rissanen then defines the length of the estimated current contextl n aŝ ℓ n (X n−1 where C 2 is any positive constant. Then, the result in Rissanen (1983) is the following.
Theorem 3.1 Given a realization X 0 , . . . , X n−1 of a probabilistic suffix tree (τ, p) with finite height, then P l n (X n−1 as n → ∞.
Rissanen proves this result in a very short and elegant way. His starting point is the following upper bound.
Then he provides the following explicit upper bound for the conditional probability in the right-hand side of (3.10) where C 1 , C 2 and C ′ 2 are positive constants independent of the maximum of the context length function.
With respect to the second term he only observes that, by ergodicity, for each as n → ∞. Since τ is finite the convergence in (3.12) implies the desired result.

The unbounded case
In his original paper, Rissanen was only interested in the case of bounded context trees. However, from the mathematical point of view, it is interesting to consider also the case of unbounded probabilistic context trees corresponding to chains of infinite order. It can be argued that also from an applied point of view the unbounded case must be considered as noisy observation of Markov chains generically have infinite order memory. The unbounded case raises immediately the preliminary question of existence and uniqueness of the corresponding chain. This issue can be addressed by adapting to probabilistic context trees the conditions for existence and uniqueness that have already been proved for infinite order chains. This is precisely what is done in the paper by Duarte et al. (2006) who adapt the type A condition presented in Fernández and Galves (2002) in the following way.
To simplify the presentation, let us introduce some extra notation. Recall that x and y denote generic elements of τ.  2. Continuity, that is as k → ∞. We also define The sequence {β(k)} k ∈ IN is called the continuity rate.
For a probabilistic suffix tree of type A with summable continuity rate, the maximal coupling argument used in Fernández and Galves (2002) implies the uniqueness of the law of the chain consistent with it.
We now present a slightly different version of the algorithm Context using the same gain function Λ n but in which the length of the maximum context candidate is now deterministic and nor more random. More precisely, we define the length of the biggest candidate context now as with a suitable positive constant C 1 . The intuitive reason behind the choice of the upper bound length C 1 log n is the impossibility of estimating the probability of sequences of length much longer than log n based on a sample of length n. Recent versions of this fact can be found in Shields (1994, 1996) and Csiszár (2002). Now, the definition ofl n is similar to the one in the original algorithm of Rissanen, that iŝ where C 2 is any positive constant.
The reason for taking the length of the maximum context candidate deterministic and no more random is to be able to use the classical results on the convergence of the law of Λ n (x −1 −i ) to a chi-square distribution. However, we are not in a Markov setup since the probabilistic context tree is unbounded, and the chi-square approximation only works for Markov chains of fixed finite order.
To overcome this difficulty, we use the canonical Markov approximation of chains of infinite order presented in Fernández and Galves (2002) that we recall now by adapting the definitions and theorem to the framework of probabilistic context trees. The goal is to approximate a chain compatible with an unbounded probabilistic context tree by a sequence of chains compatible with bounded probabilistic context trees. Definition 4.2 For all k ≥ 1, the canonical Markov approximation of order k of a chain (X n ) n∈Z Z is the chain with memory of variable length bounded by k compatible with the probabilistic context tree (τ for all a ∈ A, x ∈ τ, and where Observe that for contexts x ∈ τ which length does not exceed k, we have p [k] (a|x) = p(a|x). However, for sequences x −1 −k which are internal nodes of τ , there is no easy explicit formula expressing p [k] (·|x −1 −k ) in terms of the family {p(·|y), y ∈ τ }.
The main result of Fernández and Galves (2002) that will be used in the proof of the consistency of the algorithm Context can be stated as follows. Theorem 4.3 Let (X n ) n∈Z Z be a chain compatible with a type A probabilistic context tree (τ, p) with summable continuity rate, and let (X [k] n ) n∈Z Z be its canonical Markov approximation of order k. Then there exists a coupling between (X n ) n∈Z Z and (X [k] n ) n∈Z Z and a constant C > 0 such that Using this result and the classical chi-square approximation for Markov chains, Duarte et al. (2006) proved the consistency of their version of the algorithm Context in the unbounded case and also provided an upper bound for the rate of convergence. Their result is the following.
Theorem 4.4 Let X 0 , X 2 , . . . , X n−1 be a sample from a type A unbounded probabilistic suffix tree (τ, p) with continuity rate β(j) ≤ f (j) exp{−j}, with f (j) → 0 as j → ∞. Then, for any choice of positive constants C 1 and C 2 in (4.15) and (4.16), there exist positive constants C and D such that The proof can be sketched very easily. Take k = k(n) = C 1 log(n) and construct a coupled version of the processes (X t ) t∈Z Z and (X [k(n)] t ) t∈Z Z . First of all notice that for k = k(n), P l n (X 0 , . . . , X n−1 ) = ℓ(X 0 , . . . , X n−1 ) ≤ P l n (X (4.20) Using the inequality (4.19) of Fernández and Galves (2002), the second term in (4.20) can be bounded above as i } ≤ n C β(k(n)).
The first term in (4.20) can be treated using the classical chi-square approximation for the log-likelihood ratio test for Markov chains of fixed order k.
More precisely, we know that for fixed x −1 −i , under the null hypothesis, the statistics Λ n (x −1 −i ), given by (3.7), has asymptotically chi-square distribution with |A| − 1 degrees of freedom (see, for example, van der Vaart (1998)). We recall that, for each x −1 −i the null hypothesis (H i 0 ) is that the true context is x −1 −i . Since we are going to perform a sequence of k(n) sequential tests where k(n) → ∞ as n diverges, we need to control the error in the chi-square approximation. For this, we use a wellknown asymptotic expansion for the distribution of Λ n (x −1 −i ) due to Hayakawa (1977) which implies that where D is a positive constant and χ 2 is random variable with distribution chi-square with |A| − 1 degrees of freedom. Therefore, it is immediate that P Λ n (x −1 −i ) > C 2 log n ≤ e −C 2 log n + D/n .
By the way we definedl n in (4.16), in order to findl n (X n−1 0 ) we have to perform at most k(n) tests. We want to give an upper bound for the overall probability of type I error in a sequence of k(n) sequential tests. An upper bound is given by the Bonferroni inequality, which in our case can be written as This last term is bounded above by C 1 log n(n −C 2 + D/n). This concludes the proof. Theorem 4.4 not only proves the consistency of the algorithm Context, but it also gives an upper bound for the rate of convergence. The estimation of the rate of convergence is crucial because it gives a bound on the minimum size of a sample required to guarantee, with a given probability, that the estimated tree is the good one. This is the issue we address to in the next section.

Rate of convergence of the algorithm Context
Note that Rissanen's original theorem 3.1 as well as theorem 4.4 only show that all the contexts identified are true contexts with high probability. In other words, the estimated tree is a subtree of the true tree with high probability. In the case of bounded probabilistic context trees this missing point was handled with in Weinberger et al. (1995). This paper not only proves that the set of all contexts is reached, but also gives a bound for the rate of convergence.
More precisely, let us define the empirical treê : j = n/2, . . . , n . (5.22) Actually, this is a slightly simplified version of the empirical tree defined in Weinberger et al. (1995). In particular, we are neglecting all the computational aspects considered there. But from the mathematical point of view, this definition perfectly does the job. Their convergence result is the following.
In the unbounded case, this issue was treated without estimation of the rate of convergence in Ferrari and Wyner (2003) and including estimation of the rate of convergence in Galves and Leonardi (2008).
This last paper considers another slightly modified version of the algorithm Context using a different gain function, which has been introduced in Galves et al. (2007). More precisely, let us define for any finite string x −1 −k ∈ A * + the gain function This gain function is well adapted to use exponential inequalities for the empirical transition probabilities in the pruning procedure rather than the chi-square approximation of the loglikelihood ratio as in theorems 3.1 and 4.4.
The theorem is stated in the following framework. Consider a a stationary chain (X n ) n∈Z Z compatible with an unbounded probabilistic context tree (τ, p). For this chain, we define the sequence (α n ) n∈IN by We assume that the probabilistic context tree (τ, p) satisfies the condition (4.13) of weakly non-nullness, that is α 0 > 0. We assume also the following summability condition Given a sequence x j 1 = (x 1 , . . . , x j ) ∈ A j we denote by Then for an integer m ≥ 1, we define and Intuitively, D m tells us how distinctive is the difference between transition probabilities associated to the exact contexts and those associated to a string shorter one step in the past. We do not want to impose restrictions on the transition probabilities elsewhere then at the end of the branches of the context tree. This has to do with the pruning procedure which goes from the leaves to the root of the tree. In the unbounded case, a natural way to state the convergence results is to consider truncated trees. The definition is the following. Given an integer K we will denote by τ | K the tree τ truncated to level K, that is Actually, this is exactly the same tree which was called τ [K] in (4.17). The notation τ | K is more suitable for what follows. The associated empirical tree of height k is defined in the following way.
Definition 5.2 Given δ > 0 and k < n, the empirical tree is defined aŝ In case r = k, the string y −(r+1) −(r+j) is empty.
Note that in this definition, the parameter δ expresses the coarseness of the pruning criterion and k is the maximal length of the estimated contexts. Now, Galves and Leonardi (2008) obtain the following result on the rate of convergence for the truncated context tree. Theorem 5.3 Let (τ, p) be a probabilistic context tree satisfying (4.13) and (5.23). Let X 0 , . . . , X n be a stationary stochastic chain compatible with (τ, p). Then for any integer K, any k satisfying k > max for any δ < D k and for each we have that In this theorem, the empirical trees have to be of height k ≥ K for the following reason. Truncating τ at level K implies that contexts longer than K are cut before reaching their end, and associated transition probabilities might not differ when comparing them at length K and K − 1. That's why we consider the bigger empirical tree of height k satisfying condition (5.26). This guaranties that for each element x of the truncated empirical tree there is at least one real context y which has x as its suffix. As a consequence of theorem 5.3, Galves and Leonardi (2008) obtain the following strong consistency result. The main ingredient of the proof of theorem 5.3 is an exponential upper bound for the deviations of the empirical transition probabilities. More precisely, Galves and Leonardi (2008) prove the following result.
The proof of this theorem is inspired by recent exponential upper bounds obtained by Dedecker and Doukhan (2003), Dedecker and Prieur (2005) and Maume-Deschamps (2006). It is based on the following loss-of-memory inequality of Comets et al. (2002). Theorem 5.6 Let (X n ) n∈Z Z be a stationary stochastic chain compatible with the probabilistic context tree (τ, p) of theorem 5.3. Then, there exist a sequence {ρ l } l∈IN such that for any i ≥ 1, any k > i, any j ≥ 1 and any finite sequence x j 1 , the following inequality holds Moreover, the sequence {ρ l } l∈IN is summable and Theorem 5.3 generalizes to the unbounded case previous results in Galves et al. (2008) for the case of bounded context trees. Note that the definition of the context tree estimator depends on the parameter δ, the same appearing in the constants of the exponential bound. To assure the consistency of the estimator we have to choose a δ sufficiently small, depending on the true probabilities of the process. The same thing happens to the parameter k. Therefore, this estimator is not universal, meaning that for fixed δ and k it fails to be consistent for all variable memory processes for which conditions (5.26) and (5.27) are not satisfied. We could try to overcome this difficulty by letting δ = δ(n) → 0 and k = k(n) → +∞ as n increases. But doing this, we loose the exponential character of the upper bound. This could be considered as an illustration of the result in Finesso et al. (1996) who proved that in the simpler case of estimating the order of a Markov chain, it is not possible to have a universal estimator with exponential bounds for the probability of overestimation.

Some final comments and bibliographic remarks
Chains with memory of variable length were introduced in the information theory literature by Rissanen (1983) as a universal system for data compression. Originally called by Rissanen tree machine, tree source, context models, etc., this class of models recently became popular in the statistics literature under the name of Variable Length Markov Chains (VLMC), coined by Bühlmann and Wyner (1999). Rissanen (1983) not only introduced the notion of variable memory models but he also introduced the algorithm Context to estimate the probabilistic context tree. From Rissanen (1983) to Galves et al. (2008), passing by Ron et al. (1996) and Bühlmann and Wyner (1999), several variants of the algorithm Context have been presented in the literature. In all the variants the decision to prune a branch is taken by considering a gain function. Rissanen (1983), Bühlmann and Wyner (1999) and Duarte et al. (2006) all defined the gain function in terms of the log likelihood ratio function. Rissanen (1983) proved the weak consistency of the algorithm Context in the case where the contexts have a bounded length. Bühlmann and Wyner (1999) proved the weak consistency of the algorithm also in the finite case without assuming a prior known bound on the maximal length of the memory but using a bound allowed to grow with the size of the sample.
A different gain function was introduced in Galves et al. (2008), considering differences between successive empirical transition probabilities and comparing them with a given threshold δ. An interesting consequence of the use of this different gain function was obtained by Collet et al. (2007). They proved that in the case of a binary alphabet and when taking δ within a suitable interval, it is possible to recover the context tree in the bounded case out from a noisy sample where each symbol can be flipped with small probability independently of the others.
The case of unbounded probabilistic context trees as far as we know was first considered by Ferrari and Wyner (2003) who also proved a weak consistency result for the algorithm Context in this more general setting. The unbounded case was also considered by Csiszár and Talata (2006) who introduced a different approach for the estimation of the probabilistic context tree using the Bayesian Information Criterion (BIC) as well as the Minimum Description Length Principle (MDL). We refer the reader to this last paper for a nice description of other approaches and results in this field, including the context tree maximizing algorithm by Willems et al. (1995). We also refer the reader to Garivier (2006a, b) for recent and elegant results on the BIC and the Context Tree Weighting Method (CTW). Garivier (2006c) is a very good presentation of models having memory of variable length, BIC, MDL, CTW and related issues in the framework of information theory.
With exception of Weinberger et al. (1995), the issue of the rate of convergence of the algorithm estimating the probabilistic context tree was not addressed in the literature until recently. Weinberger et al. (1995) proved in the bounded case that the probability that the estimated tree differs from the finite context tree is summable as a function of the sample size. Assuming weaker hypotheses than Ferrari and Wyner (2003), Duarte et al. (2006) proved in the unbounded case that the probability of error decreases as the inverse of the sample size. Leonardi (2007) obtained an upper bound for the rate of convergence of penalized likelihood context tree estimators. It showed that the estimated context tree truncated at any fixed height approximates the real truncated tree at a rate that decreases faster than the inverse of an exponential function of the penalizing term. The proof mixes the approaches of Galves et al. (2008) and Csiszár and Talata (2006).
Several interesting papers have recently addressed the question of classification of proteins and DNA sequences using models with memory of variable length, which in bio-informatics are often called prediction suffix trees (PST). Many of these papers have been written from a bioinformatics point of view focusing on the development of new tools rather than being concerned with mathematically rigorous proofs. The interested reader can find a starting point to this literature for instance in the papers by Bejerano  This presentation did not intend to be exhaustive and the bibliography in many cases only gives a few hints about possible starting points to the literature. However, we think we have presented the state of the art concerning the rate of convergence of context tree estimators.
In the introduction we said that Rissanen's ingenious idea was to construct a stochastic model that generalizes the notion of relevant domain (in biology or linguistics) to any kind of symbolic strings. Actually, God only knows what Jorma had in mind when he invented this class of models. The French poet Paul Eluard wrote a book called Les frères voyants. This was the name given in the middle-age to people guiding blind persons. So maybe Rissanen acted as a frère voyant using his intuition to push mathematics and statistics into a challenging new direction.