Page 1
Comparison of Tree-Child Phylogenetic Networks
Gabriel Cardona1, Francesc Rossell´ o1, and Gabriel Valiente2
1Department of Mathematics and Computer Science, University of the Balearic Islands,
E-07122 Palma de Mallorca, {gabriel.cardona,cesc.rossello}@uib.es
2Algorithms, Bioinformatics, Complexity and Formal Methods Research Group, Technical
University of Catalonia, E-08034 Barcelona, valiente@lsi.upc.edu
Abstract. Phylogenetic networks are a generalization of phylogenetic trees that
allow for the representation of non-treelike evolutionary events, like recombina-
tion, hybridization, or lateral gene transfer. While much progress has been made
to find practical algorithms for reconstructing a phylogenetic network from a set of
sequences, all attempts to endorse a class of phylogenetic networks (strictly extend-
ing the class of phylogenetic trees) with a well-founded distance measure have, to
the best of our knowledge, failed so far. In this paper, we present and study a new
meaningful class of phylogenetic networks, called tree-child phylogenetic networks,
and we provide an injective representation of these networks as multisets of vectors
of natural numbers, their path multiplicity vectors. We then use this representa-
tion to define a distance on this class that extends the well-known Robinson-Foulds
distance for phylogenetic trees, and to give an alignment method for pairs of net-
works in this class. Simple, polynomial algorithms for reconstructing a tree-child
phylogenetic network from its path multiplicity vectors, for computing the distance
between two tree-child phylogenetic networks, and for aligning a pair of tree-child
phylogenetic networks, are provided. They have been implemented as a Perl pack-
age and a Java applet, and they are available at the Supplementary Material web
page.
1Introduction
Phylogenetic networks have been studied over the last years as a richer model of
the evolutionary history of sets of organisms than phylogenetic trees, because they
take not only mutation events but also recombination, hybridization, and lateral
gene transfer events into account.
The problem of reconstructing a phylogenetic network with the least possible
number of recombination events is NP-hard [41], and much effort has been devoted
to bounding the number of recombination events needed to explain the evolutionary
history of a set of sequences [2,26,38]. On the other hand, much progress has been
made to find practical algorithms for reconstructing a phylogenetic network from
a set of sequences [10,11,23,29,31,38].
Since different reconstruction methods applied to the same sequences, or a
single method applied to different sequences, may yield different phylogenetic net-
works for a given set of species, a sound measure to compare phylogenetic networks
becomes necessary [30]. The comparison of phylogenetic networks is also needed in
the assessment of phylogenetic reconstruction methods [21], and it will be required
to perform queries on the future databases of phylogenetic networks [34].
arXiv:0708.3499v1 [q-bio.PE] 27 Aug 2007
Page 2
Many metrics for the comparison of phylogenetic trees are known, including
the Robinson-Foulds metric [36], the nearest-neighbor interchange metric [42], the
subtree transfer distance [1], the quartet metric [9], and the metric from the nodal
distance algorithm [6]. But, to our knowledge, only one metric (up to small varia-
tions) for phylogenetic networks has been proposed so far. It is the so-called error,
or tripartition, metric, developed by Moret, Nakhleh, Warnow and collaborators
in a series of papers devoted to the study of reconstructibility of phylogenetic net-
works [18,19,22,23,27,28,30], and which we recall in §2.4 below. Unfortunately, it
turns out that, even in its strongest form [23], this error metric never distinguishes
all pairs of phylogenetic networks that, according to its authors, are distinguish-
able: see [7] for a discussion of the error metric’s downsides.
The main goal of this paper is to introduce a metric on a restricted, but mean-
ingful, class of phylogenetic networks: the tree-child phylogenetic networks. These
are the phylogenetic networks where every non-extant species has some descendant
through mutation. This is a slightly more restricted class of phylogenetic networks
than the tree-sibling ones (see §2.3) where one of the versions of the error met-
ric was defined. Tree-child phylogenetic networks include galled trees [10,11] as a
particular case, and they have been recently proposed by S. J Wilson as the class
where meaningful phylogenetic networks should be searched [43].
We prove that each tree-child phylogenetic network with n leaves can be singled
out, up to isomorphisms, among all tree-child phylogenetic networks with n leaves
by means of a finite multisubset of Nn. This multiset of vectors consists of the
path multiplicity vectors, or µ-vectors for short, µ(v) of all nodes v of the network:
for every node v, µ(v) is the vector listing the number of paths from v to each
one of he leaves of the network. We present a simple polynomial time algorithm
for reconstructing a tree-child phylogenetic network from the knowledge of this
multiset.
This injective representation of tree-child phylogenetic networks as multisub-
sets of vectors of natural numbers allows us to define a metric on any class of
tree-child phylogenetic networks with the same leaves as simply the symmetric
difference of the path multiplicity vectors multisets. This metric, which we call
µ-distance, extends to tree-child phylogenetic networks the Robinson-Foulds met-
ric for phylogenetic trees, and it satisfies the axioms of distances, including the
separation axiom (non-isomorphic phylogenetic networks are at non-zero distance)
and the triangle inequality.
The properties of the path multiplicity representation of tree-child phylogenetic
networks allow us also to define an alignment method for them. Our algorithm
outputs an injective matching from the network with less nodes into the other
network that minimizes in some specific sense the difference between the µ-vectors
of the matched nodes. Although several alignment methods for phylogenetic trees
are known [25,32,33], this is to our knowledge the first one that can be applied to
a larger class of phylogenetic networks.
2
Page 3
We have implemented our algorithms to recover a tree-child phylogenetic net-
work from its data multiplicity representation and to compute the µ-distance, to-
gether with other related algorithms (like for instance the systematic and efficient
generation of all tree-child phylogenetic networks with a given number of leaves),
in a Perl package which is available at the Supplementary Material web page. We
have also implemented our alignment method as a Java applet which can be run
interactively at the aforementioned web page.
The plan of the rest of the paper is as follows. In Section 2 we gather some
preliminary material: we fix some notations and conventions on directed acyclic
graphs, and we recall several notions related to phylogenetic trees and networks,
the Robinson-Foulds metric for the former and the tripartition metric for the lat-
ter. In Section 3 we introduce the tree-child phylogenetic networks and we study
some of their basic properties. In Section 4 we introduce the path multiplicity
representation of networks and we prove that it singles out tree-child phylogenetic
networks up to isomorphism. Then, in Section 5 we define and study the µ-distance
for tree-child phylogenetic networks with the same number of leaves, and in Sec-
tion 6 we present our alignment method. The paper ends with a short Conclusion
section.
2Preliminaries
2.1DAGs
Let N = (V,E) be a directed acyclic graph (DAG). We denote by di(u) and do(u)
the in-degree and out-degree, respectively, of a node u ∈ V .
A node v ∈ V is a leaf if do(v) = 0, and internal if do(v) > 0; a root if di(v) = 0;
a tree node if di(v) ? 1, and a hybrid node if di(v) > 1. We denote by VL, VT,
and VHthe sets of leaves, of tree nodes, and of hybrid nodes of N, respectively. A
DAG is said to be rooted when it has only one root.
Given an arc (u,v) ∈ E, we call the node u its tail and the node v its head.
An arc (u,v) ∈ E is a tree arc if v is a tree node, and a hybridization arc if v is
hybrid. We denote by ET and EN the sets of tree arcs and of hybridization arcs,
respectively.
A node v ∈ V is a child of u ∈ V if (u,v) ∈ V ; we also say that u is a parent
of v. For every node u ∈ V , let child(u) denote the set of its children. All children
of the same node are said to be siblings of each other. The tree children of a node
u are its children that are tree nodes.
A DAG is binary when all its internal tree nodes have out-degree 2 and all its
hybrid nodes have in-degree 2 and out-degree 1.
Let S be any finite set of labels. We say that the DAG N is labeled in S, or that
it is an S-DAG, for short, when its leaves are bijectively labeled by elements of S.
Two DAGs N,N?labeled in S are isomorphic, in symbols N∼= N?, when they are
isomorphic as directed graphs and the isomorphism preserves the leaves’ labels.
3
Page 4
In this paper we shall always assume, usually without any further notice, that
the DAGs appearing in it are labeled in some set S, and we shall always identify,
usually without any further notice either, each leaf of a DAG with its label in S.
A path in N is a sequence of nodes (v0,v1,...,vk) such that (vi−1,vi) ∈ E for all
i = 1,...,k. We say that such a path starts in v0, passes through v1,...,vk−1and
ends in vk; consistently, we call v0the origin of the path, v1,...,vk−1its interme-
diate nodes, and vkits end. The position of the node viin the path (v0,v1,...,vk)
is i + 1. The length of the path (v0,v1,...,vk) is k, and it is non-trivial if k ? 1:
a trivial path is, then, simply a node. We denote by u?v any path with origin u
and end v.
The height of a node is the length of a longest path starting in the node and
ending in a leaf.
We shall say that a path u?v is contained in, or that it is a subpath of, a path
u??v?when there exist paths u??u and v?v?such that the path u??v?is the
concatenation of the paths u??u, u?v, and v?v?.
A path is elementary when its origin has out-degree 1 and all its intermediate
nodes have in and out-degree 1.
The relation ? on V defined by
u ? v ⇐⇒ there exists a path u?v
is a partial order, called the path ordering on N. Whenever u ? v, we shall say
that v is a descendant of u and also that u is an ancestor of v. For every node
u ∈ V , we shall denote by C(u) the set of all its descendants, and by CL(u) the
set of leaves that are descendants of u: we call CL(u) the cluster of u.
A node v of N is a strict descendant of a node u if it is a descendant of it, and
every path from a root of N to v contains the node u: in particular, we understand
every node as a strict descendant of itself. For every node u ∈ V , we shall denote
by A(u) the set of all its strict descendants, and by AL(u) the set of leaves that
are strict descendants of u: we call AL(u) the strict cluster of u.
A tree path is a non-trivial path such that its end and all its intermediate nodes
are tree nodes. A node v is a tree descendant of a node u when there exists a tree
path from u to v. For every node u ∈ V , we shall denote by T(u) the set of all its
tree descendants, and by TL(u) the set of leaves that are tree descendants of u: we
call TL(u) the tree cluster of u.
We recall from [7] the following two easy results, which will be used several
times in the next sections.
Lemma 1. Let u?v be a tree path. Then, for every other path w?v ending in
v, it is either contained in u?v or it contains u?v.
Corollary 1. If v ∈ T(u), then v ∈ A(u) and the path u?v is unique.
4
Page 5
2.2 The Robinson-Foulds metric on phylogenetic trees
A phylogenetic tree on a set S of taxa is a rooted tree without out-degree 1 nodes
with its leaves labeled bijectively in S, i.e., a rooted S-DAG with neither hybrid
nodes nor out-degree 1 nodes.
Every arc e = (u,v) of a phylogenetic tree T = (V,E) on S defines a bipartition
of S
π(e) = (CL(v),S \ CL(v)).
Let π(T) denote the set of all these bipartitions:
π(T) = {π(e) | e ∈ E}.
The Robinson-Foulds metric [36] between two phylogenetic trees T and T?on
the same set S of taxa is defined as
dRF(T,T?) = |π(T) ? π(T?)|,
where ? denotes the symmetric difference of sets.
The Robinson-Foulds metric is a true distance for phylogenetic trees, in the
sense that it satisfies the axioms of distances up to isomorphisms: for every phylo-
genetic trees T,T?,T??on the same set S of taxa,
(a) Non-negativity: dRF(T,T?) ? 0
(b) Separation: dRF(T,T?) = 0 if and only if T∼= T?
(c) Symmetry: dRF(T,T?) = dRF(T?,T)
(d) Triangle inequality: dRF(T,T?) ? dRF(T,T??) + dRF(T??,T?)
2.3Phylogenetic networks
A natural model for describing an evolutionary history is a directed acyclic graph
(DAG for short) whose arcs represent the relation parent-child. Such a DAG will
satisfy some specific features depending on the nature and properties of this rela-
tion. For instance, if we assume the existence of a common ancestor of all individ-
uals under consideration, then the DAG will be rooted: it will have only one root.
If, moreover, the evolutionary history to be described is driven only by mutation
events, and hence every individual has only one parent, then the DAG will be a
tree. In this line of thought, a phylogenetic network is defined formally as a rooted
DAG with some specific features that are suited to model evolution under muta-
tion and recombination, but the exact definition varies from paper to paper: see,
for instance, [3,12–14,19,37,39,40].
For instance, Moret, Nakhleh, Warnow and collaborators have proposed several
slightly different definitions of phylogenetic networks [18,19,22,23,27,28]. To re-
call one of them, in [18] a model phylogenetic network on a set S of taxa is defined
as a rooted S-DAG N satisfying the following conditions:
5
Page 6
(1.1) The root and all internal tree nodes have out-degree 2. All hybrid nodes have
out-degree 1, and they can only have in-degree 2 (allo-polyploid hybrid nodes)
or 1 (auto-polyploid hybrid nodes).
(1.2) The child of a hybrid node is always a tree node.
(1.3) Time consistency: If x,y are two nodes for which there exists a sequence of
nodes (v0,v1,...,vk) with v0= x and vk= y such that:
– for every i = 0,...,k − 1, either (vi,vi+1) is an arc of N, or (vi+1,vi) is a
hybridization arc of N,
– at least one pair (vi,vi+1) is a tree arc of N,
then x and y cannot have a hybrid child in common.
(This time compatibility condition (1.3) is equivalent to the existence of a temporal
representation of the network [5,20]: an assignation of times to the nodes of the
network that strictly increases on tree arcs and so that the parents of each hybrid
node coexist in time. See [5, Thm. 3] or [7, Prop. 1] for a proof of this equivalence.)
On the other hand, these authors define in loc. cit. a reconstructible phylo-
genetic network as a rooted S-DAG where the previous conditions are relaxed
as follows: tree nodes can have any out-degree greater than 1; hybrid nodes can
have any in-degree greater than 1 and any out-degree greater than 0; hybrid nodes
can have hybrid children; and the time consistency need not hold any longer. So,
reconstructible phylogenetic networks in this sense are simply rooted DAGs with
neither out-degree 1 tree nodes nor hybrid leaves. These model and reconstructible
phylogenetic networks are used, for instance, in [30].
A generalization of reconstructible phylogenetic networks are the hybrid phy-
logenies of [4]: rooted S-DAGs without out-degree 1 tree nodes. But although
out-degree 1 tree nodes cannot be reconstructed, they can be useful both from the
biological point of view, to include auto-polyploidy in the model, as well as from
the formal point of view, to restore time compatibility and the impossibility of
successive hybridizations in reconstructed phylogenetic networks [23, Fig. 13].
In papers on phylogenetic networks it is usual to impose extra assumptions to
the structure of the network, in order to narrow the output space of reconstruc-
tion algorithms or to guarantee certain desired properties. For instance, Nakhleh
imposes in his PhD Thesis [27] the tree-sibling3condition to the phylogenetic net-
works defined above: every hybrid node must have at least one sibling that is a tree
node. Although this condition is imposed therein to try to guarantee that the error
metric considered in that work satisfies the separation axiom of distances (see the
next subsection), it has also appeared under a different characterization in some
papers devoted to phylogenetic network reconstruction algorithms [15,16]. Indeed,
the phylogenetic networks considered in these papers are obtained by adding hy-
bridization arcs to a phylogenetic tree by repeating the following procedure:
1. choose pairs of arcs (u1,v1) and (u2,v2) in the tree;
3Nakhleh uses the term class I to refer to these networks, but for consistency with the notations
we introduce in the next section, we have renamed them here.
6
Page 7
2. split the first into (u1,w1) and (w1,v1), with w1a new (tree) node;
3. split the second one into (u2,w2) and (w2,v2), with w2a new (hybrid) node;
4. add a new arc (w1,w2).
It is not difficult to prove that the phylogenetic networks obtained in this way
are tree-sibling, and that the binary tree-sibling phylogenetic networks are exactly
those obtained by applying this procedure to binary phylogenetic trees.
An even stronger condition is the one imposed on galled trees [10,11,41]: no
tree node has out-degree 1, all hybrid nodes have in-degree 2, and no arc belongs
to two recombination cycles. Here, by a recombination cycle we mean a pair of two
paths with the same origin and end and no intermediate node in common. In the
aforementioned papers these galled trees need not satisfy the time compatibility
condition, but in other works they are imposed to satisfy it [27,28,31].
2.4Previous work on metrics for phylogenetic networks
While many metrics for phylogenetic trees have been introduced and implemented
in the literature (see, for instance, [8,35] and the references therein), to our knowl-
edge the only similarity measures for phylogenetic networks proposed so far are due
to Moret, Nakhleh, Warnow and collaborators in the series of papers quoted in the
last subsection, where they are applied in the assessment of phylogenetic network
reconstruction algorithms. We briefly recall these measures in this subsection.
The error, or tripartition, metric is a natural generalization to networks of the
Robinson-Foulds metric for phylogenetic trees recalled in §2.2. The basis of this
method is the representation of a network by means of the tripartitions associated
to its arcs. For each arc e = (u,v) of a DAG N labeled in S, the tripartition of S
associated to e is
θ(e) = (AL(v),CL(v) \ AL(v),S \ CL(v)),
where moreover each leaf s in AL(v) and CL(v) \ AL(v) is weighted with the
greatest number of hybrid nodes contained in a path from v to s (including v and
s themselves).4Let θ(N) denote the set of all these tripartitions of arcs of N.
In some of the aforementioned papers, the authors enrich these tripartitions
with an extra piece of information. Namely, they define the reticulation scenario
RS(v) of a hybrid node v with parents u1,u2as the set of clusters of its parents:
RS(v) = {CL(u1),CL(u2)}.
Then, the enriched tripartition Ψ(e) associated to an arc e is defined as θ(e) if e
is a tree arc, and as the pair (θ(e),RS(v)) if e is a hybridization arc with head v.
Let Ψ(N) denote the set of all these enriched tripartitions.
4Actually, Moret, Nakhleh, Warnow et al consider also other variants of this definition, weighting
only the non-strict descendant leaves or not weighting any leaf, but for the sake of brevity and
generality we only recall here the most general version.
7
Page 8
For every Υ = θ,Ψ, the error, or tripartition, metric relative to Υ between two
DAGs N1= (V1,E1) and N2= (V2,E2) labeled in the same set S is defined by
these authors as
mΥ(N1,N2) =1
2
|E1|
Unfortunately, and despite the word ‘metric’, this formula does not satisfy the
separation axiom on any of the subclasses of phylogenetic networks where it is
claimed to do so by the authors, and hence it does not define a distance on them:
for instance, mΨdoes not satisfy the separation axiom on the class of tree-sibling
model phylogenetic networks recalled above. See [7] for a detailed discussion of this
issue.
Two other dissimilarity measures considered in [27,28,30] are based on the
representation of a rooted DAG by means of its induced subtrees: the phylogenetic
trees with the same root and the same leaves as the network that are obtained by
taking a spanning subtree of the network and then contracting elementary paths
into nodes. For every rooted DAG N, let T (N) denote the set of all its induced
subtrees, and C(N) the set of all clusters of nodes of these induced subtrees.
Then, for every two rooted DAGs N1= (V1,E1) and N2= (V2,E2) labeled in
the same set S, the authors define:
?|Υ(N1) \ Υ(N2)|
+|Υ(N2) \ Υ(N1)|
|E2|
?
.
– mtree(N1,N2) as the weight of a minimum weight edge cover of the complete
bipartite graph with nodes T (N1) ? T (N2) and edge weights the value of the
Robinson-Foulds metric between the pairs of induced subtrees of N1and N2
connected by each edge.
– msp(N1,N2) as mΥ, replacing Υ by C:
msp(N1,N2) =1
2
|E1|
These measures do not satisfy the separation axiom on the class of tree-sibling
phylogenetic networks: see, for instance, [27, Fig. 6.8]. On the positive side, Nakhleh
et al prove in [27, §6.4] and [28, §5] that they are distances on the subclass of time-
consistent binary galled trees. But it can be easily checked that on arbitrary galled
trees they do not define distances either: see, for instance, Fig. 3.
?|C(N1) \ C(N2)|
+|C(N2) \ C(N1)|
|E2|
?
.
3 Tree-child phylogenetic networks
Since in this paper we are not interested in the reconstruction of networks, for the
sake of generality we assume the most general notion of phylogenetic network on
a set S of taxa: any rooted S-DAG. So, its hybrid nodes can have any in-degree
greater than one and any out-degree, and its tree-nodes can have any out-degree.
In particular, they may contain hybrid leaves and out-degree 1 tree nodes.
We shall introduce two comparison methods on a specific subclass of such
networks.
8
Page 9
Definition 1. A phylogenetic network satisfies the tree-child condition, or it is
a tree-child phylogenetic network, when every internal node has at least one tree
child.
Tree-child phylogenetic networks can be understood thus as general models of
reticulated evolution where every species other that the extant ones, represented
by the leaves, has some descendant through mutation. This slightly strengthens the
condition imposed on phylogenetic networks in [22], where tree nodes had to have
at least one tree child, because we also require internal hybrid nodes to have some
tree child. So, if hybrid nodes are further imposed to have exactly one child (as for
instance in the definition of model phylogenetic network recalled in §2.3), this node
must be a tree node: this corresponds to the interpretation of hybrid nodes not as
individuals but as recombination events, producing a new individual represented
by their only child. On the other hand, if hybrid nodes represent individuals, then
a hybrid node with all its children hybrid corresponds to a hybrid individual that
hybridizes before undergoing a speciation event, a scenario, according to [22], that
“almost never arises in reality.”
The following result gives two other alternative characterizations of tree-child
phylogenetic networks in terms of their strict and tree clusters.
Lemma 2. The following three conditions are equivalent for every phylogenetic
network N = (V,E):
(a) N is tree-child.
(b) TL(v) ?= ∅ for every node v ∈ V \ VL.
(c) AL(v) ?= ∅ for every node v ∈ V .
Proof. (a)=⇒(b): Given any node v other than a leaf, we can construct a tree path
by successively taking tree children. This path must necessarily end in a leaf that,
by definition, belongs to TL(v).
(b)=⇒(c): If v / ∈ VL, then, by Corollary 1, ∅ ?= TL(v) ⊆ AL(v), while if v ∈ VL,
then, by definition, v ∈ AL(v).
(c)=⇒(a): Let v be any internal node. We want to prove that if AL(v) ?= ∅,
then v has a tree child. So, let s ∈ AL(v), and consider the set W of children of v
that are ancestors of s: it is non-empty, because s must be a descendant of some
child of v. Let w be a maximal element of W with respect to the path ordering on
N. If w is a tree node, we are done. Otherwise, let v?be a parent of w different
from v. Let r?v?be any path from a root r to v?. Concatenating this path with
the arc (v?,w) and any path w ? s, we get a path r ? s. Since s ∈ AL(v), this
path must contain v, and then, since N is acyclic, v must be contained in the path
r ?v?. Let w?be the node that follows v in this path. This node w?is a child of
v and there exists a non-trivial path w??w (through v?), which makes w?also an
ancestor of s. But then w?∈ W and w?> w, which contradicts the maximality
assumption on w.
? ?
9
Page 10
Next lemma shows that tree-child phylogenetic networks are a more general
model of evolution under mutation and recombination than the galled trees.
Lemma 3. Every rooted galled tree is a tree-child phylogenetic network.
Proof. Let N = (V,E) be a galled tree. If N does not satisfy the tree-child condi-
tion, then it contains an internal node u ∈ V with all its children v1,...,vk∈ V
hybrid.
The node u cannot be hybrid, because in galled trees a hybrid node cannot have
any hybrid children. Indeed, assume that u has two parents a,b, and let u?be the
other parent of the child v1of v. Let x be the least common ancestor of a and b, and
y the least common ancestor of b and u?. Then the recombination cycles defined by
the paths (x,...,a,u) and (x,...,b,u), on the one hand, and (y,...,b,u,v1) and
(y,...,u?,v1) on the other hand, share the arc (b,u), contradicting the hypothesis
that N is a galled tree. See Fig. 1.(a).
Thus, u is a tree node. In this case, k ? 2, because galled trees cannot have
out-degree 1 tree nodes. Now, if u is the root of N, then AL(u) = VL?= ∅ and hence,
by the proof of the implication (c)⇒(a) in Lemma 2, it has some tree child. If, on
the contrary, u is not the root of N, let w be its parent and u1and u2the parents
other than u of v1and v2, respectively. Let x1be the least common ancestor of w
and u1, and x2the least common ancestor of w and u2. Then the recombination
cycles defined by the paths (x1,...,u1,v1) and (x1,...,w,u,v1), on the one hand,
and (x2,...,u2,v2) and (x2,...,w,u,v2), on the other hand, share the arc (w,u),
contradicting again the hypothesis that N is a galled tree. See Fig. 1.(b).
? ?
lca(a,b) lca(b,u?)
a
b
u
u?
v1
lca(w,u1) lca(w,u2)
w
u1
u2
u
v1
v2
Fig.1. (a) In a galled tree, a hybrid node cannot have a hybrid child. (b) In a galled tree, a
non-root tree node cannot have two hybrid children.
Remark 1. Not every tree-child phylogenetic network is a galled tree: see, for in-
stance, the tree-child phylogenetic network in Fig. 4.
10
Page 11
We provide now some upper bounds on the number of nodes in a tree-child
phylogenetic network.
Proposition 1. Let N = (V,E) be a tree-child phylogenetic network with n leaves.
(a) |VH| ? n − 1.
(b) If N has no out-degree 1 tree node, then |V | ? 2n − 1 +
(c) If N has no out-degree 1 tree node and if m = max{di(v) | v ∈ VH}, then
|V | ? (m + 2)(n − 1) + 1.
Proof. (a) Let r be the root of N. Consider a mapping t : V ? VL→ VT? {r}
that assigns to every internal node one of its tree children; since tree nodes have
a single parent, this mapping is injective. Then, |V | − |VL| ? |VT| − 1 and, since
|V | = |VH| + |VT| and |VL| = n,
|VH| = |V | − |VT| ? |VL| − 1 = n − 1.
(b) For every j ? 2, let VH,j be the set of hybrid nodes with in-degree j. If,
for every hybrid node v, we remove from N a set of di(v) − 1 arcs with head v,
we obtain a tree with set of nodes V and set of leaves VL (no internal node of
N becomes a leaf, because when we remove an arc e, since it is a hybridization
arc, there still remains some tree arc with the same tail as e). Now, in this tree
there will be at most?
arcs with head v, this node and the tails of the removed arcs become nodes of in
and out-degree 1. Since, in a tree, the number of nodes is smaller than twice the
number of leaves plus the number of nodes with in and out-degree 1, the inequality
in the statement follows.
(c) If m = max{di(v) | v ∈ VH}, then?
?
as we claimed.
?
v∈VH
di(v).
v∈VHdi(v) nodes with in and out-degree 1: N did not have
any out-degree 1 tree node and, in the worst case, when we remove the di(v) − 1
v∈VHdi(v) ? m|VH|. Then, combining
(a) and (b),
|V | ? 2n−1+
v∈VH
di(v) ? 2n−1+m|VH| ? 2n−1+m(n−1) = (m+2)(n−1)+1,
? ?
The upper bounds in Lemma 1 are sharp, as there exist tree-child phylogenetic
networks for which these inequalities are equalities: for n = 1, point (a) entails
that N is a tree, and (b) and (c) then simply say that N consists only of one node;
for n ? 2, see the next example. In particular, for every number n ? 2 of leaves,
there exist arbitrarily large tree-child phylogenetic networks without out-degree 1
tree nodes with n leaves. Of course, if we do not forbid out-degree 1 tree nodes,
then there exists no upper bound on the number of nodes of the network.
11
Page 12
Example 1. Let T be the ‘comb-like’ binary phylogenetic tree labeled in {1,...,n}
described by the Newick string
(1,(2,(3,...,(n − 1,n)...))),
and let us fix a positive integer number m ? 2.
For every i = 1,...,n − 1 let us call vi,mthe parent of the leaf i: to simplify
the language, set vn,m= n. Notice that v1,mis the root of the tree. Now, for every
i = 1,...,n − 1, split the arc (vi,m,i) into a path of length m,
(vi,m,vi,m−1,...,vi,1,i),
split the arc (vi,m,vi+1,m) into a path of length 2,
(vi,m,hi+1,vi+1,m),
and, for every i = 1,...,n − 1 and j = 1,...,m − 1, add an arc (vi,j,hi+1). Fig. 2
displays5this construction for n = 4 and m = 3.
The original binary tree had 2n − 1 nodes, and we have added (m − 1)(n − 1)
new tree nodes and n − 1 hybrid nodes (of in-degree m). Therefore, the resulting
tree-child phylogenetic network has (m + 2)(n − 1) + 1 nodes.
v1,3
v1,2
v1,1
1
h2
v2,3
v2,2
v2,1
2
h3
v3,3
v3,2
v3,1
3
h4
4
Fig.2. A tree-child phylogenetic network with 4 leaves and 5 · 3 + 1 nodes.
In the next sections, we define a distance on the class of all tree-child phy-
logenetic networks. It is convenient thus to remember here that the tripartition
5Henceforth, in graphical representations of phylogenetic networks, and of DAGs in general,
hybrid nodes are represented by squares and tree nodes by circles.
12
Page 13
metrics mθor mΨ recalled in §2.4 do not define a distance on this class, because
there exist pairs of non-isomorphic tree-child phylogenetic networks on the same
set of taxa with the same sets of enriched tripartitions: for instance, the networks
depicted in Figs. 4 and 8 below (see [7] for details). As far as the metrics mtreeand
mspalso recalled in §2.4 goes, they do not define either distances on the class of all
tree-child phylogenetic networks, because there also exist pairs of non-isomorphic
tree-child phylogenetic networks on the same set of taxa with the same sets of
induced subtrees. For instance, the tree and the galled tree depicted in Fig. 3 have
the same sets of induced subtrees, namely the tree itself, and hence the same sets
of clusters of induced subtrees.
r
u
123
r
b
a
A
231
Fig.3. A tree and a galled tree with the same sets of induced subtrees.
4 The µ-representation of tree-child phylogenetic networks
Let us fix henceforth a set of labels S = {l1,...,ln}: unless otherwise stated, all
DAGs appearing henceforth are assumed to be labeled in S, usually without any
further notice.
Let N = (V,E) be an S-DAG. For every node u ∈ V and for every i = 1,...,n,
we denote by mi(u) the number of different paths from u to the leaf li. We define
the path-multiplicity vector, or simply µ-vector for short, of u ∈ V as
µ(u) = (m1(u),...,mn(u));
that is, µ(u) is the n-tuple holding the number of paths from u to each leaf of the
graph.
To simplify the notations, we shall denote henceforth by δ(n)
i
the unit vector
(0,...,0,
?
i
1,0,...,0
???
n
).
Lemma 4. Let u ∈ V be any node of an S-DAG N = (V,E).
13
Page 14
(a) If u = li∈ VL, then µ(u) = δ(n)
(b) If u / ∈ VLand child(u) = {v1,...,vk}, then µ(u) = µ(v1) + ··· + µ(vk).
Proof. The statement for leaves is trivial. When u ∈ V \VL, by deleting or prepend-
ing u we get, for every i = 1,...,n, a bijection
i
.
{paths u?li} ↔
?
1?j?k
{paths vj?li}
which clearly implies the statement in this case.
? ?
Remark 2. If v ∈ child(u), then µ(u) = µ(v) if and only if v is the only child of u:
any other child would contribute something to µ(u).
Lemma 4 implies the simple Algorithm 1 to compute the µ-vectors of the nodes
of an S-DAG in polynomial time. Since the height of the nodes can be computed in
O(n+|E|) time, it takes O(n|E|) time to compute µ(N) on an S-DAG N = (V,E)
with n leaves.
Algorithm 1. Given an S-DAG N = (V,E), compute µ(N).
begin
for i = 1,...,n do
set µ(li) = δ(n)
sort V \ VLincreasingly on height
for each x ∈ V \ VLdo
let y1,...,yk∈ V be the children of x
set µ(x) = µ(y1) + ··· + µ(yk)
end
i
Example 2. Consider the tree-child phylogenetic network depicted in Fig. 4. Ta-
ble 1 gives the µ-vectors of its nodes, sorted increasingly by their heights.
node height
1
2
3
4
5
µ-vector
(1,0,0,0,0)
(0,1,0,0,0)
(0,0,1,0,0)
(0,0,0,1,0)
(0,0,0,0,1)
node height
C
f
B
e
A
µ-vector
(0,0,0,1,0)
(0,0,1,1,0)
(0,0,1,1,0)
(0,1,1,1,0)
(0,1,1,1,0)
node height
a
d
c
b
r
µ-vector
(1,1,1,1,0)
(0,1,1,1,1)
(0,1,1,2,1)
(0,1,2,3,1)
(1,2,3,4,1)
0
0
0
0
0
1
2
3
4
5
6
6
7
8
9
Table 1. µ-vectors of the nodes of the network depicted in Fig. 4.
Example 3. Consider the phylogenetic network depicted in Fig. 5. Table 2 gives
the µ-vectors of its nodes sorted increasingly by their heights.
14
Page 15
r
a
b
1
c
A
d
e
B
52
f
C
34
Fig.4. The tree-child phylogenetic network used in Example 2.
node height
1
2
3
4
5
A
µ-vector
(1,0,0,0,0)
(0,1,0,0,0)
(0,0,1,0,0)
(0,0,0,1,0)
(0,0,0,0,1)
(1,0,0,0,0)
node height
B
C
D
a
g
b
µ-vector
(0,1,0,0,0)
(0,0,1,0,0)
(0,0,0,1,0)
(1,1,0,0,0)
(0,0,1,1,0)
(1,1,1,0,0)
node height
f
c
e
d
r
µ-vector
(0,1,1,1,0)
(1,1,1,1,0)
(1,1,1,1,0)
(1,1,1,1,1)
(2,2,2,2,1)
0
0
0
0
0
1
1
1
1
2
2
3
3
4
4
5
6
Table 2. µ-vectors of the nodes of the network depicted in Fig. 5.
Definition 2. The µ-representation of a DAG N = (V,E) is the multiset µ(N)
of µ-vectors of its nodes: its elements are the vectors µ(u) with u ∈ V , and each
one appears in µ(N) as many times as the number of nodes having it as µ-vector.
It turns out that a tree-child phylogenetic network can be singled out up
to isomorphism among all tree-child phylogenetic network by means of its µ-
representation (Thm. 1). Before proceeding with the proof of this fact, we establish
several auxiliary results.
The following lemma shows that the path ordering on a tree-child phylogenetic
network is almost determined by its µ-representation. In it, and henceforth, the
order ? considered between µ-vectors is the product partial order on Nn:
(m1,...,mn) ? (m?
1,...,m?
n)
⇐⇒
mi? m?
ifor every i = 1,...,n.
Lemma 5. Let N = (V,E) be a tree-child phylogenetic network.
(a) If there exists a path u?v, then µ(u) ? µ(v).
(b) If µ(u) > µ(v), then there exists a path u?v.
(c) If µ(u) = µ(v), then u and v are connected by an elementary path.
15
Page 16
r
c
b
a
e
f
g
ABCD
1234
d
5
Fig.5. The tree-sibling, non-tree-child, phylogenetic network used in Example 3.
Proof. Assertion (a) is a straightforward consequence of Lemma 4.
As far as (b) and (c) goes, let us assume for the moment that µ(u) ? µ(v)
and let li∈ TL(v); in particular, mi(v) ? 1. Then, mi(u) ? mi(v), and therefore
there exists also a path u?li. Now, consider the tree path v ?li. By Lemma 1,
it must happen that either the path u?licontains the path v?lior vice versa,
and therefore u and v are connected by a path.
If µ(u) > µ(v), by (a) there cannot exist any path v?u, and therefore there
exists a path u?v: this proves (b).
On the other hand, if µ(u) = µ(v), nothing prevents the existence of a path
u ? v or a path v ? u. To fix ideas, assume that there exists a path u ? v, say
(u,v1,...,vk−1,v). Since, by (a),
µ(u) ? µ(v1) ? ··· ? µ(vk−1) ? µ(v) = µ(u),
we conclude that
µ(u) = µ(v1) = ··· = µ(vk−1) = µ(v).
As we noticed in Remark 2, this implies that each one of u,v1,...,vk−1has only one
child, the node that follows it in this path. Therefore the path u?v is elementary.
The same argument shows that if it is the path v ? u which exists, then it is
elementary.
? ?
Remark 3. Assertion (a) in the previous lemma holds for every DAG, but asser-
tions (b) and (c) need not be true if the DAG N does not satisfy the tree-child
condition, even if N is a binary tree-sibling phylogenetic network. Indeed, consider
the phylogenetic network described in Fig. 5. We have in it that
µ(c) = (1,1,1,1,0) = µ(e)
µ(d) = (1,1,1,1,1)
16
Page 17
Then, c and d have the same µ-vectors but they are not connected by any path,
yielding a counterexample to (c). And µ(d) > µ(e), but there is no path d ? e,
which yields a counterexample to (b).
The next two lemmas show how to recover the children of a node in a tree-child
phylogenetic network from the knowledge of the µ-representation of the network.
Lemma 6. Let N be any DAG. Let u ∈ V be any internal node, and let
Mu= {w ∈ V | u > w}.
Then, Muhas maximal elements, and all of them are children of u.
Proof. The set Muis non-empty, since u is not a leaf and every descendant of u is
in Mu. Since Muis finite, it has maximal elements. Let v be any such a maximal
element. Since u > v, there exists a non trivial path u ? v. If this path passes
through some other node w, then u > w > v, against the assumption that v is
maximal in Mu. Therefore, the path u?v has length 1 and v is a child of u.
? ?
The maximal elements of Muare exactly the children of u such that the arc
(u,v) is the only path u ? v. This includes all tree children of u, as well as all
hybrid children v of u such that no other parent of v is a descendant of u. In time
consistent phylogenetic networks, this covers all children of u. But in arbitrary
tree-child phylogenetic networks, this need not cover all of them. Consider for
instance the right-hand side tree-child phylogenetic network in Figure 3. In it, the
only maximal element of Mbis a, but A is also a child of b.
Lemma 7. Let N be a tree-child phylogenetic network. Let u ∈ V be any internal
node and v1,...,vksome of its children.
(a) If µ(u) = µ(v1) + ··· + µ(vk), then u has no other children.
(b) If µ(u) > µ(v1) + ··· + µ(vk), let
Mu,v1,...,vk= {w ∈ V | u > w, µ(u) ? µ(w) + µ(v1) + ··· + µ(vk)}.
Then, Mu,v1,...,vkhas maximal elements, and all of them are children of u and
different from v1,...,vk.
Proof. Let us assume that µ(u) = µ(v1) + ··· + µ(vk). Then u cannot have other
children, since if it has any other child w, then
µ(u) ? µ(v1) + ··· + µ(vk) + µ(w) > µ(v1) + ··· + µ(vk).
Assume now that µ(u) > µ(v1) + ··· + µ(vk). Then, by Lemma 4.(b), u has
other children than v1,...,vk. Let N?be the DAG obtained by removing from
N the arcs (u,v1),...,(u,vk). For any node s ∈ V , let m?
different paths s ? li in N?, and set µ?(s) = (m?
i(s) be the number of
1(s),...,m?n(s)). Then, µ?(u) =
17
Page 18
µ(u) − (µ(v1) + ··· + µ(vk)), because the paths u ? li in N that are not in N?
are exactly those whose first visited vertex is one of v1,...,vk. Moreover, if w is
a descendant of u in N, then µ?(w) = µ(w), because no path w ? li in N can
possibly contain any arc (u,vi) (it would form a cycle with the path u?w).
Then, we have that µ(w) = µ?(w) for every w ∈ Mu,v1,...,vk, and thus
Mu,v1,...,vk= {w ∈ V | u > w in N and µ?(u) ? µ?(w)}.
Now, it turns out that w ∈ Mu,v1,...,vkif, and only if, there exists a non-trivial
path u ? w in N?. Indeed, if there exists a non-trivial path u ? w in N?, then
there exists also the same path in N, and hence u > w in N, and moreover, by
Lemma 5.(a) above, µ?(u) ? µ?(w). Conversely, let w be a descendant of u in N
and assume that µ?(u) ? µ?(w) = µ(w). If li∈ TL(w), then m?
Take the tree path w?liin N, which also exists in N?, and any path u?liin N?.
By Lemma 1 (applied to N?), either u?licontains w?lior vice versa. But the
existence of a non-trivial path u?w in N prevents the existence of a path w?u
in N?. Therefore, it is u?lithat contains w?liand in particular there exists a
path u?w also in N?.
So,
Mu,v1,...,vk= {w ∈ V | u > w in N?}.
Since at least one child of u has survived in N?, the previous lemma implies that
this set has maximal elements and they are children of u in N?, and hence they
are also children of u in N and they are different from v1,...,vk.
i(u) ? mi(w) = 1.
? ?
As we have already mentioned, Lemma 6 applies to any DAG (and we make
use of this fact in the proof of Lemma 7, because the DAG N?we consider in
it need not satisfy the tree-child condition, and can have more than one root as
well as out-degree 1 tree nodes), but Lemma 7.(b) need not be true if N does
not satisfy the tree-child condition. Consider again, for instance, the tree-sibling
phylogenetic network N described in Figure 5. In it, c is a maximal element of
Mr,d= {x ∈ V | r > x, µ(r) ? µ(x) + µ(d)}, but it is not a child of r.
We can prove now our main result.
Theorem 1. Let N,N?be tree-child phylogenetic networks. Then, N∼= N?if, and
only if, µ(N) = µ(N?).
Proof. Let N = (V,E) be a tree-child phylogenetic network labeled in S, and let
µ(N) be its µ-representation. Let Vµ⊂ Nn×N be the set consisting of the vectors
of the form (x,i) with x ∈ µ(N) and i between 1 and the multiplicity of x in µ(N).
Consider on Vµthe partial order ? defined by
(x,i) ? (y,j) ⇐⇒ x > y with respect to the product partial order,
or x = y and i < j.
18
Page 19
We know from Lemma 5 that if x ∈ Nnbelongs to µ(N) with multiplicity
m ? 1, then there exist m nodes in N with µ-vector x, and that they form an
elementary path. For every node v ∈ V , let ivbe the position of v in the elementary
path formed by all nodes with the same µ-vector as v. In particular, if µ(v) appears
in µ(N) with multiplicity 1, then iv= 1
Lemma 5 implies then that the mapping
¯ µ : V → Vµ
v ?→ ¯ µ(v) = (µ(v),iv)
is an isomorphism of partially ordered sets between V with the path ordering and
Vµwith the partial order ?. Indeed, if u > v then either µ(u) > µ(v) or µ(u) = µ(v)
and u appears before v in the elementary path of all nodes with this µ-vector, and
hence iu< iv. Conversely, if µ(u) > µ(v) or if µ(u) = µ(v) and iu< iv, then there
exists a non-trivial path u?v.
Therefore, we can rephrase the last two lemmas as follows:
(1) For every u ∈ V internal, the set
Mu= {¯ µ(w) ∈ ¯ µ(V ) | ¯ µ(u) ? ¯ µ(w)}
has maximal elements, and all of them are images under ¯ µ of children of u.
(2) For every u ∈ V and for every v1,...,vk∈ child(u),
(a) If µ(u) > µ(v1) + ··· + v(vk), then the set
Mu,v1,...,vk={¯ µ(w) ∈ ¯ µ(V ) | ¯ µ(u) ? ¯ µ(w), µ(u) ? µ(w)+µ(v1)+···+µ(vk)}
has maximal elements, and all of them are images under ¯ µ of children of
u other than v1,...,vk.
(b) If µ(u) = µ(v1) + ··· + µ(vk), then u has no other children.
We shall prove that we can recover the set E of arcs in N from µ(N). To do that,
consider the set Eµ⊆ Vµ× Vµobtained through the application of Algorithm 2:
Algorithm 2. Given µ(N), compute Eµ.
begin
set Eµ= ∅
sort Vµdecreasingly on the partial order ?
for each (x,i) ∈ Vµdo
set m = x
while m > 0 do
for each (y,j) ∈ Vµsuch that (x,i) ? (y,j) do
if m ? y then
add the arc ((x,i),(y,j)) to Eµ
set m = m − y
end
19
Page 20
Let us prove that (u,v) ∈ E if, and only if, (¯ µ(u), ¯ µ(v)) ∈ Eµ. To do that,
let u ∈ V be an arbitrary node of N. If there is no arc in Eµwith source ¯ µ(u),
it can only be because there is no v ∈ V such that µ(u) > µ(v), and hence u
is a leaf of N and E does not contain any arc with source u, either. Otherwise,
let (¯ µ(u), ¯ µ(v1)),(¯ µ(u), ¯ µ(v2)),...,(¯ µ(u), ¯ µ(vl)) be the arcs contained in Eµwith
source ¯ µ(u), given in the order they are added to Eµ. This entails that ¯ µ(v1) is a
maximal element of
{¯ µ(v) ∈ ¯ µ(V ) | ¯ µ(u) ? ¯ µ(v)} = Mu
and, for each i = 2,...,l, ¯ µ(vi) is a maximal element of
{¯ µ(v) ∈ ¯ µ(V ) | ¯ µ(u) ? ¯ µ(v),µ(u) − (µ(v1) + ... + µ(vi−1)) ? µ(v)}
={v ∈ V | ¯ µ(u) ? ¯ µ(v), µ(u) ? µ(v) + µ(v1) + ... + µ(vi−1)}=Mu,v1,...,vi−1.
Therefore, as we have recalled in points (a) and (b.1) above, the nodes v1,...,vl
are children of u in N, that is, (u,v1),(u,v2),...,(u,vl) ∈ E. On the other hand,
the algorithm adds arcs (¯ µ(u), ¯ µ(vi)) to Eµ until it happens either that µ(u) =
µ(v1) + ··· + µ(vl), in which case, by (b.2), v1,...,vlare exactly the children of
u in N, or that the set of nodes is exhausted and µ(u) > µ(v1) + ··· + µ(vl):
but the latter cannot happen, because µ(u) must be the sum of the µ-vectors
of its children in N. Thus, in summary, child(u) = {v1,...,vl} in N and thus
(u,v1),(u,v2),...,(u,vl) are also all the arcs contained in E with source u.
This proves that E = {(u,v) | ¯ µ(u), ¯ µ(v)) ∈ Eµ}, as we claimed. Now, if
N = (V,E) and N?= (V?,E?) are two tree-child phylogenetic networks such that
µ(N) = µ(N?), we have bijections
V ←→ Vµ= V?
µ←→ V?.
Renaming in V the nodes of N?through this bijection V?−→ V , we obtain a
phylogenetic network N??= (V,E??) isomorphic to N?and such that µ(N??) =
µ(N?) = µ(N). Let Eµ and E??
applying the previous algorithm to N and N??. Since µ(N) = µ(N??), we have that
Eµ= E??
µbe, respectively, the sets or arcs obtained by
µ, and hence
E = {(u,v) | ¯ µ(u), ¯ µ(v)) ∈ Eµ} = {(u,v) | ¯ µ(u), ¯ µ(v)) ∈ E??
This implies that N = N??and therefore N∼= N?as DAGs. Now, this isomorphism
clearly preserves the leaves’ labels, because it preserves µ-vectors. Therefore, N∼=
N?also as S-DAGs.
This proves the “if” implication in the statement. Of course, the “only if”
implication is obvious.
µ} = E??.
? ?
To recover, up to isomorphism, a tree-child phylogenetic network N from its µ-
representation µ(N), it is enough to compute the set Vµassociated to the multiset
20
Page 21
µ(N), then to apply Algorithm 2 to compute the set of arcs Eµ, and finally to
label each leaf of the resulting DAG, which will have the form (δ(n)
the multiplicity of δ(n)
i
in µ(N), with the corresponding label li.
i
,mi) with mi
Example 4. Let us apply this procedure to the µ-representation of the tree-child
phylogenetic network N depicted in Fig. 4. From the multiset µ(N) described in
Table 1, we obtain the following set Vµ, which we give sorted decreasingly on ?
(and, to simplify the description of the application of the algorithm, we give names
xito its elements):
Vµ= {x1= ((1,2,3,4,1),1), x2= ((0,1,2,3,1),1), x3= ((0,1,1,2,1),1),
x4= ((0,1,1,1,1),1), x5= ((1,1,1,1,0),1), x6= ((0,1,1,1,0),1),
x7= ((0,1,1,1,0),2), x8= ((0,0,1,1,0),1), x9= ((0,0,1,1,0),2),
x10= ((1,0,0,0,0),1), x11= ((0,1,0,0,0),1), x12= ((0,0,1,0,0),1),
x13= ((0,0,0,1,0),1), x14= ((0,0,0,1,0),2), x15= ((0,0,0,0,1),1)}.
We shall denote the first and the second component of each xk by µk and ik,
respectively.
We begin with an empty set of arcs:
Eµ= ∅.
Then we proceed with the for each in Algorithm 2, visiting all elements of Vµin
the given order:
(x1) We set m = (1,2,3,4,1). Then, since m ? µ2, we add (x1,x2) to Eµand we
set m = m−µ2= (1,1,1,1,0). The first next element xkof Vµwith µk? m is
x5. Then, we add (x1,x5) to Eµand we set m = m − µ5= (0,0,0,0,0). This
makes us to stop with x1. At the end of this step, we have
Eµ= {(x1,x2),(x1,x5)}.
(x2) We set m = (0,1,2,3,1). Since m ? µ3, we add (x2,x3) to Eµ and we set
m = m−µ3= (0,0,1,1,0). The first next element xkof Vµwith µk? m is x8.
Then, we add (x2,x8) to Eµ, we set m = m − µ8= (0,0,0,0,0), and we stop.
So, at the end of this step, we have
Eµ= {(x1,x2),(x1,x5),(x2,x3),(x2,x8)},
(x3) We set m = (0,1,1,2,1). Then, since m ? µ4, we add (x3,x4) to Eµand we
set m = m−µ4= (0,0,0,1,0). The first next element xkof Vµwith µk? m is
x13. Then, we add (x3,x13) to Eµ, we set m = m − µ13= (0,0,0,0,0), and we
stop. At the end of this step, we have
Eµ= {(x1,x2),(x1,x5),(x2,x3),(x2,x8),(x3,x4),(x3,x13)}.
21
Page 22
(x4) We set m = (0,1,1,1,1). The first element xkwith µk? m is x6, and therefore
we add (x4,x6) to Eµand we set m = m − µ6= (0,0,0,0,1). The first next
element xkof Vµ with µk? m is x15. Then, we add (x4,x15) to Eµ, we set
m = m − µ15= (0,0,0,0,0), and we stop. At the end of this step, we have
Eµ= {(x1,x2),(x1,x5),(x2,x3),(x2,x8),(x3,x4),(x3,x13),(x4,x6),(x4,x15)}.
(x5) We set m = (1,1,1,1,0). Since m ? µ6, we add (x5,x6) to Eµ and we set
m = m − µ6= (1,0,0,0,0). The first next element xkof Vµwith µk? m is
x10. Then, we add (x5,x10) to Eµ. Now m = m − x10= (0,0,0,0,0), and we
stop. At the end of this step, we have
Eµ= {(x1,x2),(x1,x5),(x2,x3),(x2,x8),(x3,x4),(x3,x13),(x4,x6),(x4,x15),
(x5,x6),(x5,x10)}.
(x6) We set m = (0,1,1,1,0). Since m ? µ7, we add (x6,x7) to Eµ and we set
m = m − µ7= (0,0,0,0,0), and we stop. At the end of this step, we have
Eµ= {(x1,x2),(x1,x5),(x2,x3),(x2,x8),(x3,x4),(x3,x13),(x4,x6),(x4,x15),
(x5,x6),(x5,x10),(x6,x7)}.
(x7) We set (again) m = (0,1,1,1,0). Since m ? µ8, we add (x7,x8) to Eµand we
set m = m−µ8= (0,1,0,0,0). The first next element xkof Vµwith µk? m is
x11. Then, we add (x7,x11) to Eµ. Now m = m − µ11= (0,0,0,0,0), and we
stop. At the end of this step, we have
Eµ= {(x1,x2),(x1,x5),(x2,x3),(x2,x8),(x3,x4),(x3,x13),(x4,x6),(x4,x15),
(x5,x6),(x5,x10),(x6,x7),(x7,x8),(x7,x11)}.
(x8) We set m = (0,0,1,1,0). Since m ? µ9, we add (x8,x9) to Eµ, we set m =
m − µ9= (0,0,0,0,0), and we stop. At the end of this step, we have
Eµ= {(x1,x2),(x1,x5),(x2,x3),(x2,x8),(x3,x4),(x3,x13),(x4,x6),(x4,x15),
(x5,x6),(x5,x10),(x6,x7),(x7,x8),(x7,x11),(x8,x9)}.
(x9) We set m = (0,0,1,1,0). The first element xkin Vµwith µk? m is x12, and
then we add (x9,x12) to Eµand we set m = m − µ12= (0,0,0,1,0). The first
next element xkin Vµwith µk? m is x13. Then, we add (x9,x13) to Eµ. Now
m = m − µ13= (0,0,0,0,0), and we stop. At the end of this step, we have
Eµ={(x1,x2),(x1,x5),(x2,x3),(x2,x8),(x3,x4),(x3,x13),(x4,x6),(x4,x15),
(x5,x6),(x5,x10),(x6,x7),(x7,x8),(x7,x11),(x8,x9),(x9,x12),(x9,x13)}.
(x10) Since m = (1,0,0,0,0) has only one non-zero entry, and x10is the only element
of Vµwith µk= m, the algorithm does not find any arc in Eµwith head x10.
The same happens with x11, x12, and x15.
22
Page 23
(x13) We set m = (0,0,0,1,0). Since m ? µ14, we add (x13,x14) to Eµ, we set
m = m − µ14= (0,0,0,0,0), and we stop. At the end of this step, we have
Eµ={(x1,x2),(x1,x5),(x2,x3),(x2,x8),(x3,x4),(x3,x13),(x4,x6),(x4,x15),
(x5,x6),(x5,x10),(x6,x7),(x7,x8),(x7,x11),(x8,x9),(x9,x12),(x9,x13),
(x13,x14)}.
(x14) Since m = (0,0,0,1,0) has only one non-zero entry, and no other element of
Vµafter x14has this first component, the algorithm does not find any arc in
Eµwith head x14.
The DAG (Vµ,Eµ) obtained up to now is depicted in Fig. 6. Finally, we would
label 1, 2, 3, 4, and 5 the nodes x10, x11, x12, x14, and x15, respectively. The result-
ing DAG labeled in {1,...,5} is clearly isomorphic to the tree-child phylogenetic
network N in Fig. 4.
x1
x2
x3
x4
x5
x6
x7
x8
x9
x13
x10
x11
x12
x14
x15
Fig.6. The DAG recovered from the µ-representation of the phylogenetic network in Fig. 4.
Remark 4. The thesis of Theorem 1 need not hold if N1 and N2 do not satisfy
the tree-child condition. Indeed, it is not difficult to check that the tree-sibling
phylogenetic network given in Figure 7 has the same µ-representation as the one
given in Figure 5, but they are not isomorphic as S-DAGs.
5 The µ-distance for tree-child phylogenetic networks
For every pair of DAGs N1and N2labeled in the same set S, let
dµ(N1,N2) = |µ(N1) ? µ(N2)|,
23
Page 24
r
c
b
a
e
f
g
ABCD
1234
d
5
Fig.7. This phylogenetic network has the same µ-representation as the one in Fig. 5.
where the symmetric difference ? refers to multisets: if a vector belongs to µ(N1)
with multiplicity a and to µ(N2) with multiplicity b, then it belongs to µ(N1) ?
µ(N2) with multiplicity |a−b|, and hence it contributes |a−b| to |µ(N1)?µ(N2)|.
Theorem 2. Let N1,N2,N3 be tree-child phylogenetic networks on the same set
of taxa. Then:
(a) dµ(N1,N2) ? 0
(b) dµ(N1,N2) = 0 if, and only if, N1∼= N2
(c) dµ(N1,N2) = dµ(N2,N1)
(d) dµ(N1,N3) ? dµ(N1,N2) + dµ(N2,N3).
Proof. (a), (c), and (d) are direct consequences of the properties of the symmetric
difference, and (b) is a consequence of Theorem 1.
? ?
Therefore, dµdefines a distance on the class of all tree-child phylogenetic net-
works: we shall call it the µ-distance.
We have shown in Sect. 4 that the µ-representation of an S-DAG can be com-
puted in polynomial time. Now, given two S-DAGs N1 = (V1,E1) and N2 =
(V2,E2) with n leaves together with their µ-representations µ(N1) and µ(N2), the
simple Algorithm 3 performs a simultaneous traversal of the internal nodes of N1
and N2, sorted by their µ-vectors, in order to compute the µ-distance dµ(N1,N2)
in O(n|V |) time, where |V | = max(|V1|,|V2|).
Algorithm 3. Given the µ-representations µ(N1) and µ(N2) of two S-DAGs N1=
(V1,E1) and N2= (V2,E2), compute dµ(N1,N2).
begin
let VLbe the set of leaves, common to N1and N2
24
Page 25
sort X1= V1\ (V1)Lincreasingly according to the lex ordering of the µ-vectors
sort X2= V2\ (V2)Lincreasingly according to the lex ordering of the µ-vectors
set d = 0
while X1?= ∅ and X2?= ∅ do
let x1and x2be the first element of X1and X2, respectively
case µ(x1) < µ(x2)
set X1= X1\ {x1}
set d = d + 1
case µ(x1) > µ(x2)
set X2= X2\ {x2}
set d = d + 1
otherwise
set X1= X1\ {x1}
set X2= X2\ {x2}
return d + |X1| + |X2|
end
Example 5. Consider the tree T and the network N in Fig. 3. Their µ-representa-
tions are
µ(T) = {(1,0,0),(0,1,0),(0,0,1),(0,1,1),(1,1,1)}
µ(N) = {(1,0,0),(0,1,0),(0,0,1),(0,1,0),(0,1,1),(0,2,1),(1,2,1)}
and therefore
µ(T) ? µ(N) = {(0,1,0),(1,1,1),(0,2,1),(1,2,1)}
from which we obtain dµ(T,N) = 4.
Example 6. It was shown in [7] that the tree-child phylogenetic network N depicted
in Fig. 4 could not be distinguished from the tree-child phylogenetic network N?
depicted in Fig. 8 below using the tripartition metric. We have already given in
Table 1 the µ-vectors of the nodes of N. In Table 3 we give the µ-vectors of the
nodes of N?. From these tables we get that
|µ(N) ? µ(N?)| =?(0,1,1,2,1),(0,1,2,2,1)?,
which implies that dµ(N,N?) = 2.
Example 7. Let N be any tree-child phylogenetic network labeled in S and let v
be any internal node of it. Let N?be a tree-child phylogenetic network obtained
by adding to N a new internal node v?, an arc (v,v?), and then distributing the
children of v between v and v?so that N?remains tree-child and v?does not become
a leaf. Then µ(N) ? µ(N?) = {µ(v?)} and therefore dµ(N,N?) = 1.
25
Page 26
r
a
b
1
c
A
d
e
B
52
f
C
34
Fig.8. The tree-child phylogenetic network N?compared in Example 6 with the tree-child phy-
logenetic network N from Fig. 4.
node height
1
2
3
4
5
µ-vector
(1,0,0,0,0)
(0,1,0,0,0)
(0,0,1,0,0)
(0,0,0,1,0)
(0,0,0,0,1)
node height
C
f
B
e
A
µ-vector
(0,0,0,1,0)
(0,0,1,1,0)
(0,0,1,1,0)
(0,1,1,1,0)
(0,1,1,1,0)
node height
a
d
c
b
r
µ-vector
(1,1,1,1,0)
(0,1,1,1,1)
(0,1,2,2,1)
(0,1,2,3,1)
(1,2,3,4,1)
0
0
0
0
0
1
2
3
4
5
6
6
7
8
9
Table 3. µ-vectors of the nodes of the network depicted in Fig. 8.
So, expanding a node into an arc yields µ-distance 1, just as it happens with
Robinson-Foulds distance for phylogenetic trees. This is consistent with the fact,
which we shall prove later, that the µ-distance extends the Robinson-Foulds dis-
tance to tree-child networks: cf. Theorem 3 below. But, contrary to the tree case,
two tree-child phylogenetic networks can be at µ-distance 1 without any one of
them being obtained by expanding a node into an arc in the other one. Consider,
for instance, the tree-child phylogenetic networks N and N?labeled in {1,2,3}
depicted in Fig. 9. Their µ-representations are
µ(N) =?(1,0,0),(0,1,0),(0,0,1),(1,1,0),(1,1,0),(1,1,1),(2,2,1)?
µ(N?) =?(1,0,0),(0,1,0),(0,0,1),(1,1,0),(1,1,0),(2,2,1)?
and thus dµ(N,N?) = 1.
It should also be noticed that, also against what happens in the tree case,
collapsing an arc in a tree-child phylogenetic network N into a node (that is, given
an arc (v,v?), removing v?and this arc, and replacing every other arc with tail
or head v?by a new arc with tail or head, respectively, v) need not produce a
network at µ-distance 1 of N: for instance, if v and v?hybridize in N, or if v?is
26
Page 27
a non-strict descendant of v. We leave to the interested reader to draw specific
counterexamples.
r
a
c
b
123
r
u
v
123
Fig.9. Two tree-child phylogenetic networks N (left) and N?(right) at µ-distance 1.
Example 8. There exist 66 pairwise non-isomorphic binary tree-child phylogenetic
networks with 3 leaves. All of them have an even number of internal nodes, and
therefore the µ-distance between two of them is always an even number. In Propo-
sition 2 below we shall see that this µ-distance is smaller than or equal to 12. The
left-hand side histogram in Fig. 10 shows the distribution of distances between
unordered pairs of such networks.
In a similar way, there exist 4059 pairwise non-isomorphic binary tree-child
phylogenetic networks with 4 leaves. Again, all of them have an even number of
internal nodes, and therefore the µ-distance between two of them is always even,
and in Proposition 2 we shall see that it is smaller than or equal to 18. The right-
hand side histogram in Fig. 10 shows the corresponding distribution of distances.
See the Supplementary Material for more details.
Every phylogenetic tree is a tree-child phylogenetic network, and, as we have
already mentioned, it turns out that the restriction of this µ-distance to the class
of phylogenetic trees is the Robinson-Foulds metric.
Theorem 3. For every phylogenetic trees T1,T2on the same set of taxa S,
dµ(T1,T2) = dRF(T1,T2).
Proof. Let S = {l1,...,ln}. The uniqueness of paths in trees implies that, if T =
(V,E) is any phylogenetic tree labeled in S, then, for every u ∈ V ,
?1 if li∈ CL(u)
mi(u) =
0 if li/ ∈ CL(u)
27
Page 28
66
114
273
537
654
456
111
02468 1012
100
200
300
400
500
600
700
4059
10470
39216
128058
364308
908337
1817316
2525022
1926624
516360
02468 1012 141618
500000
1.?106
1.5?106
2.?106
2.5?106
Fig.10. Histograms of µ-distances between unordered pairs of binary tree-child phylogenetic trees
with 3 (left) and 4 (right) leaves.
Therefore, the µ-vector of a node u of a phylogenetic tree labeled in S is the image
of its cluster CL(u) under the bijection between the powerset P(S) of S and {0,1}n
that sends each subset A of S to its characteristic vector
χA= (χA(l1),...,χA(ln)), with χA(li) =
?1 if li∈ A
0 if li/ ∈ A
Then, given two phylogenetic trees T1and T2on the set of taxa S, this bijection
P(S) −→ {0,1}ntransforms the sets CL(T1) and CL(T2) of clusters of their nodes
into their µ-representations µ(T1) and µ(T2), respectively, and hence the symmetric
difference of the former into the symmetric difference of the latter. Therefore,
|π(T1) ? π(T2)| = |CL(T1) ? CL(T2)| = |µ(T1) ? µ(T2)|,
as we claimed.
? ?
The µ-distance dµtakes integer values. Its smallest non-zero value is 1 but it
can be arbitrarily large. If we bound the in-degree of the hybrid nodes of the net-
works, then we can compute the diameter of the resulting subclass of phylogenetic
networks.
Let T CNn,mbe henceforth the class of all tree-child phylogenetic networks on
a fixed set of taxa of n elements, without out-degree 1 tree nodes and with all their
hybrid nodes of in-degree at most m.
Proposition 2. For every N1,N2∈ T CNn,m,
dµ(N1,N2) ? 2(m + 1)(n − 1)
and there exist pairs of networks in T CNn,mat µ-distance 2(m + 1)(n − 1).
Proof. Let N1,N2 ∈ T CNn,m. By Proposition 1.(c), each one of µ(N1),µ(N2)
has at most (m + 2)(n − 1) + 1 elements, from which at least the n µ-vectors
corresponding to the leaves will appear in both sets. Therefore
dµ(N1,N2) ? 2?(m + 2)(n − 1) + 1?− 2n = 2(m + 1)(n − 1).
28
Page 29
To find a pair of networks in T CNn,mat distance 2(m+1)(n−1), let N be the
tree-child phylogenetic network with n leaves and n − 1 hybrid nodes of in-degree
m described in Example 1. A simple argument by induction shows that
µ(hn) = (0,...,0,0,0,0,1)
µ(vn−1,k) = (0,...,0,0,0,1,k) for every k = 1,...,m
µ(hn−1) = (0,...,0,0,0,1,m)
µ(vn−2,k) = (0,...,0,0,1,k,km) for every k = 1,...,m
µ(hn−2) = (0,...,0,0,1,m,m2)
µ(vn−3,k) = (0,...,0,1,k,km,km2) for every k = 1,...,m
...
and, in general,
µ(hn−j)=(
n−j−1
? ?? ?
? ?? ?
0,...,0,1,m,m2,...,mj) for every j = 0,...,n − 2
n−j−2
0,...,0,1,k,km,...,kmj) for every k = 1,...,m, j = 1,...,n − 1
Therefore, µ(N) contains, beside the µ-vectors δ(n)
µ(vn−j,k)=(
i
of leaves, all vectors of the form
(
n−j−2
? ?? ?
0,...,0,1,k,km,...,kmj),k = 1,...,m − 1, j = 1,...,n − 1
with multiplicity 1, and all vectors of the form
(
n−j−1
? ?? ?
0,...,0,1,m,m2,...,mj),j = 1,...,n − 2
with multiplicity 2.
Now let N?be the tree-child phylogenetic network in T CNn,mobtained by per-
forming the same construction starting with the binary phylogenetic tree described
by the Newick string
(n,(n − 1,(n − 2,...,(2,1)...))).
The same argument shows that µ(N?) contains, again beside the µ-vectors δ(n)
leaves, all vectors of the form
i
of
(kmj,...,km,k,1,
n−j−2
? ?? ?
0,...,0),k = 1,...,m − 1, j = 1,...,n − 1
with multiplicity 1, and all vectors of the form
(mj,...,m2,m,1,
n−j−1
? ?? ?
0,...,0),j = 1,...,n − 2
29
Page 30
with multiplicity 2.
Then, µ(N) and µ(N?) have no µ-vector of internal node in common, and
since each one has (m + 1)(n − 1) internal nodes, this implies that dµ(N,N?) =
2(m + 1)(n − 1).
This result allows us to normalize the µ-distance on T CNn,m.
Corollary 2. The mapping
? ?
d?µ: T CNn,m× T CNn,m→ R
(N1,N2)
?→
1
2(m + 1)(n − 1)dµ(N1,N2)
is a distance T CNn,mthat takes values in the unit interval [0,1].
6The alignment of tree-child phylogenetic networks
Let N1 = (V1,E1) and N2 = (V2,E2) be two tree-child phylogenetic networks
labeled in the same set S = {l1,...,ln}. For simplicity, we assume that they don’t
have out-degree 1 tree nodes, and therefore, if two nodes in one of these networks
have the same µ-vector, then they must be a hybrid node and its only child.
For every v1∈ V1and v2∈ V2, let
n
?
χ(v1,v2) =
1 if v1,v2are of different type
H(v1,v2) =
i=1
?0 if v1,v2are of the same type (both tree nodes or both hybrid)
Notice that H(v1,v2) is the Manhattan, or L1, distance between µ(v1) and µ(v2).
The advantage of this distance over the Euclidean distance is that it takes integer
values on Nn.
Define finally the weight of the pair (v1,v2) as
|mi(v1) − mi(v2)|
w(v1,v2) = H(v1,v2) +χ(v1,v2)
2n
.
To fix ideas, assume that |V1| ? |V2|. Then, given a matching between N1and
N2, that is, an injective mapping M : V1 → V2 that preserves leaves and their
labels, its total weight is defined as
?
An optimal alignment between N1and N2is a matching with the smallest total
weight. Such an optimal alignment can be computed in time O?(|V1|+|V2|)3?using
w(M) =
v∈V1
w(v,M(v)).
the Hungarian algorithm [17,24].
30
Page 31
Proposition 3. A matching M between N1 and N2 is an optimal alignment if,
and only if, it minimizes the sum
?
and, among those matchings minimizing this sum, it maximizes the number of
nodes that are sent to nodes of the same type.
v∈V1\VL
H(v,M(v))
Proof. Let M : V1→ V2be any matching. Then
?
The first addend is a positive integer, while the second addend is strictly smaller
than 1, because by Proposition 1.(a) both N1and N2have at most n − 1 hybrid
nodes, and therefore?
?
and, if the latter are equal, also
w(M) =
v∈V1
w(v,M(v)) =
?
v∈V1
H(v,M(v)) +
1
2n
?
v∈V1
χ(v,M(v)).
v∈V1χ(v,M(v)) ? 2(n − 1). Therefore,?
H(v,M(v)) ?
v∈V1
v∈V1H(v,M(v))
is the integer part of w(M). This implies that w(M) ? w(M?) if, and only if,
v∈V1
?
H(v,M?(v))
1
2n
?
v∈V1
χ(v,M(v)) ?
1
2n
?
v∈V1
χ(v,M?(v)),
from where the statement clearly follows.
? ?
Remark 5. If we restrict this alignment method to phylogenetic trees, the weight
of a pair of nodes (v1,v2) is simply |CL(v1) ? CL(v2)|. This can be seen as an
unnormalized version of the score used in TreeJuxtaposer [25].
Remark 6. Let N = (V,E) and N?= (V?,E?) be two tree-child phylogenetic net-
works without out-degree 1 tree nodes. If they are isomorphic, the isomorphism
between them is an optimal alignment of total weight 0. The converse implication is
clearly false in general: a matching of total weight 0 need not be an isomorphism.
Consider for instance the optimal alignment between the phylogenetic trees de-
scribed by the Newick strings (1,2,3) and (1,(2,3)).
But if there exists an alignment M (obviously optimal) between N and N?of
total weight 0 and if |V | = |V?|, then M is a bijection between V and V?that
preserves the µ-vectors, because
?
and therefore µ(N) = µ(N?), which implies, by Theorem 1, N∼= N?.
v∈V
|µ(v) − µ(M(v))| ? w(M) = 0 ⇒ µ(v) = µ(M(v)) for every v ∈ V ,
31
Page 32
Given two S-DAGs N1 = (V1,E1) and N2 = (V2,E2) together with their
µ-representations µ(N1) and µ(N2), the simple Algorithm 4 computes the total
weight w(M) of an optimal alignment M between N1and N2in O((|V1| + |V2|)3)
time.
Algorithm 4. Given the µ-representations µ(N1) and µ(N2) of two S-DAGs N1=
(V1,E1) and N2= (V2,E2), compute the total weight of an optimal alignment be-
tween N1and N2.
begin
let G = ((V1\ (V1)L) ? V2\ (V2)L,E) be a complete bipartite graph with |V1| + |V2| − 2n vertices
for each x1∈ V1\ (V1)Land x2∈ V2\ (V2)Ldo
set weight[x1,x2] = abs(µ(x1) − µ(x2))
if x1and x2are not both tree nodes or both hybrid then
add 1/2n to weight[x1,x2]
let M : V1\ (V1)L→ V2\ (V2)Lbe a minimum-weight bipartite matching of G
extend M by sending each v ∈ (V1)Lto the leaf of N2with the same label
return M
return?|V1|
Example 9. Consider the tree T and the galled tree N depicted in Fig. 3. The total
weight of the matching between T and N that sends the root of T to the root of
N and the node u of T to the tree node a of N is
i=1weight[v1,M(v1)]
end
w(r,r) + w(u,a) + w(1,1) + w(2,2) + w(3,3) = 0 + 1 + 0 + 0 + 0 = 1,
and hence, since µ(T) ?⊆ µ(N), it is an optimal alignment: see Fig. 11.
r
u
123
r
b
a
A
231
Fig.11. An optimal alignment between the tree and the galled tree in Fig. 3.
32
Page 33
Example 10. Consider the tree-child phylogenetic networks N and N?labeled in
{1,...,5} given in Fig. 12. The µ-vectors of their internal nodes are given in
Table 4. Table 5 gives the values of w(x,y) for every internal node x of N and
every internal node y of N?. From this table, the optimal alignment marked in red
in the table and depicted in Fig. 13 (where, to simplify the picture, the arrows
joining each leaf of N to the homonymous leaf in N?are omitted) is deduced: its
total weight is 8. It is the only optimal alignment between these networks.
r
a
b
A
c
d
e
B
12345
r?
uv
x
X
y
z
Y
12345
Fig.12. The networks N (left) and N?(right) used in Example 10.
node
r
c
r?
y
µ-vector
(1,1,2,3,1)
(1,1,0,0,0)
(1,2,1,2,1)
(0,0,1,1,0)
node
b
d
u
z
µ-vector
(0,0,1,2,1)
(0,0,1,1,0)
(1,1,0,0,0)
(0,0,0,1,1)
node
a
e
v
X
µ-vector
(1,1,1,1,0)
(0,0,0,1,1)
(0,1,1,2,1)
(0,1,0,0,0)
node
A
B
x
Y
µ-vector
(0,0,1,1,0)
(0,0,0,1,0)
(0,1,1,1,0)
(0,0,0,1,0)
Table 4. µ-vectors of the internal nodes of the networks depicted in Fig. 12.
A web tool that computes an optimal alignment of two tree-child phylogenetic
networks with the same leaves and without out-degree 1 tree nodes is available at
the Supplementary Material web page.
33
Page 34
m
r
b
a
A 5.1 4.1 3.1 1.1 0.1 2.1
c505
d543
e543
B 6.1 3.1 4.1 2.1 1.1 1.1
r?
3
3
3
u
6
6
2
v
3
1
3
x
5
3
1
y
6
2
2
z
6
2
4
X
7.1 7.1
5.1 3.1
3.1 3.1
3
1.1 3.1
3.1 1.1
3.1 1.1
2
Y
1
3
1
3
4
0
2
4
2
0
0
Table 5. Weights of the pairs of internal nodes of the networks depicted in Fig. 12.
7 Conclusion
In this paper we have presented two methods for comparing pairs of tree-child
phylogenetic networks: a metric and an alignment algorithm. While the former
quantifies the similarity between two networks in a way that allows to soundly es-
tablish whether a network is more similar to a second one than to a third one, the
latter allows the interactive visualization of the differences between two networks.
They are respectively the first true distance and the first alignment method de-
fined on a meaningful class of phylogenetic networks strictly extending the class of
phylogenetic trees. Since the class of tree-child phylogenetic networks includes the
galled trees, this distance and this alignment can be used to compare the latter.
Tree-child phylogenetic networks have been recently proposed by S. J. Wilson
as the class of networks where to look for meaningful phylogenies, but for the
moment no reconstruction algorithm for tree-child phylogenetic networks has been
developed. So, it remains an interesting open question to characterize the sets of
sequences whose evolution can be explained by means of a tree-child network and
to provide an algorithm to reconstruct this network, as well as to characterize the
computational complexity of these problems.
On the other hand, several reconstruction methods for time-consistent tree-
sibling phylogenetic networks have been proposed by Nakhleh and collaborators.
Since no true distance for these networks is known so far, it is an interesting open
question whether our distance and alignment method can be extended to these
networks or not.
Acknowledgment
The research described in this paper has been partially supported by the Spanish
CICYT project TIN 2004-07925-C03-01 GRAMMARS, by Spanish DGI projects
MTM2006-07773 COMGRIO and MTM2006-15038-C02-01, and by EU project
INTAS IT 04-77-7178.
34
Page 35
r
a
b
A
c
d
e
B
12345
r?
u
v
x
X
y
z
Y
12345
Fig.13. An optimal alignment between the networks in Fig. 12.
Supplementary Material
The Supplementary Material referenced in the paper is available at the url
http://bioinfo.uib.es/˜recerca/phylonetworks/mudistance.
References
1. B. L. Allen, M. A. Steel, Subtree transfer operations and their induced metrics on evolutionary
trees, Ann. Combin. 5 (2001) 1–13.
2. V. Bafna, V. Bansal, The number of recombination events in a sample history: Conflict graph
and lower bounds, IEEE T. Comput. Biol. 1 (2) (2004) 78–90.
3. H.-J. Bandelt, Phylogenetic networks, Verh. Naturwiss. Ver. Hambg. 34 (1994) 51–71.
4. M. Baroni, C. Semple, M. Steel, A framework for representing reticulate evolution, Ann.
Combin. 8 (2004) 391–408.
5. M. Baroni, C. Semple, M. Steel, Hybrids in real time, Syst. Biol. 55 (2006) 46–56.
6. J. Bluis, D.-G. Shin, Nodal distance algorithm: Calculating a phylogenetic tree comparison
metric, in: Proc. 3rd IEEE Symp. BioInformatics and BioEngineering, 2003.
7. G. Cardona, F. Rossell´ o, G. Valiente, Tripartitions do not always discriminate phylogenetic
networks, http://arxiv.org/abs/0707.2376 (2007).
8. B. DasGupta, X. He, T. Jiang, M. Li, J. Tromp, L. Wang, L. Zhang, Computing distances
between evolutionary trees, in: D.-Z. Du, P. Pardalos (eds.), Handbook of Combinatorial
Optimization, Kluwer Academic Publishers, 1998, pp. 35–76.
9. G. Estabrook, F. McMorris, C. Meacham, Comparison of undirected phylogenetic trees based
on subtrees of four evolutionary units, Syst. Zool. 34 (2) (1985) 193–200.
10. D. Gusfield, S. Eddhu, C. Langley, The fine structure of galls in phylogenetic networks,
INFORMS J. Comput, 16 (4) (2004) 459–469.
35
Page 36
11. D. Gusfield, S. Eddhu, C. Langley, Optimal, efficient reconstruction of phylogenetic networks
with constrained recombination, J. Bioinformatics Comput. Biol. 2 (1) (2004) 173–213.
12. D. H. Huson, Gcb 2006 - tutorial: Introduction to phylogenetic networks, tutorial pre-
sented at the German Conference on Bioinformatics GCB’06, available online at http://www-
ab.informatik.uni-tuebingen.de/research/phylonets/GCB2006.pdf (2006).
13. D. H. Huson, Split networks and reticulate networks, in: O. Gascuel, M. A. Steel (eds.), Re-
constructing Evolution: New Mathematical and Computational Advances, Oxford University
Press, 2007, p. in press.
14. D. H. Huson, D. Bryant, Application of Phylogenetic Networks in Evolutionary Studies, Mol.
Biol. Evol. 23 (2) (2006) 254–267.
15. G. Jin, L. Nakhleh, S. Snir, T. Tuller, Maximum likelihood of phylogenetic networks, Bioin-
formatics 22 (21) (2006) 2604–2611.
16. G. Jin, L. Nakhleh, S. Snir, T. Tuller, Efficient parsimony-based methods for phylogenetic
network reconstruction, Bioinformatics 23 (2) (2007) 123–128.
17. H. W. Kuhn, The hungarian method for the assignment problem, Naval Research Logistic
Quarterly 2 (1955) 83–97.
18. C. R. Linder, B. M. E. Moret, L. Nakhleh, A. Padolina, J. Sun, A. Tholse, R. Timme,
T. Warnow, An error metric for phylogenetic networks, Tech. Rep. TR03-26, University of
New Mexico (2003).
19. C. R. Linder, B. M. E. Moret, L. Nakhleh, T. Warnow, Network (reticulate) evolution: Biology,
models, and algorithms, tutorial presented at The Ninth Pacific Symposium on Biocomputing,
available online at http://www.cs.rice.edu/˜nakhleh/Papers/psb04.pdf (2003).
20. W. P. Maddison, Gene trees in species trees, Syst. Biol. 46 (3) (1997) 523–536.
21. B. M. E. Moret, Computational challenges from the tree of life, in: C. Demetrescu,
R. Sedgewick, R. Tamassia (eds.), Proc. 7th Workshop on Algorithm Engineering and Ex-
periments and the 2nd Workshop on Analytic Algorithmics and Combinatorics, ALENEX
/ANALCO 2005, SIAM, 2005.
22. B. M. E. Moret, L. Nakhleh, T. Warnow, An error metric for phylogenetic networks, Tech.
Rep. TR02-09, University of New Mexico (september 2002).
23. B. M. E. Moret, L. Nakhleh, T. Warnow, C. R. Linder, A. Tholse, A. Padolina, J. Sun,
R. Timme, Phylogenetic networks: Modeling, reconstructibility, and accuracy, IEEE T. Com-
put. Biol. 1 (1) (2004) 13–23.
24. J. Munkres, Algorithms for the assignment and transportation problems, J. SIAM 5 (1957)
32–38.
25. T. Munzner, F. Guimbreti` ere, S. Tasiran, L. Zhang, Y. Zhou, Treejuxtaposer: scalable tree
comparison using focus+context with guaranteed visibility., ACM T. Graphics 22 (3) (2003)
453–462.
26. S. R. Myers, R. C. Griffiths, Bounds on the minimum number of recombination events in a
sample history, Genetics 163 (1) (2003) 375–394.
27. L. Nakhleh, Phylogenetic networks, Ph.D. thesis, University of Texas at Austin, available
online at http://bioinfo.cs.rice.edu/Papers/dissertation.pdf (2004).
28. L. Nakhleh, A. Clement, T. Warnow, C. R. Linder, B. M. E. Moret, Quality measures for
phylogenetic networks, Tech. Rep. TR04-06, University of New Mexico (january 2004).
29. L. Nakhleh, J. Sun, T. Warnow, C. R. Linder, B. M. E. Moret, A. Tholse, Towards the devel-
opment of computational tools for evaluating phylogenetic network reconstruction methods,
in: Proc. 8th Pacific Symp. Biocomputing, 2003.
30. L. Nakhleh, J. Sun, T. Warnow, C. R. Linder, B. M. E. Moret, A. Tholse, Towards the devel-
opment of computational tools for evaluating phylogenetic network reconstruction methods,
in: Proc. 8th Pacific Symp. Biocomputing, 2003.
31. L. Nakhleh, T. Warnow, C. R. Linder, K. S. John, Reconstructing reticulate evolution in
species: Theory and practice, J. Comput. Biol. 12 (6) (2005) 796–811.
32. T. M. Nye, P. Lio, W. R. Gilks, A novel algorithm and web-based tool for comparing two
alternative phylogenetic trees, Bioinformatics 22 (1) (2006) 117–119.
36
Page 37
33. R. D. M. Page, Parallel phylogenies: reconstructing the history of host-parasite assemblages,
Cladistics 10 (1995) 155–173.
34. R. D. M. Page, Phyloinformatics: Toward a phylogenetic database., in: J. T.-L. Wang, M. J.
Zaki, H. Toivonen, D. Shasha (eds.), Data Mining in Bioinformatics, Springer-Verlag, 2005,
pp. 219–241.
35. P. Puigb` o, S. Garcia-Vallv´ e, J. O. McInerney, TOPD/FMTS: a new software to compare
phylogenetic trees, Bioinformatics 23 (12) (2007) 1556–1558.
36. D. F. Robinson, L. R. Foulds, Comparison of phylogenetic trees, Math. Biosci. 53 (1/2) (1981)
131–147.
37. C. Semple, Hybridization networks, in: O. Gascuel, M. Steel (eds.), Reconstructing evolution:
New mathematical and computational advances, Oxford University Press, 2007, p. in press.
38. Y. S. Song, J. Hein, Constructing minimal ancestral recombination graphs, J. Comput. Biol.
12 (2) (2005) 147–169.
39. K. Strimmer, V. Moulton, Likelihood analysis of phylogenetic networks using directed graph-
ical models, Mol. Biol. Evol. 17 (6) (2000) 875–881.
40. K. Strimmer, C. Wiuf, V. Moulton, Recombination analysis using directed graphical models,
Mol. Biol. Evol. 18 (1) (2001) 97–99.
41. L. Wang, K. Zhang, L. Zhang, Perfect phylogenetic networks with recombination, J. Comput.
Biol. 8 (1) (2001) 69–78.
42. M. S. Waterman, T. F. Smith, On the similarity of dendograms, J. Theor. Biol. 73 (1978)
789–800.
43. S. J. Willson, Restrictions on meaningful phylogenetic networks, accepted contributed talk at
the EMBO Workshop on Current Challenges and Problems in Phylogenetics (Isaac Newton
Institute for Mathematical Sciences, Cambridge, UK, 3–7 September 2007) (2007).
37
Download full-text