• Aucun résultat trouvé

Solving the Tree Containment Problem for Genetically Stable Networks in Quadratic Time

N/A
N/A
Protected

Academic year: 2022

Partager "Solving the Tree Containment Problem for Genetically Stable Networks in Quadratic Time"

Copied!
27
0
0

Texte intégral

(1)Solving the Tree Containment Problem for Genetically Stable Networks in Quadratic Time Philippe Gambette Andreas D. M. Gunawan Anthony Labarre Stéphane Vialette Louxin Zhang International Workshop on Combinatorial Algorithms. October 6th, 2015.

(2) Context and motivations I. Phylogenetic trees are routinely used to represent evolution, but they cannot display exchanges of genetic material between species;. I. When these happen, we rely on phylogenetic networks instead;. Example (tree). (from Wikimedia). I. Example (network). (from The Genealogical World of Phylogenetic Networks). We still need to verify that the network “contains” a prescribed set of trees to ensure consistency with previous biological knowledge;.

(3) Phylogenetic networks and related concepts A phylogenetic network is a rooted DAG with a labelled leaf set {`1 , `2 , . . . , `k }.. `1. `5. `2. `4 `3. We only consider binary networks and trees, i.e. all internal nodes have degree three..

(4) Phylogenetic networks and related concepts A phylogenetic network is a rooted DAG with a labelled leaf set {`1 , `2 , . . . , `k }.. I. `1. root: indegree 0;. `5. `2. `4 `3. We only consider binary networks and trees, i.e. all internal nodes have degree three..

(5) Phylogenetic networks and related concepts A phylogenetic network is a rooted DAG with a labelled leaf set {`1 , `2 , . . . , `k }.. `1. I. root: indegree 0;. I. tree nodes: indegree 1, outdegree 2;. `5. `2. `4 `3. We only consider binary networks and trees, i.e. all internal nodes have degree three..

(6) Phylogenetic networks and related concepts A phylogenetic network is a rooted DAG with a labelled leaf set {`1 , `2 , . . . , `k }.. `1. `5. `2. I. root: indegree 0;. I. tree nodes: indegree 1, outdegree 2;. I. reticulations: indegree 2, outdegree 1;. `4 `3. We only consider binary networks and trees, i.e. all internal nodes have degree three..

(7) Phylogenetic networks and related concepts A phylogenetic network is a rooted DAG with a labelled leaf set {`1 , `2 , . . . , `k }.. `1. `5. `2. I. root: indegree 0;. I. tree nodes: indegree 1, outdegree 2;. I. reticulations: indegree 2, outdegree 1;. I. leaves: outdegree 0;. `4 `3. We only consider binary networks and trees, i.e. all internal nodes have degree three..

(8) Tree subdivisions A subdivision of a tree T is a tree T 0 obtained by inserting any number of vertices into the edges of T .. Example (a tree and a subdivision). `1. `2. `3. T. `4. `5. `1. `2. `3. T0. `4. `5.

(9) The tree containment problem Network N displays tree T if we can obtain a subdivision of T by removing incoming edges from reticulations and “dummy leaves”.. `1 `1 `2. `5 `3. `4. `2. `3. `4. `5.

(10) The tree containment problem Network N displays tree T if we can obtain a subdivision of T by removing incoming edges from reticulations and “dummy leaves”.. `1. `1 `1 `2. `5 `3. `4. `2. `5 `3. `4. `2. `3. `4. `5.

(11) The tree containment problem Network N displays tree T if we can obtain a subdivision of T by removing incoming edges from reticulations and “dummy leaves”.. `1. `1 `1 `2. `5 `3. `4. `2. `5 `3. `4. `2. `3. `4. `5.

(12) The tree containment problem Network N displays tree T if we can obtain a subdivision of T by removing incoming edges from reticulations and “dummy leaves”.. remove edges. `1. contract paths. `1 `1 `2. `5 `3. `2. `4. `2. `3. `4. `5 `3. `4. Problem (tree containment) Input: Question:. a phylogenetic network N, a phylogenetic tree T . does N display T ?. `5.

(13) tree containment prior to this work. A → B class A contains class B solvable in polynomial time in P by class inclusion NP-complete. binary. nested spread-k spread-3 spread-2 spread-1 leaf outerplanar. level-k level-3 level-2. compressed. k-nested 3-nested. galled network. tree-sibling. reticulation-visible genetically stable. FU-stable 2-nested. nearly stable. tree-based. distinct-cluster. nearly tree-child. regular. tree-child. galled tree. normal. unicyclic. phylogenetic tree. time-consistent. (adapted from http://phylnet.univ-mlv.fr/isiphync by Philippe Gambette).

(14) Our contributions A → B class A contains class B solvable in polynomial time in P by class inclusion NP-complete. 1. genetically stable (GS) networks; 2. inclusion relations w.r.t. other classes; 3. tree containment in P for GS networks;. binary. nested spread-k spread-3 spread-2 spread-1 leaf outerplanar. level-k level-3 level-2. compressed. k-nested 3-nested. galled network. tree-sibling. reticulation-visible genetically stable. FU-stable 2-nested. nearly stable. tree-based. distinct-cluster. nearly tree-child. regular. tree-child. galled tree. normal. unicyclic. phylogenetic tree. time-consistent. (adapted from http://phylnet.univ-mlv.fr/isiphync by Philippe Gambette).

(15) Genetically stable networks A node v in a network N is stable on a leaf ` if every path from the root to ` contains v ..

(16) Genetically stable networks A node v in a network N is stable on a leaf ` if every path from the root to ` contains v . A network N is genetically stable if every reticulation has a stable parent (on any leaf)..

(17) Genetically stable networks A node v in a network N is stable on a leaf ` if every path from the root to ` contains v . A network N is genetically stable if every reticulation has a stable parent (on any leaf).. A GS network a. d. b. `3. c. `4. `2 `1. a, b, c stable on `2 d stable on `4.

(18) Genetically stable networks A node v in a network N is stable on a leaf ` if every path from the root to ` contains v . A network N is genetically stable if every reticulation has a stable parent (on any leaf).. A GS network. A non-GS network. a. d a. b. `3. c. `4. b. `1 `2. `2 `1. a, b, c stable on `2 d stable on `4. `5 `3. `4. `2 can be reached through either a or b no other leaf “needs” a or b.

(19) Overview of the algorithm The subtree induced by two sibling leaves `, `0 and their parent α in a tree is called a cherry, and is denoted by {α, `, `0 }. `1. `2. `3. `4. `5.

(20) Overview of the algorithm The subtree induced by two sibling leaves `, `0 and their parent α in a tree is called a cherry, and is denoted by {α, `, `0 }. `1. `2. `3. `4. `5. Algorithm for tree containment in GS networks 1. Select a cherry C = {α, `, `0 } in T ; 2. If there is no match for C in N, report no; 3. Otherwise, remove the match from N and C from T ; 4. If T is now a single node, report yes, otherwise go back to 1;. Matches and removals are such that N displays T if and only if N 0 displays T 0 ..

(21) Matching cherries: stability helps Stability narrows down choices for matching α, (α, `1 ) and (α, `2 ) in N: p α T :. P1. P2. `1. `2. N: `1. `2. Lemma (1) If N displays T through some subdivision T 0 , then α must be matched to a node p such that: 1. `1 and `2 are the only leaves on which p can be stable; 2. `1 is the only leaf on which vertices in P1 \ {p} can be stable; 3. `2 is the only leaf on which vertices in P2 \ {p} can be stable..

(22) Matching cherries: genetic stability helps Lemma (1) allows us to focus on specific paths, i.e. paths P from x to ` such that each vertex in P \ {x} is either stable only on ` or not stable at all. What if several choices exist? y x P2. Q1. P1. Q2. `1. `2. Lemma (2) If N is genetically stable and contains vertices x and y connected to leaves `1 and `2 through specific paths that only intersect at x (resp. y ), then either y ∈ P1 ∪ P2 or x ∈ Q1 ∪ Q2 ..

(23) Modifying N and T when N is genetically stable Lemma (2) allows us to restrict our search to the lowest common ancestor p of `1 and `2 such that paths p `1 and p `2 in N are specific. p P1. α T :. P2. N: `1. `2. `1. `2. Lemma (3) If p, P1 and P2 match α, (α, `1 ) and (α, `2 ) in a GS network N, then N displays T if and only if N \ P1 \ P2 displays T \ {`1 , `2 }..

(24) Finding a match for α, (α, `1 ) and (α, `2 ) in N 1. Move up from `1 until we find a lowest common ancestor of `1 and `2 connected to `2 by a path free of nodes stable on other leaves; α T :. N: `1. `2. w1 `1. `2. 2. Move up from `2 to w1 while remaining in a specific path to `2 ; w1 α T :. w2. N: `1. `2. `1. `2. 3. If we succeed, we obtain two specific paths to `1 and `2 in N;.

(25) Correctness and running time The previous lemmas prove the correctness of the algorithm.. Algorithm for tree containment in GS networks 1. Select a cherry C = {α, `, `0 } in T ; 2. If there is no match for C in N, report no; 3. Otherwise, remove the match from N and C from T ; 4. If T is now a single node, report yes, otherwise go back to 1;. The running time is dominated by checking stability, which implies a running time of O(|V | · (|E | + |V |)) = O(|L|2 ) where |L| is the number of leaves of N..

(26) Relevance of GS networks A fair amount of real-world networks could be genetically stable:.

(27) Future work binary nested spread-k spread-3 spread-2 spread-1 leaf outerplanar. level-k level-3 level-2. compressed. k-nested 3-nested. nearly stable. tree-based. tree-sibling. reticulation-visible genetically stable. FU-stable 2-nested galled network. distinct-cluster nearly tree-child regular. tree-child. galled tree. normal. unicyclic. phylogenetic tree. time-consistent. I. Major open problem: complexity for reticulation-visible networks;. I. Refine hardness results;. I. Improve the complexity for tractable cases;.

(28)

Références

Documents relatifs

Such strategies are: In general if two edges e 1 and e 2 generate the same increment on the number of models of A Σ e 1 is preferred over e 2 if e 1 could bring about a change of

In undirected graphs with a fixed number K of terminals and uniform capacity, CAP-STEINER-TREE is solvable in polynomial time, and ML-CAP-STEINER-TREE is polynomially equivalent

We consider in this paper four versions of Steiner: the general one where the input graph is only supposed connected and the edge distances are supposed arbitrary (this is the

Given an n-vertex and m-edge non-negatively real-weighted graph G = (V, E, w), whose vertices are partitioned into a set of k clusters, a clustered network design problem on G

In the next sections of this paper, we investigate different branch and bound components and show that specific combinations can build very ef- ficient methods that provide new

In this article, we prove uniqueness results for coefficient inverse problems regarding wave, heat or Schr¨ odinger equation on a tree-shaped network, as well as the

In what follows, we propose a simple reoptimization strategy, called REOPT , mainly based upon a minimum spanning tree computation adapted for the case studied (terminal, or

To conclude the paper, another way for estimating the approximation quality of an anticipatory solution S for probabilistic steiner tree (M), for any modification strategy M, is by