Iterating the branching operation on a directed graph
Iterating the branching operation on a directed graph
Iterating the branching operation on a directed graph
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
<str<strong>on</strong>g>Iterating</str<strong>on</strong>g> <str<strong>on</strong>g>the</str<strong>on</strong>g> Branching<br />
Operati<strong>on</strong> <strong>on</strong> a Directed<br />
Graph<br />
Christos A. Athanasiadis*<br />
DEPARTMENT OF MATHEMATICS<br />
MASSACHUSETTS INSTITUTE OF TECHNOLOGY<br />
CAMBRIDGE, MA 02139, USA<br />
E-mail: cathan@math.mit.edu<br />
ABSTRACT<br />
The <str<strong>on</strong>g>branching</str<strong>on</strong>g> <str<strong>on</strong>g>operati<strong>on</strong></str<strong>on</strong>g> D, defined by Propp, assigns to any <strong>directed</strong> <strong>graph</strong> G ano<str<strong>on</strong>g>the</str<strong>on</strong>g>r<br />
<strong>directed</strong> <strong>graph</strong> D(G) whose vertices are <str<strong>on</strong>g>the</str<strong>on</strong>g> oriented rooted spanning trees of<br />
<str<strong>on</strong>g>the</str<strong>on</strong>g> original <strong>graph</strong> G. We characterize <str<strong>on</strong>g>the</str<strong>on</strong>g> <strong>directed</strong> <strong>graph</strong>s G for which <str<strong>on</strong>g>the</str<strong>on</strong>g> sequence<br />
δ(G) =(G, D(G),D 2 (G),...) c<strong>on</strong>verges, meaning that it is eventually c<strong>on</strong>stant. As a<br />
corollary of <str<strong>on</strong>g>the</str<strong>on</strong>g> proof we get <str<strong>on</strong>g>the</str<strong>on</strong>g> following c<strong>on</strong>jecture of Propp: for str<strong>on</strong>gly c<strong>on</strong>nected<br />
<strong>directed</strong> <strong>graph</strong>s G, δ(G) c<strong>on</strong>verges if and <strong>on</strong>ly if D 2 (G) =D(G). c○1997 John Wiley &<br />
S<strong>on</strong>s, Inc.<br />
1. INTRODUCTION<br />
Throughout this paper G =(V,E) denotes a <strong>directed</strong> <strong>graph</strong> <strong>on</strong> a vertex set V , with multiple<br />
edges and loops allowed. All <strong>directed</strong> <strong>graph</strong>s we will c<strong>on</strong>sider are assumed to be finite. Let l be a<br />
n<strong>on</strong>negative integer and recall that a path P in G is an alternating sequence (u 0 ,e 1 ,u 1 ,...,e l ,u l )<br />
of vertices and edges of G such that each edge e i has initial vertex u i−1 and terminal vertex u i .<br />
We say that P is a path from u 0 to u l and refer to e 1 as <str<strong>on</strong>g>the</str<strong>on</strong>g> initial edge of P if l ≥ 1. Anoriented<br />
rooted spanning tree <strong>on</strong> G, or simply a rooted spanning tree <strong>on</strong> G, is a spanning sub<strong>graph</strong> T of G<br />
toge<str<strong>on</strong>g>the</str<strong>on</strong>g>r with a distinguished vertex r, called <str<strong>on</strong>g>the</str<strong>on</strong>g> root, such that for every v ∈ V <str<strong>on</strong>g>the</str<strong>on</strong>g>re is a unique<br />
path in T from v to r.<br />
* Present address: Ma<str<strong>on</strong>g>the</str<strong>on</strong>g>matical Sciences Research Institute, 1000 Centennial Drive, Berkeley,<br />
CA 94720. E-mail: athana@msri.org.<br />
Journal of Graph Theory Vol. 24, No. 3, 257 265 (1997)<br />
c○ 1997 John Wiley & S<strong>on</strong>s, Inc. CCC 0364-9024/97/030257-09
258 JOURNAL OF GRAPH THEORY<br />
FIGURE 1.<br />
A re-rooting move.<br />
We are c<strong>on</strong>cerned with a certain <str<strong>on</strong>g>operati<strong>on</strong></str<strong>on</strong>g> <strong>on</strong> <strong>directed</strong> <strong>graph</strong>s, denoted by D, which was defined<br />
by James Propp [5]. The object D(G) is a <strong>directed</strong> <strong>graph</strong> whose vertex set is <str<strong>on</strong>g>the</str<strong>on</strong>g> set of rooted<br />
spanning trees of G. The edges in <str<strong>on</strong>g>the</str<strong>on</strong>g> new <strong>directed</strong> <strong>graph</strong> D(G) are c<strong>on</strong>structed as follows: Let T<br />
be a rooted spanning tree of G with root r and let v ∈ V . Given an edge e ∈ E with initial vertex<br />
r and terminal vertex v, let T e be <str<strong>on</strong>g>the</str<strong>on</strong>g> tree obtained from T by adding <str<strong>on</strong>g>the</str<strong>on</strong>g> edge e and deleting <str<strong>on</strong>g>the</str<strong>on</strong>g><br />
edge with initial vertex v in T ∪ e (note that <str<strong>on</strong>g>the</str<strong>on</strong>g> root of T e is v and that T e = T if e is a loop).<br />
Then add a <strong>directed</strong> edge in D(G) from T to T e . We denote this edge in D(G) by T (e). An<br />
example is illustrated in Figure 1.<br />
We call D <str<strong>on</strong>g>the</str<strong>on</strong>g> <str<strong>on</strong>g>branching</str<strong>on</strong>g> <str<strong>on</strong>g>operati<strong>on</strong></str<strong>on</strong>g>. We use <str<strong>on</strong>g>the</str<strong>on</strong>g> letter D because it reminds us that D(G) is<br />
some kind of a derived <strong>directed</strong> <strong>graph</strong> from G and since this was Propp's original notati<strong>on</strong>. The<br />
idea of <str<strong>on</strong>g>the</str<strong>on</strong>g> c<strong>on</strong>structi<strong>on</strong> of D(G) appeared for <str<strong>on</strong>g>the</str<strong>on</strong>g> first time implicitly in <str<strong>on</strong>g>the</str<strong>on</strong>g> proof of <str<strong>on</strong>g>the</str<strong>on</strong>g> Markov<br />
chain-tree <str<strong>on</strong>g>the</str<strong>on</strong>g>orem by Anantharam and Tsoucas [1]. In this paper <str<strong>on</strong>g>the</str<strong>on</strong>g> authors needed to lift a<br />
random walk in G to a random walk in <str<strong>on</strong>g>the</str<strong>on</strong>g> set of arborescences of G, which coincides with <str<strong>on</strong>g>the</str<strong>on</strong>g><br />
set of rooted spanning trees if G is str<strong>on</strong>gly c<strong>on</strong>nected. On <str<strong>on</strong>g>the</str<strong>on</strong>g> o<str<strong>on</strong>g>the</str<strong>on</strong>g>r hand, Propp's motivati<strong>on</strong> for<br />
defining D(G) came from problems related to domino tilings of regi<strong>on</strong>s. Any domino tiling of a<br />
simply c<strong>on</strong>nected regi<strong>on</strong> can be obtained from any o<str<strong>on</strong>g>the</str<strong>on</strong>g>r tiling of <str<strong>on</strong>g>the</str<strong>on</strong>g> same regi<strong>on</strong> by a sequence<br />
of local changes, called ‘‘elementary moves’’ in [4]. Hence <str<strong>on</strong>g>the</str<strong>on</strong>g> set of domino tilings of such a<br />
regi<strong>on</strong> can be given <str<strong>on</strong>g>the</str<strong>on</strong>g> structure of a c<strong>on</strong>nected <strong>graph</strong>. An analogous result holds in <str<strong>on</strong>g>the</str<strong>on</strong>g> case<br />
of rooted spanning trees and <str<strong>on</strong>g>the</str<strong>on</strong>g> ‘‘re-rooting’’moves described in <str<strong>on</strong>g>the</str<strong>on</strong>g> definiti<strong>on</strong> of <str<strong>on</strong>g>the</str<strong>on</strong>g> <str<strong>on</strong>g>branching</str<strong>on</strong>g><br />
<str<strong>on</strong>g>operati<strong>on</strong></str<strong>on</strong>g>. We state this as Lemma 2.2 in Secti<strong>on</strong> 2.<br />
The <strong>directed</strong> <strong>graph</strong> D(G) is a covering space of <str<strong>on</strong>g>the</str<strong>on</strong>g> <strong>directed</strong> <strong>graph</strong> G. This means that <str<strong>on</strong>g>the</str<strong>on</strong>g>re<br />
exists a <strong>graph</strong> homomorphism p from D(G) to G with <str<strong>on</strong>g>the</str<strong>on</strong>g> following property: if T and r are<br />
vertices of D(G) and G respectively with p(T )=rand if e is an edge in G with initial vertex<br />
r, <str<strong>on</strong>g>the</str<strong>on</strong>g>n <str<strong>on</strong>g>the</str<strong>on</strong>g>re exists a unique edge ẽ in D(G) with initial vertex T such that p(ẽ) =e. Indeed, to<br />
define such a map p we can simply map a rooted spanning tree T of G to its root r and <str<strong>on</strong>g>the</str<strong>on</strong>g> edge<br />
T (e) of D(G) with initial vertex T to <str<strong>on</strong>g>the</str<strong>on</strong>g> corresp<strong>on</strong>ding edge e in G with initial vertex r that<br />
gave rise to T (e). The lift ẽ of e with initial vertex T is simply <str<strong>on</strong>g>the</str<strong>on</strong>g> edge T (e).<br />
This covering map seems to be what makes <str<strong>on</strong>g>the</str<strong>on</strong>g> <str<strong>on</strong>g>branching</str<strong>on</strong>g> <str<strong>on</strong>g>operati<strong>on</strong></str<strong>on</strong>g> interesting. It was crucial<br />
in showing that D(G) has remarkable spectral properties [2] [3, Ch. 2]. More specifically, <str<strong>on</strong>g>the</str<strong>on</strong>g><br />
eigenvalues of D(G) can be computed directly from <str<strong>on</strong>g>the</str<strong>on</strong>g> eigenvalues of <str<strong>on</strong>g>the</str<strong>on</strong>g> induced sub<strong>graph</strong>s<br />
and <str<strong>on</strong>g>the</str<strong>on</strong>g> Laplacian matrix of G. Here we will be c<strong>on</strong>cerned with ano<str<strong>on</strong>g>the</str<strong>on</strong>g>r aspect of <str<strong>on</strong>g>the</str<strong>on</strong>g> <str<strong>on</strong>g>branching</str<strong>on</strong>g><br />
<str<strong>on</strong>g>operati<strong>on</strong></str<strong>on</strong>g>. For i ≥ 2 let D i (G) =D(D i−1 (G)) and c<strong>on</strong>sider <str<strong>on</strong>g>the</str<strong>on</strong>g> sequence<br />
δ(G) =(G, D(G),D 2 (G),...)
ITERATING THE BRANCHING OPERATION 259<br />
FIGURE 2.<br />
A counterexample to Propp's c<strong>on</strong>jecture.<br />
obtained by iterating D <strong>on</strong> G. Propp noted that δ(G) is very often a c<strong>on</strong>vergent (eventually<br />
c<strong>on</strong>stant) sequence, where equality of <strong>directed</strong> <strong>graph</strong>s is <strong>graph</strong> isomorphism. He asked for necessary<br />
and sufficient c<strong>on</strong>diti<strong>on</strong>s <strong>on</strong> <str<strong>on</strong>g>the</str<strong>on</strong>g> <strong>graph</strong> G for δ(G) to be c<strong>on</strong>vergent and c<strong>on</strong>jectured that,<br />
for str<strong>on</strong>gly c<strong>on</strong>nected <strong>graph</strong>s G, δ(G) c<strong>on</strong>verges <strong>on</strong>ly when D 2 (G) =D(G)[5]. Moreover, he<br />
c<strong>on</strong>jectured that this happens if and <strong>on</strong>ly if <str<strong>on</strong>g>the</str<strong>on</strong>g> simple paths in G, i.e., <str<strong>on</strong>g>the</str<strong>on</strong>g> paths in which each<br />
vertex appears at most <strong>on</strong>ce, satisfy a certain c<strong>on</strong>diti<strong>on</strong>. Although his proposed c<strong>on</strong>diti<strong>on</strong> turned<br />
out to be incorrect, we will show that a variant of this c<strong>on</strong>diti<strong>on</strong>, given in <str<strong>on</strong>g>the</str<strong>on</strong>g> following definiti<strong>on</strong>,<br />
is true.<br />
Definiti<strong>on</strong> 1.1. We call G admissible if <str<strong>on</strong>g>the</str<strong>on</strong>g>re are no two distinct vertices s, t in G having <str<strong>on</strong>g>the</str<strong>on</strong>g><br />
following property: There exist two simple paths in G from s to t with different initial edges and<br />
similarly, two simple paths from t to s with different initial edges.<br />
In o<str<strong>on</strong>g>the</str<strong>on</strong>g>r words we require that for any two distinct vertices s, t of G, we have at most <strong>on</strong>e<br />
choice for <str<strong>on</strong>g>the</str<strong>on</strong>g> initial edge of a simple path when moving from s to t or from t to s or in both<br />
directi<strong>on</strong>s. A different but equivalent formulati<strong>on</strong> of <str<strong>on</strong>g>the</str<strong>on</strong>g> same c<strong>on</strong>diti<strong>on</strong> is given as Lemma 2.1<br />
and will be useful in Secti<strong>on</strong> 2.<br />
Recall that G is said to be str<strong>on</strong>gly c<strong>on</strong>nected if for any two distinct vertices s and t <str<strong>on</strong>g>the</str<strong>on</strong>g>re exists<br />
a path in G from s to t. Our result, proved in <str<strong>on</strong>g>the</str<strong>on</strong>g> next two secti<strong>on</strong>s, can be stated as follows.<br />
Theorem 1.2. Let G be str<strong>on</strong>gly c<strong>on</strong>nected. The sequence δ(G) c<strong>on</strong>verges if and <strong>on</strong>ly if G is<br />
admissible. Moreover, if δ(G) c<strong>on</strong>verges <str<strong>on</strong>g>the</str<strong>on</strong>g>n D 2 (G) =D(G).<br />
Note that Definiti<strong>on</strong> 1.1 allows for <str<strong>on</strong>g>the</str<strong>on</strong>g> possibility that <str<strong>on</strong>g>the</str<strong>on</strong>g>re are distinct simple paths in G from<br />
s to t and also from t to s as l<strong>on</strong>g as, in at least <strong>on</strong>e directi<strong>on</strong>, <str<strong>on</strong>g>the</str<strong>on</strong>g>y all use <str<strong>on</strong>g>the</str<strong>on</strong>g> same initial edge.<br />
The example in Figure 2 shows that this extra freedom, which is what was missing from Propp's<br />
original formulati<strong>on</strong> of <str<strong>on</strong>g>the</str<strong>on</strong>g> c<strong>on</strong>diti<strong>on</strong> <strong>on</strong> s and t, is necessary for <str<strong>on</strong>g>the</str<strong>on</strong>g> <str<strong>on</strong>g>the</str<strong>on</strong>g>orem to be true.<br />
The questi<strong>on</strong> of c<strong>on</strong>vergence of δ(G) for an arbitrary <strong>directed</strong> <strong>graph</strong> G is no more complicated.<br />
Ei<str<strong>on</strong>g>the</str<strong>on</strong>g>r D(G) is disc<strong>on</strong>nected, and hence δ(G) stabilizes to <str<strong>on</strong>g>the</str<strong>on</strong>g> empty <strong>directed</strong> <strong>graph</strong>, or else δ(G)<br />
c<strong>on</strong>verges if and <strong>on</strong>ly if δ(H) does so, where H = H(G) is a str<strong>on</strong>gly c<strong>on</strong>nected induced sub<strong>graph</strong><br />
of G, defined below. The details appear in Lemma 2.3.
260 JOURNAL OF GRAPH THEORY<br />
More Notati<strong>on</strong> and Definiti<strong>on</strong>s<br />
We close this introducti<strong>on</strong> with some basic c<strong>on</strong>structi<strong>on</strong>s, notati<strong>on</strong> and terminology which we<br />
will use in <str<strong>on</strong>g>the</str<strong>on</strong>g> proof of Theorem 1.2.<br />
The outdegree of a vertex s in G, denoted out(s), is <str<strong>on</strong>g>the</str<strong>on</strong>g> number of n<strong>on</strong>loop edges of G<br />
emanating from s. Similarly we define <str<strong>on</strong>g>the</str<strong>on</strong>g> indegree of s and denote it by in(s). We denote by<br />
r(G) <str<strong>on</strong>g>the</str<strong>on</strong>g> image of <str<strong>on</strong>g>the</str<strong>on</strong>g> vertex set of D(G) under p, i.e., <str<strong>on</strong>g>the</str<strong>on</strong>g> set of roots of all rooted spanning trees<br />
of G. In o<str<strong>on</strong>g>the</str<strong>on</strong>g>r words, r(G) is <str<strong>on</strong>g>the</str<strong>on</strong>g> set of vertices s of G such that for all t ∈ V,t ≠ s, <str<strong>on</strong>g>the</str<strong>on</strong>g>re exists<br />
a path in G from t to s. Note that r(G) =V if and <strong>on</strong>ly if G is str<strong>on</strong>gly c<strong>on</strong>nected. We denote<br />
by H(G) <str<strong>on</strong>g>the</str<strong>on</strong>g> induced sub<strong>graph</strong> of G <strong>on</strong> r(G), which is always str<strong>on</strong>gly c<strong>on</strong>nected. We call G a<br />
near m<strong>on</strong>odromy if for any two distinct vertices s and t <str<strong>on</strong>g>the</str<strong>on</strong>g>re is at most <strong>on</strong>e simple path from s<br />
to t.<br />
We say that <str<strong>on</strong>g>the</str<strong>on</strong>g> path P =(u 0 ,e 1 ,u 1 ,...,e l ,u l ) in G visits a vertex u if u = u i for some<br />
0 ≤ i ≤ l. For any 0 ≤ i ≤ j ≤ l we denote by P (u i ,u j )<str<strong>on</strong>g>the</str<strong>on</strong>g> part (u i ,...,e j ,u j )of P which<br />
starts at u i and ends at u j . The simplif icati<strong>on</strong> of P is a simple path from u 0 to u l whose edges<br />
are some of <str<strong>on</strong>g>the</str<strong>on</strong>g> edges of P . To define it we start at u 0 , choose <str<strong>on</strong>g>the</str<strong>on</strong>g> last edge e k of P emanating<br />
from s and repeat <str<strong>on</strong>g>the</str<strong>on</strong>g> process with u k until we reach u l . Clearly <str<strong>on</strong>g>the</str<strong>on</strong>g> simplificati<strong>on</strong> of a simple<br />
path P is P itself and a path with <strong>on</strong>e vertex and no edges if <str<strong>on</strong>g>the</str<strong>on</strong>g> initial and terminal vertex of P<br />
coincide.<br />
If P is a path from s to t in G and Q is a path from t to u, <str<strong>on</strong>g>the</str<strong>on</strong>g>n juxtapositi<strong>on</strong> gives a well<br />
defined path PQ from s to u. The path PQ need not be simple even if P and Q are simple<br />
<str<strong>on</strong>g>the</str<strong>on</strong>g>mselves. We denote <str<strong>on</strong>g>the</str<strong>on</strong>g> simplificati<strong>on</strong> of PQby P ∗ Q.<br />
As a c<strong>on</strong>sequence of <str<strong>on</strong>g>the</str<strong>on</strong>g> covering property discussed above, we can lift paths in G uniquely up<br />
to D(G), <strong>on</strong>ce <str<strong>on</strong>g>the</str<strong>on</strong>g> initial vertex is prescribed. In o<str<strong>on</strong>g>the</str<strong>on</strong>g>r words, if p(T )=r<str<strong>on</strong>g>the</str<strong>on</strong>g>n for any path Q in<br />
G with initial vertex r <str<strong>on</strong>g>the</str<strong>on</strong>g>re is a unique path in D(G), denoted by T (Q), with initial vertex T such<br />
that p(T (Q)) = Q. Note that Q is not assumed to be simple. The notati<strong>on</strong> T (Q) emphasizes <str<strong>on</strong>g>the</str<strong>on</strong>g><br />
dependence of <str<strong>on</strong>g>the</str<strong>on</strong>g> lifted path <strong>on</strong> both T and Q and is c<strong>on</strong>sistent with <str<strong>on</strong>g>the</str<strong>on</strong>g> notati<strong>on</strong> T (e), introduced<br />
earlier. In Secti<strong>on</strong> 3 we discuss how we can describe <str<strong>on</strong>g>the</str<strong>on</strong>g> endpoint of T (Q) in terms of T and Q.<br />
2. PROOF OF SUFFICIENCY<br />
To prove <str<strong>on</strong>g>the</str<strong>on</strong>g> sufficiency part of Theorem 1.2 we need a few lemmas. The first lemma gives an<br />
alternative way to define admissibility.<br />
Lemma 2.1. G is admissible if and <strong>on</strong>ly if <str<strong>on</strong>g>the</str<strong>on</strong>g>re is no ordered pair (s, t) of distinct vertices of<br />
G with <str<strong>on</strong>g>the</str<strong>on</strong>g> following property: There exist two simple paths in G from s to t with different initial<br />
edges and also two distinct simple paths from t to s.<br />
Proof. It suffices to show that <str<strong>on</strong>g>the</str<strong>on</strong>g> existence of an ordered pair (s, t) of distinct vertices with<br />
<str<strong>on</strong>g>the</str<strong>on</strong>g> property stated in <str<strong>on</strong>g>the</str<strong>on</strong>g> lemma implies <str<strong>on</strong>g>the</str<strong>on</strong>g> existence of two vertices as in Definiti<strong>on</strong> 1.1. Indeed,<br />
let Q 1 ,Q 2 be simple paths from s to t with different initial edges e 1 ,e 2 respectively and P 1 ,P 2<br />
be distinct simple paths from t to s. Let u be <str<strong>on</strong>g>the</str<strong>on</strong>g> last vertex visited when walking P 1 or P 2 such<br />
that P 1 (t, u) and P 2 (t, u) coincide (so that u = t if P 1 and P 2 have different initial edges). Since<br />
P 1 and P 2 are simple and distinct we have u ≠ s. Then P 1 (u, s) and P 2 (u, s) are two simple<br />
paths in G from u to s with different initial edges. On <str<strong>on</strong>g>the</str<strong>on</strong>g> o<str<strong>on</strong>g>the</str<strong>on</strong>g>r hand <str<strong>on</strong>g>the</str<strong>on</strong>g> paths Q 1 ∗ P 1 (t, u) and<br />
Q 2 ∗ P 1 (t, u) give two simple paths in G from s to u with different initial edges, namely e 1 and<br />
e 2 . Hence s and u have <str<strong>on</strong>g>the</str<strong>on</strong>g> property stated in Definiti<strong>on</strong> 1.1.<br />
The next lemma is from [2].<br />
Lemma 2.2 ([2, Prop. 2.5] [3, Prop. 2.2.5]). If G is str<strong>on</strong>gly c<strong>on</strong>nected <str<strong>on</strong>g>the</str<strong>on</strong>g>n so is D(G).
ITERATING THE BRANCHING OPERATION 261<br />
FIGURE 3. A counterexample to <str<strong>on</strong>g>the</str<strong>on</strong>g> str<strong>on</strong>ger versi<strong>on</strong> of Lemma 2.4.<br />
A <strong>directed</strong> <strong>graph</strong> G is str<strong>on</strong>gly c<strong>on</strong>nected and a near m<strong>on</strong>odromy if and <strong>on</strong>ly if for any two<br />
distinct vertices s and t <str<strong>on</strong>g>the</str<strong>on</strong>g>re is a unique simple path in G from s to t. These <strong>directed</strong> <strong>graph</strong>s<br />
may be thought of as <str<strong>on</strong>g>the</str<strong>on</strong>g> <strong>directed</strong> analogues of un<strong>directed</strong> trees. A characterizati<strong>on</strong> is given in<br />
Secti<strong>on</strong> 4. The important property of str<strong>on</strong>gly c<strong>on</strong>nected near m<strong>on</strong>odromies for us is <str<strong>on</strong>g>the</str<strong>on</strong>g> fact<br />
that <str<strong>on</strong>g>the</str<strong>on</strong>g>y satisfy <str<strong>on</strong>g>the</str<strong>on</strong>g> equati<strong>on</strong> D(G) =G. Recall <str<strong>on</strong>g>the</str<strong>on</strong>g> definiti<strong>on</strong>s of p, r(G) and H(G) from <str<strong>on</strong>g>the</str<strong>on</strong>g><br />
introducti<strong>on</strong>.<br />
Lemma 2.3. If G is a near m<strong>on</strong>odromy <str<strong>on</strong>g>the</str<strong>on</strong>g>n D(G) is isomorphic to <str<strong>on</strong>g>the</str<strong>on</strong>g> induced sub<strong>graph</strong> H(G)<br />
of G. In particular, if G is a near m<strong>on</strong>odromy and str<strong>on</strong>gly c<strong>on</strong>nected <str<strong>on</strong>g>the</str<strong>on</strong>g>n D(G) is isomorphic<br />
to G. For any G, D(G) is a disjoint uni<strong>on</strong> of copies of D(H(G)).<br />
Proof. Suppose G is a near m<strong>on</strong>odromy. Then <str<strong>on</strong>g>the</str<strong>on</strong>g> map p gives <str<strong>on</strong>g>the</str<strong>on</strong>g> desired <strong>graph</strong> isomorphism.<br />
Indeed, since p is a covering map, it suffices to check that it induces a bijecti<strong>on</strong> between <str<strong>on</strong>g>the</str<strong>on</strong>g> vertex<br />
sets of D(G) and H(G). The vertex set r(G) of H(G) is by definiti<strong>on</strong> <str<strong>on</strong>g>the</str<strong>on</strong>g> image of <str<strong>on</strong>g>the</str<strong>on</strong>g> vertex<br />
set of D(G) under p. Injectivity follows from <str<strong>on</strong>g>the</str<strong>on</strong>g> fact that G is a near m<strong>on</strong>odromy, so that to any<br />
r ∈ r(G) corresp<strong>on</strong>ds a unique rooted spanning tree of G with root r. Also H(G) =Gwhenever<br />
G is str<strong>on</strong>gly c<strong>on</strong>nected.<br />
For <str<strong>on</strong>g>the</str<strong>on</strong>g> last statement note that if (u, v) is an edge of G and u ∈ r(G) <str<strong>on</strong>g>the</str<strong>on</strong>g>n v ∈ r(G). The<br />
number of copies menti<strong>on</strong>ed is <str<strong>on</strong>g>the</str<strong>on</strong>g> number of rooted spanning forests (disjoint uni<strong>on</strong>s of trees)<br />
of G with root set r(G).<br />
The following two lemmas will also be essential in proving sufficiency.<br />
Lemma 2.4. Let G be admissible. Suppose s, t, u are distinct vertices of G and that <str<strong>on</strong>g>the</str<strong>on</strong>g>re exist<br />
two simple paths from s to t with different initial edges and two distinct simple paths from t to u.<br />
Then <str<strong>on</strong>g>the</str<strong>on</strong>g>re exist two distinct simple paths from s to u.<br />
Proof. Let P 1 ,P 2 be <str<strong>on</strong>g>the</str<strong>on</strong>g> two paths from s to t and Q 1 ,Q 2 be <str<strong>on</strong>g>the</str<strong>on</strong>g> two paths from t to u. Ifs<br />
is not visited by at least <strong>on</strong>e of Q 1 ,Q 2 ,say Q 1 , <str<strong>on</strong>g>the</str<strong>on</strong>g>n P 1 ∗ Q 1 and P 2 ∗ Q 1 are simple paths from<br />
s to u. They have different initial edges, namely <str<strong>on</strong>g>the</str<strong>on</strong>g> initial edges of P 1 and P 2 , respectively.<br />
Suppose now that s is visited by both paths Q 1 and Q 2 . Since G is admissible, by Lemma 2.1<br />
<str<strong>on</strong>g>the</str<strong>on</strong>g> parts of Q 1 and Q 2 <strong>directed</strong> from t to s should coincide. But Q 1 and Q 2 are by assumpti<strong>on</strong><br />
distinct, hence <str<strong>on</strong>g>the</str<strong>on</strong>g>ir parts Q 1 (s, u) and Q 2 (s, u) are distinct simple paths from s to u, as desired.<br />
The c<strong>on</strong>diti<strong>on</strong> that <str<strong>on</strong>g>the</str<strong>on</strong>g> two paths from s to t have different initial edges cannot be dropped<br />
from <str<strong>on</strong>g>the</str<strong>on</strong>g> hypo<str<strong>on</strong>g>the</str<strong>on</strong>g>sis. Figure 3 provides a counterexample to such a statement.<br />
Lemma 2.5. Let G be admissible. Then <str<strong>on</strong>g>the</str<strong>on</strong>g>re exists a vertex s of G such that for any o<str<strong>on</strong>g>the</str<strong>on</strong>g>r vertex<br />
t of G <str<strong>on</strong>g>the</str<strong>on</strong>g>re is at most <strong>on</strong>e simple path in G from t to s. Moreover, if G is not a near m<strong>on</strong>odromy,<br />
we can assume that <str<strong>on</strong>g>the</str<strong>on</strong>g> outdegree of s is at least 2.<br />
Proof. Suppose that such a vertex s (with outdegree ≥ 2) does not exist. Pick a vertex v 0<br />
of G. If G is not a near m<strong>on</strong>odromy we can choose v 0 so that out(v 0 ) ≥ 2. By assumpti<strong>on</strong>,
262 JOURNAL OF GRAPH THEORY<br />
<str<strong>on</strong>g>the</str<strong>on</strong>g>re is a vertex v 1 ≠ v 0 of G with <str<strong>on</strong>g>the</str<strong>on</strong>g> property that <str<strong>on</strong>g>the</str<strong>on</strong>g>re are at least two distinct simple paths<br />
from v 1 to v 0 , and we can certainly choose v 1 so that <str<strong>on</strong>g>the</str<strong>on</strong>g>se two paths have different initial edges.<br />
Similarly, since clearly out(v 1 ) ≥ 2, <str<strong>on</strong>g>the</str<strong>on</strong>g>re is a vertex v 2 ≠ v 1 and two simple paths from v 2 to<br />
v 1 with different initial edges. In this way we produce <str<strong>on</strong>g>the</str<strong>on</strong>g> sequence v 0 ,v 1 ,v 2 ,.... Since our<br />
<strong>graph</strong> is finite, <str<strong>on</strong>g>the</str<strong>on</strong>g> sequence c<strong>on</strong>tains repeated vertices, say v i = v j for some i
ITERATING THE BRANCHING OPERATION 263<br />
Q. Walking an edge e of Q results in adding e to <str<strong>on</strong>g>the</str<strong>on</strong>g> tree currently visited by T (Q), say S, and<br />
deleting <str<strong>on</strong>g>the</str<strong>on</strong>g> edge of S ∪ e with initial vertex <str<strong>on</strong>g>the</str<strong>on</strong>g> endpoint of e.<br />
We denote by T [Q] <str<strong>on</strong>g>the</str<strong>on</strong>g> terminal vertex of T (Q). The tree T [Q] can be described in terms of<br />
T and Q as follows: For any vertex u of G, <str<strong>on</strong>g>the</str<strong>on</strong>g> edge emanating from u in T [Q] is <str<strong>on</strong>g>the</str<strong>on</strong>g> same as in<br />
T if Q never visits u and if it does, it is <str<strong>on</strong>g>the</str<strong>on</strong>g> edge of Q coming out of u <str<strong>on</strong>g>the</str<strong>on</strong>g> last time u is visited<br />
by Q. In particular, <str<strong>on</strong>g>the</str<strong>on</strong>g> endpoint of Q has no outcoming edge in T [Q]. We use this descripti<strong>on</strong><br />
to define T [Q] for an arbitrary sequence of edges Q. The sub<strong>graph</strong> T [Q] will not necessarily be<br />
a tree, but it will in all cases of interest. The crucial property of this c<strong>on</strong>structi<strong>on</strong> for us is that<br />
T [Q] =T[Q ′ ]if Q ′ is obtained from Q in <strong>on</strong>e of <str<strong>on</strong>g>the</str<strong>on</strong>g> following ways:<br />
(i) Deleting earlier occurrences of an edge.<br />
(ii) Swapping two adjacent subsequences Q 1 ,Q 2 as l<strong>on</strong>g as any vertex v that is a vertex of<br />
some edge in both Q 1 and Q 2 has an emanating edge in Q that succeeds Q 1 and Q 2 .<br />
We are now ready to state and prove <str<strong>on</strong>g>the</str<strong>on</strong>g> <str<strong>on</strong>g>the</str<strong>on</strong>g>orem.<br />
Theorem 3.1. Suppose G is str<strong>on</strong>gly c<strong>on</strong>nected. If G is not admissible <str<strong>on</strong>g>the</str<strong>on</strong>g>n <str<strong>on</strong>g>the</str<strong>on</strong>g> same is true<br />
for D(G).<br />
Proof. By assumpti<strong>on</strong>, <str<strong>on</strong>g>the</str<strong>on</strong>g>re are two distinct vertices s and t in G with <str<strong>on</strong>g>the</str<strong>on</strong>g> following property:<br />
<str<strong>on</strong>g>the</str<strong>on</strong>g>re exist two simple paths Q 1 ,Q 2 from s to t with different initial edges e 1 ,e 2 respectively and<br />
two simple paths P 1 ,P 2 from t to s with different initial edges. We want to show that <str<strong>on</strong>g>the</str<strong>on</strong>g> same<br />
is true for D(G).<br />
Let T be any rooted spanning tree <strong>on</strong> G with root s and let T 1 = T [Q 2 P 2 Q 1 P 1 ],T 2 =<br />
T[Q 1 P 1 Q 2 P 2 ]be <str<strong>on</strong>g>the</str<strong>on</strong>g> final points of <str<strong>on</strong>g>the</str<strong>on</strong>g> paths T (Q 2 P 2 Q 1 P 1 ) and T (Q 1 P 1 Q 2 P 2 ) respectively.<br />
Note that T 1 and T 2 are distinct since <str<strong>on</strong>g>the</str<strong>on</strong>g> edges emanating from t in <str<strong>on</strong>g>the</str<strong>on</strong>g> two trees are different.<br />
We proceed to find pairs of paths in D(G) from T 1 to T 2 and backwards, which will show that<br />
D(G) is not admissible.<br />
Let v be <str<strong>on</strong>g>the</str<strong>on</strong>g> first vertex o<str<strong>on</strong>g>the</str<strong>on</strong>g>r than t, visited by P 1 , which is also visited by Q 1 (see Figure 4).<br />
Note that we could have v = s, but by assumpti<strong>on</strong> v ≠ t. We c<strong>on</strong>struct two distinct paths R 1 and<br />
R 2 in D(G) from T 1 to T 2 by setting<br />
R 1 = T 1 (Q 2 P 2 )<br />
and<br />
R 2 = T 1 (Q 1 P 2 Q 1 (s, v)P 1 (v, s)Q 2 P 2 ).<br />
In <str<strong>on</strong>g>the</str<strong>on</strong>g> special case v = s we have R 2 = T 1 (Q 1 P 2 Q 2 P 2 ). Note that<br />
T 1 [Q 2 P 2 ]=T[Q 2 P 2 Q 1 P 1 Q 2 P 2 ]=T[Q 1 P 1 Q 2 P 2 ]=T 2 ,<br />
by cancelling <str<strong>on</strong>g>the</str<strong>on</strong>g> first occurrence of Q 2 P 2 and that<br />
T 1 [Q 1 P 2 Q 1 (s, v)P 1 (v, s)Q 2 P 2 ] = T[Q 2 P 2 Q 1 P 1 Q 1 P 2 Q 1 (s, v)P 1 (v, s)Q 2 P 2 ]<br />
= (cancelling) T [P 1 (t, v)Q 1 (v, t)Q 1 (s, v)P 1 (v, s)Q 2 P 2 ]<br />
= (permitted reordering) T [P 1 (t, v)Q 1 P 1 (v, s)Q 2 P 2 ]<br />
= (permitted reordering) T [Q 1 P 1 Q 2 P 2 ]=T 2 .<br />
The way v was defined is essential for <str<strong>on</strong>g>the</str<strong>on</strong>g> next to last equality. It follows that R 1 and R 2 have<br />
indeed terminal vertex T 2 .
264 JOURNAL OF GRAPH THEORY<br />
FIGURE 4. The four paths between s and t.<br />
We now show that <str<strong>on</strong>g>the</str<strong>on</strong>g> simplificati<strong>on</strong>s of R 1 and R 2 (see Secti<strong>on</strong> 1) have different initial edges<br />
and <str<strong>on</strong>g>the</str<strong>on</strong>g>refore <str<strong>on</strong>g>the</str<strong>on</strong>g>y provide us with <str<strong>on</strong>g>the</str<strong>on</strong>g> desired pair of paths from T 1 to T 2 . Say that a tree not<br />
rooted at s is an e 1 tree, respectively e 2 tree, if <str<strong>on</strong>g>the</str<strong>on</strong>g> unique edge emanating from s in <str<strong>on</strong>g>the</str<strong>on</strong>g> tree<br />
is e 1 , respectively e 2 . We claim that <str<strong>on</strong>g>the</str<strong>on</strong>g> sec<strong>on</strong>d vertex of <str<strong>on</strong>g>the</str<strong>on</strong>g> simplificati<strong>on</strong> of R 1 is an e 2 tree<br />
while <str<strong>on</strong>g>the</str<strong>on</strong>g> corresp<strong>on</strong>ding vertex for R 2 is e 1 . For <str<strong>on</strong>g>the</str<strong>on</strong>g> first claim simply note that all trees visited<br />
by R 1 , except for its endpoints T 1 and T 2 , are e 2 trees. On <str<strong>on</strong>g>the</str<strong>on</strong>g> o<str<strong>on</strong>g>the</str<strong>on</strong>g>r hand, some of <str<strong>on</strong>g>the</str<strong>on</strong>g> trees<br />
not rooted at s and visited by R 2 are e 1 and some e 2 . In fact, <str<strong>on</strong>g>the</str<strong>on</strong>g> trees visited by <str<strong>on</strong>g>the</str<strong>on</strong>g> first part<br />
W = T 1 (Q 1 P 2 Q 1 (s, v)P 1 (v, s)) of R 2 not rooted at s are exactly <str<strong>on</strong>g>the</str<strong>on</strong>g> e 1 <strong>on</strong>es. Let S be <str<strong>on</strong>g>the</str<strong>on</strong>g><br />
terminal vertex of W . It suffices to show that T 1 is not visited by S(Q 2 P 2 ), since <str<strong>on</strong>g>the</str<strong>on</strong>g>n <str<strong>on</strong>g>the</str<strong>on</strong>g> sec<strong>on</strong>d<br />
vertex of <str<strong>on</strong>g>the</str<strong>on</strong>g> simplificati<strong>on</strong> of R 2 will be a vertex of W and <str<strong>on</strong>g>the</str<strong>on</strong>g>refore e 1 . The <strong>on</strong>ly possibility for<br />
T 1 to occur in S(Q 2 P 2 ) is that T 1 = S. But <str<strong>on</strong>g>the</str<strong>on</strong>g> edge emanating from t is <str<strong>on</strong>g>the</str<strong>on</strong>g> <strong>on</strong>e travelled by P 1<br />
in T 1 and <str<strong>on</strong>g>the</str<strong>on</strong>g> <strong>on</strong>e travelled by P 2 in S since, by c<strong>on</strong>structi<strong>on</strong>, t is not visited by Q 1 (s, v)P 1 (v, s).<br />
A completely symmetric argument gives <str<strong>on</strong>g>the</str<strong>on</strong>g> existence of analogous paths from T 2 to T 1 and<br />
shows that D(G) is not admissible.<br />
4. ON DIRECTED ANALOGUES OF TREES<br />
In this last secti<strong>on</strong> we give <str<strong>on</strong>g>the</str<strong>on</strong>g> characterizati<strong>on</strong> of str<strong>on</strong>gly c<strong>on</strong>nected near m<strong>on</strong>odromies promised<br />
in Secti<strong>on</strong> 2. We call such <strong>graph</strong>s simply m<strong>on</strong>odromies and c<strong>on</strong>sider <strong>on</strong>ly loopless <strong>directed</strong> <strong>graph</strong>s<br />
in what follows. Thus a m<strong>on</strong>odromy is a loopless <strong>directed</strong> <strong>graph</strong> G =(V,E)having <str<strong>on</strong>g>the</str<strong>on</strong>g> following<br />
property: for any two distinct vertices s, t ∈ V <str<strong>on</strong>g>the</str<strong>on</strong>g>re exists a unique simple path in G from s to t.<br />
In particular, such a <strong>graph</strong> has no multiple edges. Equivalently, <str<strong>on</strong>g>the</str<strong>on</strong>g> m<strong>on</strong>odromies are <str<strong>on</strong>g>the</str<strong>on</strong>g> str<strong>on</strong>gly<br />
c<strong>on</strong>nected loopless <strong>directed</strong> <strong>graph</strong>s G satisfying D(G) =G.<br />
Here we point out that we can c<strong>on</strong>struct all m<strong>on</strong>odromies using a simple algorithmic procedure.<br />
To be more precise, suppose that G is a m<strong>on</strong>odromy and that q ∈ V . Let's add to G a simple<br />
<strong>directed</strong> cycle with initial and terminal vertex q, i.e., a path<br />
q = v 0 → v 1 →···→v m =q,<br />
where m ≥ 2 is an integer and v i , for 0
ITERATING THE BRANCHING OPERATION 265<br />
Propositi<strong>on</strong> 4.1.<br />
Let G =(V,E) be a m<strong>on</strong>odromy. There exists a sequence of m<strong>on</strong>odromies<br />
G 0 ⊂ G 1 ⊂···⊂G n =G,<br />
where G 0 is <str<strong>on</strong>g>the</str<strong>on</strong>g> loopless <strong>graph</strong> with <strong>on</strong>e vertex, such that G i+1 can be obtained from G i by adding<br />
a simple cycle, as described above.<br />
Proof. The proof is by inducti<strong>on</strong> <strong>on</strong> <str<strong>on</strong>g>the</str<strong>on</strong>g> number of vertices of G, <str<strong>on</strong>g>the</str<strong>on</strong>g> result being clear if G<br />
has <strong>on</strong>e or two vertices.<br />
Let s be any vertex of G and let<br />
s = u 0 → u 1 →···→u r =t<br />
be <str<strong>on</strong>g>the</str<strong>on</strong>g> l<strong>on</strong>gest simple path in G starting at s. Call this path P . We claim that out(t) =in(t) =1.<br />
To see this, note first that out(t), in(t)≥1since by assumpti<strong>on</strong>, G is str<strong>on</strong>gly c<strong>on</strong>nected with<br />
more than <strong>on</strong>e vertex. Also if (t, u) ∈ E, <str<strong>on</strong>g>the</str<strong>on</strong>g>n u = u i for some 0 ≤ i ≤ r − 1 by maximality<br />
of P . So let e 1 =(t, u i ) ∈ E for some 0 ≤ i ≤ r − 1. If out(t) ≥ 2 <str<strong>on</strong>g>the</str<strong>on</strong>g>n e 2 =(t, u j ) is<br />
ano<str<strong>on</strong>g>the</str<strong>on</strong>g>r edge emanating from t for some 0 ≤ j ≤ r − 1. Since G has no multiple edges, we<br />
may assume i