Normal distributions of finite Markov chains
John Rhodes, Anne Schilling

TL;DR
This paper presents a novel way to express the stationary distribution of finite Markov chains as sums of specific normal distributions linked to planar graphs with loops, building on previous algebraic methods.
Contribution
It introduces a new representation of stationary distributions using normal distributions associated with particular planar graphs, extending prior algebraic approaches.
Findings
Stationary distributions can be expressed as sums of normal distributions.
Normal distributions are associated with planar graphs with loops.
The approach builds on semaphore codes and graph expansions.
Abstract
We show that the stationary distribution of a finite Markov chain can be expressed as the sum of certain normal distributions. These normal distributions are associated to planar graphs consisting of a straight line with attached loops. The loops touch only at one vertex either of the straight line or of another attached loop. Our analysis is based on our previous work, which derives the stationary distribution of a finite Markov chain using semaphore codes on the Karnofsky--Rhodes and McCammond expansion of the right Cayley graph of the finite semigroup underlying the Markov chain.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Normal distributions of finite Markov chains
John Rhodes
Department of Mathematics, University of California, Berkeley, CA 94720, U.S.A.
[email protected], [email protected]
and
Anne Schilling
Department of Mathematics, UC Davis, One Shields Ave., Davis, CA 95616-8633, U.S.A.
Abstract.
We show that the stationary distribution of a finite Markov chain can be expressed as the sum of certain normal distributions. These normal distributions are associated to planar graphs consisting of a straight line with attached loops. The loops touch only at one vertex either of the straight line or of another attached loop. Our analysis is based on our previous work, which derives the stationary distribution of a finite Markov chain using semaphore codes on the Karnofsky–Rhodes and McCammond expansion of the right Cayley graph of the finite semigroup underlying the Markov chain.
Key words and phrases:
Markov chains, stationary distributions, semaphore codes, Kleene expressions, Karnofsky–Rhodes expansion, McCammond expansion, normal distributions
2010 Mathematics Subject Classification:
Primary 20M30, 60J10; Secondary 20M05, 60B15, 60C05
1. Introduction
In our previous paper [RS17], we developed a general theory to compute the stationary distribution of a finite Markov chain. Every finite state Markov chain has a random letter representation, that is, a representation of a semigroup acting on the left on the state space [LPW09]. Combining the Karnofsky–Rhodes and the McCammond expansion of the right Cayley graph of , we were able to provide a construction of the stationary distribution using finite semigroup theory without the use of linear algebra. The construction relies on the concept of lumping; the distributions for the expanded graphs can be computed thanks to normal forms of the elements. The stationary distribution of the original Markov chain is then obtained by lumping.
In this paper, we show that the stationary distribution of any finite Markov chain can be obtained from certain normal (or Gaußian) distributions. The normal distributions are derived from planar graphs by adding directed loops (or circles) to the straight line, which only touch the graph at one point. Let us outline the construction of these normal forms in the remainder of the introduction.
1.1. Straight line
We start with a straight line starting at with further vertices:
\mathbbm{1}$$1$$2$$\cdots$$n-1$$n
1.2. Adding loops
A loop is a sequence of vertices connected by edges such that , but all other vertices with are distinct.
Add a loop to any vertex of the straight line constructed in Section 1.1 (except ) with new vertices, which only touches one existing vertex .
\mathbbm{1}$$1$$2$$v$$\cdots$$n-1$$n$$v_{1}$$v_{2}$$\cdots$$v_{k}$$v_{k-1}
The cut of is
v$$v_{1}$$v_{2}$$\cdots$$v_{k-1}$$v_{k}
Continue to add loops at any vertex (except ), including the new vertices. Multiple loops at a given vertex are allowed.
\mathbbm{1}$$1$$2$$v$$\cdots$$n-1$$n$$v_{1}$$v_{2}$$\vdots$$q$$\cdots$$v_{k}$$v_{k-1}$$q_{1}$$q_{2}$$\vdots$$q_{h}
Let be the directed graph obtained by this procedure. Notice that each such can be drawn in the plane.
1.3. Kleene expressions
Given a finite alphabet , assign a letter to each arrow in the graph . The result is called a loop graph, denoted .
Example 1.1**.**
For the alphabet , we might obtain
\mathbbm{1}$$1$$2$$3$$4$$1^{\prime}$$2^{\prime}$$a$$b$$c$$x$$b$$a$$d$$c$$a
In general, this procedure gives a non-deterministic automata since different edges emitting from a vertex can be labeled by the same letter. In the above example, vertex 1 has two arrows labeled coming out of it.
Denote the set of all paths in a loop graph starting at and ending at (the last vertex on the initial straight line underlying ) by . Here a path is given by
[TABLE]
where are vertices in and are the labels on the edges.
There is a simple inductive way to describe using Kleene expressions. Given a set , define given by the empty string, , and recursively for each integer . Then the Kleene star is
[TABLE]
A Kleene expression only involves letters in , unions, and . To obtain a Kleene expression for , perform the following doubly recursive procedure:
Algorithm 1.
Induction basis: Start at vertex and with the empty expression .
Induction step: Suppose one is at vertex (or ) on the straight line path underlying .
- (1)
Continue to the next vertex (or ) on the straight line path underlying and append the label on the edge from (or ) to . 2. (2)
If there are loops at vertex (or ), append the formal expression
[TABLE]
to . The loops are in one-to-one correspondence with the edges coming into vertex . 3. (3)
If , continue with the next induction step. Else stop and output .
Algorithm 2. For each symbol in the expression for , do the following:
- (1)
Consider the loop from vertex to in . Consider the subgraph of with straight line and all further loops that are attached to any of the vertices in . Attach to . The resulting graph is a new loop graph. Perform Algorithm 1 on to obtain a Kleene expression . Replace the symbol in by . 2. (2)
Continue this process until does not contain any further expressions for some loop , that is, only contains unions, and elements in the alphabet . Then the Kleene expression for is .
The resulting expressions can be made into unionless expressions by using Zimin words
[TABLE]
Expressions for larger unions can be obtained by induction using (1.1).
Example 1.2**.**
Let be as in Example 1.1. Then
[TABLE]
where is the loop attached to vertex 1. Cut this loop and continue the process to obtain
[TABLE]
where is the loop at vertex labelled and is the loop at vertex labelled . We have and , so that altogether we find
[TABLE]
where in the last step we used the Zimin words to get rid of the unions. This is a Kleene expression for .
See Example 3.8 for another example and also compare this construction to the definition of in Definition 3.5.
Main results
We are now going to define normal distributions.
Definition 1.3** (Normal distribution).**
Let be a loop graph with edges labeled by letters in the alphabet . Associate the indeterminate to . Then the normal distribution of is defined as
[TABLE]
We may use the Kleene expressions of the previous section for . The advantage in doing so is that one can immediately obtain rational expressions. Namely, using the geometric series, we find that
[TABLE]
Similarly
[TABLE]
In general, using the recursion (1.1) we derive by induction
[TABLE]
Our main theorem is the following.
Theorem 1.4**.**
The stationary distribution of a finite Markov chain is the sum of normal distributions or certain limits of , where is a loop graph.
The proof of Theorem 1.4 is given in Section 3.3. A more precise version of Theorem 1.4 is stated in Theorem 3.9.
The paper is outlined as follows. In Section 2, we review the main results from [RS17], in particular the expressions for the stationary distribution of a finite Markov chain in terms of semaphore codes of the Karnofsky–Rhodes expansion of the right Cayley graph of the underlying semigroup. In Section 3, we review the McCammond expansion and its relation to semaphore codes and provide the definition of . The map is used to give a proof of Theorem 1.4. The original definition of is due to McCammond, but the applications to random walks are due to the authors.
Acknowledgments
We are grateful to Jon McCammond and Ben Steinberg for discussions. The map of Definition 3.5 is due to McCammond, told to the first author in 1994, written by the first author in 2008, and simplified here.
The first author thanks the Simons Foundation Collaboration Grants for Mathematicians for travel grant #313548. The second author was partially supported by NSF grants DMS–1760329 and DMS–1764153.
2. Stationary distributions of Markov chains
In this section, we provide definitions and review the necessary results we need from [RS17].
2.1. Markov chains
A Markov chain consists of a finite or countable state space together with transition probabilities for the transition for . The matrix is called the transition matrix, which is a column-stochastic matrix, meaning that the column sums of are equal to one.
A Markov chain is irreducible if for any there exists an integer (possibly depending on , ) such that . In other words, one can get from any state to any other state using only steps with positive probability. A state is called recurrent if the system returns to in finitely many steps with probability one.
The stationary distribution of is a vector such that and . In other words, is a right-eigenvector of with eigenvalue one. If the Markov chain is irreducible, the stationary distribution is unique [LPW09].
Next we define lumping of Markov chains. Partition the state space into such that
[TABLE]
One may view such a partition as an equivalence relation if for some . We say that can be lumped with respect to the partition if the transition matrix satisfies [LPW09, Lemma 2.5] [KS76] for all
[TABLE]
The lumped Markov chain is a random walk on the equivalence classes, whose stationary distribution labeled by is .
Every finite state Markov chain has a random letter representation, that is, a representation of a semigroup acting on the left on the state space (see [LPW09, Proposition 1.5] and [ASST15, Theorem 2.3]). In this setting, we transition with probability , where , and is the action of on the state . Let . We assume that generates ; if not, it suffices to consider the subsemigroup generated by . Note that . The transition matrix of is the -matrix
[TABLE]
Note that we may assume that the action of on is faithful as this does not affect the random walk.
If is a semigroup, then denotes with an adjoint identity even if already has an identity.
Definition 2.1** (Ideal).**
Let be a semigroup. A two-sided ideal (or ideal for short) is a subset such that for all . Similarly, a left ideal is a subset such that for all .
If are ideals of , then , so that . Hence every finite semigroup has a unique minimal ideal denoted . As shown in [CP61, KRT68], the minimal ideal of a finite semigroup is the disjoint union of all the minimal left ideals of and the Rees Theorem applies. By [ASST15, Remark 2.8] the faithful left action of on is isomorphic to the left action of on .
Let be a semigroup together with a choice of generators for . Define to be the Markov chain, where the transition for and is given by in the left Cayley graph with probability . Note that we are assuming that all probabilities for are nonzero. Then it was shown in [HM11] (see also [ASST15, Proposition 3.2]) that the recurrent states of are the elements in . Furthermore, the connected components of the recurrent states in the random walk are the minimal left ideals of . The restriction of the random walk to any minimal left ideal is irreducible. Moreover, the chain so obtained is independent of the chosen minimal left ideal. This random walk and the random walk with states a left ideal of and acting on the left made faithful, that is for and , are essentially the same. So we may not distinguish the two cases.
2.2. Karnofsky–Rhodes expansion
In this section, we define the right Cayley graph of a finite semigroup and its Karnofsky–Rhodes expansions.
Definition 2.2** (Right Cayley graph).**
Let be a finite semigroup together with a set of generators . The right Cayley graph of with respect to is the rooted graph with vertex set , root , and edges for all , where in .
A path in is a sequence
[TABLE]
where are vertices in and are edges in . The endpoint of is . The length of the path is , which equals the number of edges. A simple path is a path that does not visit any vertex twice. Empty paths are considered simple. A path which starts and ends at the same vertex is called a circuit. A circuit that is simple, when the last vertex is removed, is called a loop.
Definition 2.3** (Transition edges).**
An edge in the right Cayley graph is a transition edge if there is no directed path from to in . In other words, there does not exist any sequence with such that .
Let us now define the Karnofsky–Rhodes expansion of the right Cayley graph (see also [MRS11, Definition 4.15] and [MSS15, Section 3.4]). Let be the free semigroup with generators , where is the set of all words of length over with multiplication given by concatenation. When we write , we mean the element in when taking the product in the semigroup of the generators .
Definition 2.4** (Karnofksy–Rhodes expansion).**
The Karnofsky–Rhodes expansion is obtained as follows. Start with the right Cayley graph . Identify two paths in
[TABLE]
in if and only if the corresponding paths in
[TABLE]
where and , end at the same vertex and in addition the set of transition edges of and in is equal.
Example 2.5**.**
Consider the right Cayley graph of the Klein -group with zero with generators , where , , and is the zero. The right Cayley graph is
\mathbbm{1}$$(1,-1)$$(-1,1)$$(-1,-1)$$(1,1)$$\square$$a$$b$$b$$a$$a$$b$$\square$$\square$$\square$$\square$$\square
where all three arrows fix the vertex at the bottom. Transition edges are indicated in blue. Double edges mean that right multiplication by the label for either vertex yields the other vertex. The Karnofsky–Rhodes expansion of this right Cayley graph is given by
\mathbbm{1}$$a$$b$$ab$$ba$$a^{2}$$b^{2}$$a^{2}b=aba$$bab=b^{2}a$$\square$$a\square$$ab\square$$a^{2}b\square$$a^{2}\square$$b\square$$ba\square$$b^{2}a\square$$b^{2}\square$$a b$$a b$$b a$$a b$$a$$\square$$\square$$\square$$\square$$\square$$\square$$\square$$\square$$\square$$\square
where arrows fix all the vertices at the bottom.
Proposition 2.6**.**
[RS17*, Proposition 2.15]**
is the right Cayley graph of a semigroup, also denoted by .*
2.3. Stationary distribution
We now review the main results of [RS17], which give the stationary distribution for any Markov chain for a finite semigroup with chosen generators . Recall that is the random walk on the unique minimal ideal of . More precisely, the random walk is given by the left action of on .
To state our results for the stationary distribution, we first need to review the semaphore codes associated to [BPR10]. The semaphore code is the set of all words such that , but .
The main results are the following.
Theorem 2.7**.**
[RS17*, Corollary 2.28]**
The Markov chain is the lumping of with stationary distribution*
[TABLE]
The next result is non-trivial. It requires the assumption that the minimal ideal is left zero, that is, for all .
Theorem 2.8**.**
[RS17*, Theorem 2.12]**
If is left zero, the stationary distribution of the Markov chain is given by*
[TABLE]
As outlined in [RS17, Section 2.9], the case when is not left zero can be constructed from the case when is left zero using the flat operation. That is, one adds an additional generator to the alphabet , which acts as zero. The associated probability is . The elements in the minimal ideal are of the form , where . Since for all , we indeed have that is left zero and hence Theorem 2.8 applies. Then [RS17, Corollary 2.33]
[TABLE]
3. Normal distributions for random walks
In this section, we prove Theorem 1.4. By Theorems 2.7 and 2.8 and Equation (2.3), the stationary distribution is the sum of terms of the form , where (or limits of such expressions). In Section 3.1, we will explain how the semaphore code is related to the McCammond expansion . In Section 3.2, we will then define the map on to deduce that is a sum of normal forms. A proof of Theorem 1.4 is given in Section 3.3. Theorem 3.9 is a more precise version of Theorem 1.4.
3.1. The McCammond expansion and semaphore codes
Let us now turn to the McCammond expansion [McC01, MRS11] of the Karnofsky–Rhodes expansion of the right Cayley graph of . Recall that a simple path in is a path that does not visit any vertex twice. Empty paths are considered simple.
Definition 3.1** (McCammond expansion).**
The McCammond expansion of is the graph with vertex set , which is the set of simple paths in . The edges are given by
[TABLE]
In other words, if the path in is simple, then . Otherwise is a vertex of and then is the initial segment of up to and including .
Remark 3.2**.**
Note that has a spanning tree with the same vertex set as , but only those edges such that .
Example 3.3**.**
The McCammond expansion of of Example 2.5 is given in Figure 1.
By Remark 3.2, the McCammond expansion has a spanning tree . In this tree, the vertices are naturally labeled by the sequence of edge labels in the path from to the vertex. More concretely, if
[TABLE]
is a path in , then the vertex is naturally labeled by . Hence the corresponding vertex in has a normal form given by .
Remark 3.2 also ensures that has the unique simple path property, defined as follows.
Definition 3.4** (Unique simple path property).**
A rooted graph with root has the unique simple path property if for each vertex in there is a unique simple path from the root to .
Elements in the semaphore code are paths in (rather than in ) starting at and ending in . They are also in natural correspondence with words such that and . From the semaphore code, one can obtain the normal form by stripping away all loops in the path.
3.2. Definition of
We are now going to define the map from the set of tuples , where is a graph with the unique simple path property and is a simple path in starting at , to the set of loop graphs. The straight line, that the loop graph is based on, will correspond to . The map was first defined by McCammond (we give a simplified definition here).
Definition 3.5** (McCammond).**
Let be a graph with the unique simple path property and a simple path in starting at . Then is defined by the principle of induction.
Induction basis: Set and start at vertex .
Induction step: Suppose one is at vertex on path . Take the edge from to in .
- (1)
If there is no edge in coming into besides , continue with the unique next vertex in , now denoted (with the current vertex relabeled ), unless . If , then output . 2. (2)
Otherwise there is at least one edge in going into , given by for some . Since has the unique simple path property by assumption, there must be a unique simple path starting at going to along the path followed by the path starting at , going along to , and ending at .
- (a)
Run the induction on in a subgraph of , consisting of all edges and vertices on circuits containing a vertex of . Note that is simple in . The output is . 2. (b)
Modify by attaching disjointly except at and adding edge from in back to . 3. (3)
Repeat step (2) for each edge at vertex . 4. (4)
Continue with the induction step unless . If , then output .
Remark 3.6**.**
If is a rooted graph with the unique simple path property, then with some edges removed (and any vertices that are no longer connected to the root ) still has the unique simple path property. This is the case since either the unique simple path from to is still there or the vertex is now disconnected from and has hence been removed.
The graph in the Induction step (2)(a) in the definition of can be obtained in two steps. First remove all incoming and outgoing edges on the vertices along the path from to , except the edges on the path itself. Remove all vertices that have become disconnected in this process. By the remark above, the resulting graph still has the unique simple path property. In this graph, all simple paths go through the vertex . Hence we may make the root (removing all vertices up to along ). The result is , which still has the unique simple path property.
Example 3.7**.**
Let in
\mathbbm{1}$$1$$2$$3$$4$$a$$b$$c$$a$$d$$a
To compute , we start with , and . We are in step (2) of the Induction step with and . Then and is with the arrow labelled from to removed. Also is with a loop labelled at vertex . Attaching at (with its vertex relabelled to to avoid repetition) and adding edge we obtain
\mathbbm{1}$$1$$2$$3$$4$$2^{\prime}$$a$$b$$c$$a$$b$$d$$a
Since there are no further edges going into vertex , we continue with the induction along . This means that we set , , and . Besides , there is only one other arrow going into in , namely . In this case and is with and the arrows , , and removed. Hence the new with added is
\mathbbm{1}$$1$$2$$3$$4$$2^{\prime}$$a$$b$$c$$a$$b$$d$$a$$a
The remaining induction steps do not change this , which is hence also .
Example 3.8**.**
Consider the McCammond expansion of Example 3.3 (see also Figure 1) and the path in the McCammond tree given by . Then is given by
\mathbbm{1}$$a$$ab$$ab\square$$a$$b$$\square$$\bullet$$\bullet$$a$$a$$b$$b$$\bullet$$\bullet$$\bullet$$a$$a$$b$$b$$a$$a$$\bullet$$\bullet$$\bullet$$b$$b$$a$$a$$b$$b$$\bullet$$\bullet$$\bullet$$a$$b$$a$$b$$\bullet$$\bullet$$\bullet$$b$$a$$b$$a$$\bullet$$a$$a$$\bullet$$b$$b$$\bullet$$b$$b$$\bullet$$a$$a$$\bullet$$a$$a$$\bullet$$b$$b
Following the algorithm explained in Section 1.3, a Kleene expression for is given by
[TABLE]
where
[TABLE]
Hence
[TABLE]
Using that , we find that in the limit
[TABLE]
In a similar fashion, we find
[TABLE]
The stationary probabilities for the elements with and interchanged are obtained by symmetry. It is not hard to check that these probabilities sum to one as desired.
As noted in the introduction, is not necessarily deterministic. There can be several arrows leaving a vertex labeled by the same element . For example, vertex in Example 3.7 has two arrows labeled coming out.
One can make a non-deterministic automata deterministic as follows. If has states with start state and final states not containing , we make a deterministic automata accepting the same strings going from to a member of as follows. The states of are the collection of subsets of determined a follows:
- •
is in ;
- •
if , then for , where .
One continues by induction until the process adds no new subsets. For , start in state . The final states are all the states of such that the intersection with is non-empty.
With this definition, making deterministic gives the automata for back.
3.3. Proof of Theorem 1.4
As explained in Section 2.1, any finite Markov chain can be described as a Markov chain in terms of a finite semigroup with generators . Since by Theorem 2.7, is the sum over , it suffices to prove the statement of Theorem 1.4 for . When is not left zero, we may use the limiting construction of (2.3) to obtain from the case in which the minimal ideal is left zero. Assuming that is left zero, we have by Theorem 2.8
[TABLE]
As explained in Section 3.1, there is a normal form associated to each semaphore code element . Namely, is a path in starting at and the normal form is the simple path with all loops stripped away from ; equivalently the normal form is the path in starting at and ending at , where is the tree associated to the McCammond expansion . In the tree , a path starting at is also naturally in bijection with its endpoint . Hence we may identify vertex with the path from to in or equivalently with the simple path from to in . Therefore, we may rewrite the sum in (3.1) as
[TABLE]
We claim that for a given with
[TABLE]
Recall that by Definition 1.3
[TABLE]
Hence (3.3) can be proved by establishing a bijection
[TABLE]
In fact, we are going to prove a slight generalization of (3.4). Namely, for any we will show that there is a bijection
[TABLE]
where is the set of paths in starting at . Then (3.4) is the special case when .
To define in (3.5), fix , where are the labels in the path in . A path with , can be viewed as with circuits interspersed. More precisely,
[TABLE]
where for all and and any initial subsequence of does not reach the vertex . Here the sets index the set of circuits at vertex and either is a finite set or is the set of positive integers. In other words, each is a circuit from vertex to itself, which does not pass through otherwise. The last step of is an edge in that is not in . Suppose by induction that
[TABLE]
where and or , is mapped to in under . We need to distinguish two cases.
Case . Let be the smallest element in . Recall that has the unique simple path property. Hence the path in from through to , which is with the last edge removed is a path in in the notation of Section 3.2. By induction this path is mapped to in . Hence
[TABLE]
This corresponds to the induction step (2) in Definition 3.5.
Case . If , we are done. If , we define
[TABLE]
which is a well-defined path since the last step is along the straight line path and hence unique. This corresponds to the induction step (1) (if ) or step (4) (if ) in Definition 3.5.
This shows that is a well-defined map. It has an inverse by mapping a path to a path in by just reading the labels of the edges. This indeed gives a path in by the construction of .
Combining (3.2) and (3.3), we obtain
[TABLE]
which proves Theorem 1.4 since is a loop graph.
In summary, we proved the following theorem, which is a more detailed version of Theorem 1.4.
Theorem 3.9**.**
Let be a Markov chain associated to the finite semigroup with generators . If is left zero, the stationary distribution is given by
[TABLE]
where is the spanning tree of . Otherwise
[TABLE]
where is the spanning tree of and acts as zero.
The reference list from the paper itself. Each links out to its DOI / PubMed record.
- 1[ASST 15] Arvind Ayyer, Anne Schilling, Benjamin Steinberg, and Nicolas M. Thiéry. Markov chains, ℛ ℛ \mathscr{R} -trivial monoids and representation theory. Internat. J. Algebra Comput. , 25(1-2):169–231, 2015.
- 2[BPR 10] Jean Berstel, Dominique Perrin, and Christophe Reutenauer. Codes and automata , volume 129 of Encyclopedia of Mathematics and its Applications . Cambridge University Press, Cambridge, 2010.
- 3[CP 61] A. H. Clifford and G. B. Preston. The algebraic theory of semigroups. Vol. I . Mathematical Surveys, No. 7. American Mathematical Society, Providence, R.I., 1961.
- 4[HM 11] Göran Högnäs and Arunava Mukherjea. Probability measures on semigroups . Probability and its Applications (New York). Springer, New York, second edition, 2011. Convolution products, random walks, and random matrices.
- 5[KRT 68] K. Krohn, J. Rhodes, and B. Tilson. Algebraic theory of machines, languages, and semigroups . Edited by Michael A. Arbib. With a major contribution by Kenneth Krohn and John L. Rhodes. Academic Press, New York, 1968. Chapters 1, 5–9.
- 6[KS 76] John G. Kemeny and J. Laurie Snell. Finite Markov chains . Springer-Verlag, New York-Heidelberg, 1976. Reprinting of the 1960 original, Undergraduate Texts in Mathematics.
- 7[LPW 09] David A. Levin, Yuval Peres, and Elizabeth L. Wilmer. Markov chains and mixing times . American Mathematical Society, Providence, RI, 2009. With a chapter by James G. Propp and David B. Wilson.
- 8[Mc C 01] J. P. Mc Cammond. Normal forms for free aperiodic semigroups. Internat. J. Algebra Comput. , 11(5):581–625, 2001.
