• Aucun résultat trouvé

Algorithms and bioinformatics Comparative genomics Anthony Labarre September 12, 2016

N/A
N/A
Protected

Academic year: 2022

Partager "Algorithms and bioinformatics Comparative genomics Anthony Labarre September 12, 2016"

Copied!
79
0
0

Texte intégral

(1)Algorithms and bioinformatics Comparative genomics. Anthony Labarre. September 12, 2016.

(2) Introduction Permutations. Context and motivations Comparing genomes. Context and motivations. I. Deoxyribonucleic acid: double helix of nucleotides (A, C, G, T);. I. Complementarity (A-T, C-G): one strip is enough;. I. Gene = sequence of nucleotides (that codes for a specific protein);. I. Chromosome = ordered set of genes;. I. Genome = set of chromosomes;. I. Goal: compare genomes;. 2.

(3) Introduction Permutations. Context and motivations Comparing genomes. Context and motivations. I. Biologists are interested in comparing species, for example: I I. in order to classify them; in order to explain evolution by reconstructing scenarios;. I. (Dis)similarity measures are needed;. I. Usually based on the sequenced genomes;.

(4) Introduction Permutations. Context and motivations Comparing genomes. At the nucleotide level I. Most comparisons take place at the nucleotide level;. Example (sequence alignment) S1 : · · · T | S2 : · · · T. C | C. C G. G | G. C. C | A C. A − − C | T G G C. I. Matches, substitutions, insertions and deletions;. I. Correspond to mutations;. A ··· | − A ···. T. 4.

(5) Introduction Permutations. Context and motivations Comparing genomes. At the “gene” level I. Some mutations act on segments of nucleotides;. I. Those large-scale mutations are called genome rearrangements;. I. Sequence alignment becomes unfit;.

(6) Introduction Permutations. Context and motivations Comparing genomes. At the “gene” level I. Some mutations act on segments of nucleotides;. I. Those large-scale mutations are called genome rearrangements;. I. Sequence alignment becomes unfit;. Example (genomes as sequences of segments) (A). (B).

(7) Introduction Permutations. Context and motivations Comparing genomes. At the “gene” level I. Some mutations act on segments of nucleotides;. I. Those large-scale mutations are called genome rearrangements;. I. Sequence alignment becomes unfit;. Example (genomes as sequences of segments) (A). genome rearrangements. (B).

(8) Introduction Permutations. Context and motivations Comparing genomes. Genome rearrangements I. Our problem:. Problem (pairwise genome rearrangement) Input: genomes G1 , G2 , a set S of mutations; Goal: find a shortest sequence of elements of S that transforms G1 into G2 . I. Related, simpler problem: compute the evolutionary distance dS (G1 , G2 ) (i.e. just the length of a shortest sequence);. I. Many variants, depending on how genomes are modelled, what (and how) mutations are taken into account, etc.;. 8.

(9) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. Modelling genomes as permutations I. Genomes are seen as permutations if: 1. they form ordered sequences of genes (or other segments), and 2. they only differ by order (no duplications or deletions).. 9.

(10) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. Modelling genomes as permutations I. Genomes are seen as permutations if: 1. they form ordered sequences of genes (or other segments), and 2. they only differ by order (no duplications or deletions).. Example (genomes → permutations) (A). (B).

(11) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. Modelling genomes as permutations I. Genomes are seen as permutations if: 1. they form ordered sequences of genes (or other segments), and 2. they only differ by order (no duplications or deletions).. Example (genomes → permutations) (A). 1. 2. 3. 4. 5. 6. 7. (B).

(12) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. Modelling genomes as permutations I. Genomes are seen as permutations if: 1. they form ordered sequences of genes (or other segments), and 2. they only differ by order (no duplications or deletions).. Example (genomes → permutations) 5. 1. 2. 4. 7. 3. 6. (A). 1. 2. 3. 4. 5. 6. 7. (B).

(13) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. Modelling genomes as permutations I. Genomes are seen as permutations if: 1. they form ordered sequences of genes (or other segments), and 2. they only differ by order (no duplications or deletions).. Example (genomes → permutations) 5. 1. 2. 4. 7. 3. 6. (A). 7. (B). genome rearrangements. 1. 2. 3. 4. 5. 6.

(14) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. Genome rearrangements for permutations I. Segments can be numbered as we wish, so we assume either genome is the identity permutation ι = h1 2 · · · ni and we wish to sort the other genome:. Problem (genome rearrangement (permutations)) Input: a permutation π in Sn , a set S ⊆ Sn of (per)mutations; Goal: find a shortest sorting sequence of elements of S for π. I. Again, we can also focus on merely computing dS (π) – the length of an optimal sorting sequence;. I. S must generate Sn for any pair of permutations to be a finite distance apart; 14.

(15) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. Notation and definitions pertaining to permutations I. Permutations can be written in one- or two-row notation:   1 2 3 4 5 6 π= = h4 1 6 2 5 3i. 4 1 6 2 5 3. 15.

(16) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. Notation and definitions pertaining to permutations I. Permutations can be written in one- or two-row notation:   1 2 3 4 5 6 π= = h4 1 6 2 5 3i. 4 1 6 2 5 3. I. We deal exclusively with [n] = {1, 2, . . . , n};. 16.

(17) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. Notation and definitions pertaining to permutations I. Permutations can be written in one- or two-row notation:   1 2 3 4 5 6 π= = h4 1 6 2 5 3i. 4 1 6 2 5 3. I. We deal exclusively with [n] = {1, 2, . . . , n};. I. All permutations of [n] with composition form the symmetric group Sn ;. 17.

(18) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. Notation and definitions pertaining to permutations I. Permutations can be written in one- or two-row notation:   1 2 3 4 5 6 π= = h4 1 6 2 5 3i. 4 1 6 2 5 3. I. We deal exclusively with [n] = {1, 2, . . . , n};. I. All permutations of [n] with composition form the symmetric group Sn ;. I. Composition: the usual ◦, which means that in π ◦ σ, σ is applied first;. 18.

(19) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. Sorting permutations by adjacent exchanges I. Simple operation : exchange any two adjacent elements:. Example. I. 4. 1. 6. 2. 5. 3. 1. 4. 6. 2. 5. 3. So we want to sort a permutation by performing as few such exchanges as possible;. 19.

(20) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. Sorting permutations by adjacent exchanges I. Simple operation : exchange any two adjacent elements:. Example. I. I. 4. 1. 6. 2. 5. 3. 1. 4. 6. 2. 5. 3. So we want to sort a permutation by performing as few such exchanges as possible; Solution: I. sorting: use Bubble Sort;. 20.

(21) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. Sorting permutations by adjacent exchanges I. Simple operation : exchange any two adjacent elements:. Example. I. I. 4. 1. 6. 2. 5. 3. 1. 4. 6. 2. 5. 3. So we want to sort a permutation by performing as few such exchanges as possible; Solution: I I. sorting: use Bubble Sort; distance: the number of swaps used by Bubble Sort; 21.

(22) The model Exchanges Larger-scale transformations The directed breakpoint graph. Introduction Permutations. A closed formula for the adjacent exchange distance I. An inversion in a permutation is a pair of misplaced elements: (πi , πj ) with i < j and πi > πj ;. I. The permutation graph of π has [n] as vertex set and the inversions of π as edges;. Example (the permutation graph of h4 1 6 2 5 3i) 4 1. 6 2. 5 3.

(23) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. A closed formula for the adjacent exchange distance. Theorem The adjacent exchange distance of π is |Inv (π)| = |E (PG (π))|.. Proof sketch. Each adjacent swap “fixes” at most one inversion, which is equivalent to removing an edge from PG , and we can always find such a move at every step if π 6= ι.. 23.

(24) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. Sorting permutations by exchanges I. Simple operation : exchange any two elements:. Example. I. 4. 1. 6. 2. 5. 3. 2. 1. 6. 4. 5. 3. So we want to sort a permutation by performing as few such exchanges as possible;.

(25) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. Sorting permutations by exchanges I. Here’s a more complete example:. Example (a sorting sequence for h4 1 6 2 5 3i) 4. 1. 6. 2. 5. 3. 25.

(26) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. Sorting permutations by exchanges I. Here’s a more complete example:. Example (a sorting sequence for h4 1 6 2 5 3i) 4. 1. 6. 2. 5. 3. 1. 4. 6. 2. 5. 3. 26.

(27) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. Sorting permutations by exchanges I. Here’s a more complete example:. Example (a sorting sequence for h4 1 6 2 5 3i) 4. 1. 6. 2. 5. 3. 1. 4. 6. 2. 5. 3. 1. 2. 6. 4. 5. 3. 27.

(28) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. Sorting permutations by exchanges I. Here’s a more complete example:. Example (a sorting sequence for h4 1 6 2 5 3i) 4. 1. 6. 2. 5. 3. 1. 4. 6. 2. 5. 3. 1. 2. 6. 4. 5. 3. 1. 2. 3. 4. 5. 6. 28.

(29) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. Sorting permutations by exchanges I. Here’s a more complete example:. Example (a sorting sequence for h4 1 6 2 5 3i). I. 4. 1. 6. 2. 5. 3. 1. 4. 6. 2. 5. 3. 1. 2. 6. 4. 5. 3. 1. 2. 3. 4. 5. 6. It works... but can we do better? 29.

(30) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. Sorting permutations by exchanges. I. Our goal: each element should be “at the right place”;. I. Some elements are already where they should be, so they won’t move; Strategy: read permutation from left to right, and:. I. I I. if πi = i, pass; otherwise, exchange πi with i;. 30.

(31) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. Sorting permutations by exchanges. I. The algorithm obviously terminates;. I. At every step, we “fix” one or two positions;. I. We use the minimum number of exchanges;. I. On the other hand, we’d like to be able to compute the distance without sorting;.

(32) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. Cycles I. Computing the distance requires using the cycles of the permutation;. I. Those cycles are obtained by iterating the permutation’s action on {1, 2, . . . , n}, stopping when all elements have been visited;. Example (cycles of h4 1 6 2 5 3i) 1. 2. 3. 4. 5. 6. 4. 1. 6. 2. 5. 3.

(33) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. Cycles I. Computing the distance requires using the cycles of the permutation;. I. Those cycles are obtained by iterating the permutation’s action on {1, 2, . . . , n}, stopping when all elements have been visited;. Example (cycles of h4 1 6 2 5 3i) 1. 4. 2. 3. 5. 6. 6. 5. 3.

(34) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. Cycles I. Computing the distance requires using the cycles of the permutation;. I. Those cycles are obtained by iterating the permutation’s action on {1, 2, . . . , n}, stopping when all elements have been visited;. Example (cycles of h4 1 6 2 5 3i) 1. 4. 2. 3. 5. 6. 5.

(35) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. Cycles I. Computing the distance requires using the cycles of the permutation;. I. Those cycles are obtained by iterating the permutation’s action on {1, 2, . . . , n}, stopping when all elements have been visited;. Example (cycles of h4 1 6 2 5 3i) 1. 4. 2. 3. 6. 5.

(36) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. Disjoint cycle decomposition of permutations I. Each permutation decomposes into disjoint cycles:   1 2 3 4 5 6 π= = (1, 4, 2)(3, 6)(5). 4 1 6 2 5 3. 36.

(37) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. Disjoint cycle decomposition of permutations I. Each permutation decomposes into disjoint cycles:   1 2 3 4 5 6 π= = (1, 4, 2)(3, 6)(5). 4 1 6 2 5 3. I. The graph of the permutation π, denoted by Γ(π), pictures this decomposition:. 4. 1. 6. 2. 5. 3. 37.

(38) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. Disjoint cycle decomposition of permutations I. Each permutation decomposes into disjoint cycles:   1 2 3 4 5 6 π= = (1, 4, 2)(3, 6)(5). 4 1 6 2 5 3. I. The graph of the permutation π, denoted by Γ(π), pictures this decomposition:. 4 I. 1. 6. 2. 5. 3. The number of cycles of π is written c(π);. 38.

(39) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. Disjoint cycle decomposition of permutations I. Each permutation decomposes into disjoint cycles:   1 2 3 4 5 6 π= = (1, 4, 2)(3, 6)(5). 4 1 6 2 5 3. I. The graph of the permutation π, denoted by Γ(π), pictures this decomposition:. 4. 1. 6. 2. I. The number of cycles of π is written c(π);. I. 1-cycles are sometimes omitted;. 5. 3. 39.

(40) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. Cycles and sorting I. Cycles of length 1 correspond to sorted elements; all other cycles consist of elements that are misplaced;. 4. 1. 6. 2. 5. 3. 1. 2. 3. 4. 5. 6. I. Sorting comes down to splitting cycles until we only have cycles of length 1;. I. Our algorithm repeatedly splits k-cycles into a 1-cycle and a (k − 1)-cycle;. 40.

(41) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. Computing the “exchange distance” exc(·) I. At each step, we can always create a new cycle if π 6= ι, so: exc(π) ≤ n − c(π). 41.

(42) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. Computing the “exchange distance” exc(·) I. At each step, we can always create a new cycle if π 6= ι, so: exc(π) ≤ n − c(π). I. And we can’t do better, so: exc(π) ≥ n − c(π). 42.

(43) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. Computing the “exchange distance” exc(·) I. At each step, we can always create a new cycle if π 6= ι, so: exc(π) ≤ n − c(π). I. And we can’t do better, so: exc(π) ≥ n − c(π). I. Therefore:. 43.

(44) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. Computing the “exchange distance” exc(·) I. At each step, we can always create a new cycle if π 6= ι, so: exc(π) ≤ n − c(π). I. And we can’t do better, so: exc(π) ≥ n − c(π). I. Therefore:. Theorem ([Cayley, 1849]) The exchange distance of π in Sn is n − c(π).. 44.

(45) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. Lessons from sorting by exchanges. I I. Note that ι is the only permutation with n cycles; The formula exc(π) = n − c(π) expresses: I. I. I. the difference between the number of cycles we have and the number of cycles we want; and the fact that at each step, we can obtain exactly one new cycle.. This point of view will be crucial to sorting problems;. 45.

(46) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. Block-interchanges and transpositions I I. The mutations we observe in evolution (may) act on intervals; We’ll now look at two generalisations of exchanges: 1. block-interchanges; 2. transpositions;.

(47) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. Block-interchanges and transpositions I I. The mutations we observe in evolution (may) act on intervals; We’ll now look at two generalisations of exchanges: 1. block-interchanges; 2. transpositions;. I. Block-interchanges exchange two disjoint intervals in a permutation; 1 2 34 5 6 7 8 9. 1 67 5 234 8 9.

(48) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. Block-interchanges and transpositions I I. The mutations we observe in evolution (may) act on intervals; We’ll now look at two generalisations of exchanges: 1. block-interchanges; 2. transpositions;. I. Block-interchanges exchange two disjoint intervals in a permutation; 1 2 34 5 6 7 8 9. I. 1 67 5 234 8 9. Transpositions displace an interval of the permutation; 1 2 34 5 6 7 8 9 10. 1 5 67 8 2 3 4 9 10. 48.

(49) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. Computing the associated distances I. Does the disjoint cycle technique “work”?. 49.

(50) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. Computing the associated distances I. Does the disjoint cycle technique “work”?. I. Unlikely: the following permutation has n/2 cycles of length two, but bid(π) = td(π) = 1:. n 2. +1. n 2. +2. n 2. +3. ···. n. 1. 2. 3. ···. n 2. 50.

(51) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. Computing the associated distances I. Does the disjoint cycle technique “work”?. I. Unlikely: the following permutation has n/2 cycles of length two, but bid(π) = td(π) = 1:. n 2. I. +1. n 2. +2. n 2. +3. ···. n. 1. 2. 3. ···. n 2. We’ll need something else since we cannot bound the effect of an operation in that setting;. 51.

(52) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. The “directed breakpoint graph” I. (the term “breakpoint” will be explained later);. I. Let’s build the directed breakpoint graph of π = h4 1 6 2 5 7 3i:.

(53) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. The “directed breakpoint graph” I. (the term “breakpoint” will be explained later);. I. Let’s build the directed breakpoint graph of π = h4 1 6 2 5 7 3i: 0 3. 1. build the ordered vertex set (π0 = 0, π1 , π2 , . . . , πn );. 4. 7. 1 5. 6 2.

(54) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. The “directed breakpoint graph” I. (the term “breakpoint” will be explained later);. I. Let’s build the directed breakpoint graph of π = h4 1 6 2 5 7 3i: 0 3. 1. build the ordered vertex set (π0 = 0, π1 , π2 , . . . , πn );. 4. 7. 1 5. 6 2. 2. add black arcs for every ordered pair (πi , πi−1 (mod n+1) );.

(55) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. The “directed breakpoint graph” I. (the term “breakpoint” will be explained later);. I. Let’s build the directed breakpoint graph of π = h4 1 6 2 5 7 3i: 0 3. 1. build the ordered vertex set (π0 = 0, π1 , π2 , . . . , πn );. 4. 7. 1 5. 6 2. 2. add black arcs for every ordered pair (πi , πi−1 (mod n+1) ); 3. add grey arcs for every ordered pair (i, i + 1 (mod n + 1));.

(56) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. The “directed breakpoint graph” I. (the term “breakpoint” will be explained later);. I. Let’s build the directed breakpoint graph of π = h4 1 6 2 5 7 3i: 0 3. 1. build the ordered vertex set (π0 = 0, π1 , π2 , . . . , πn );. 4. 7. 1 5. 6. 2. add black arcs for every ordered pair (πi , πi−1 (mod n+1) ); 3. add grey arcs for every ordered pair (i, i + 1 (mod n + 1));. 2 DBG (π) decomposes in a unique way into alternating cycles.

(57) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. Formal definition of the directed breakpoint graph. Definition ([Bafna and Pevzner, 1998]) The directed breakpoint graph of hπ1 π2 · · · πn i is defined by: 1. an ordered vertex set V = (π0 = 0, π1 , π2 , . . . , πn ); 2. a bicoloured arc set A = AB ∪ AG , where: 2.1 AB = {(πi , πi−1 (mod n+1) ) : 0 ≤ i ≤ n}; 2.2 AG = {(i, i + 1 (mod n + 1)) : 0 ≤ i ≤ n};.

(58) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. Circular vs. linear layout I. One can also represent the directed breakpoint graph using a linear layout without affecting the cycle structure: π7 3 π6 7 π55. π0 0. π1 4 1 π2 6π 3. 0 4 1 6 2 5 7 3 8 π0 π1 π2 π3 π4 π5 π6 π7 π8. 2 π4 I Circular → linear: split 0 into 0 and n + 1; I. Linear → circular: merge 0 and n + 1 into 0;. I. (in both cases: adapt arcs accordingly); 58.

(59) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. Intuitions behind DBG (π) – 1 I. Both “monochromatic” cycles represent an ordering: 1. the black one represents the one we have (“reality”); 2. the grey one represents the one we want to obtain (“desire”);. 0. 0 3. 4. 7. 3 1. 5. 6 2. 4. 7. 1 5. 6 2. 59.

(60) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. Intuitions behind DBG (π) – 2 I. The alternating cycles are a blend of “reality” and “desire”, and we must act on those cycles to turn “reality” into “desire”;. I. When we are done, we have the largest number of cycles; π7 3. π0 0. π6 7 π55. π1 4 1 π2. 2 π4. 6π 3. ι7. ι0 0 7. ι1 1. ι6 6 ι5 5. 2 ι2. 4 ι4. 3ι 3. 60.

(61) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. Proving lower bounds. I. One way of proving lower bounds on distances: be optimistic: 1. find out the “best case”; 2. pretend we’re always in that case;. I. Techniques based on breakpoint graphs follow the same spirit as those based on the disjoint cycle decomposition, but less freedom is allowed (details later);. I. Usually: case analysis to determine by how much a parameter of the graph can change with one operation;.

(62) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. Lower bounding the block-interchange distance A block-interchange β(i, j, k, `) increases the number of cycles in DBG by at most 2:. πi−1. πi. πj−1. πj. πk−1. πk. π`−1. π`. πi−1. πk. π`−1. πj. πk−1. πi. πj−1. π`. Theorem ([Christie, 1996]) For all π in Sn : bid(π) ≥. n+1−c(DBG (π)) . 2. 62.

(63) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. Lower bounding the transposition distance A transposition τ (i, j, k) increases the number of odd cycles in DBG by at most 2: πi−1. πi. πj−1. πj. πk−1. πk. πi−1. πi. πj−1. πj. πk−1. πk. πi−1. πi. πj−1. πj. πk−1. πk. πi−1. πi. πj−1. πj. πk−1. πk.

(64) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. Lower bounding the transposition distance A transposition τ (i, j, k) increases the number of odd cycles in DBG by at most 2: πi−1. πi. πj−1. πj. πk−1. πk. πi−1. πj. πk−1. πi. πj−1. πk. πi−1. πi. πj−1. πj. πk−1. πk. πi−1. πj. πk−1. πi. πj−1. πk. πi−1. πi. πj−1. πj. πk−1. πk. πi−1. πj. πk−1. πi. πj−1. πk. πi−1. πi. πj−1. πj. πk−1. πk. πi−1. πj. πk−1. πi. πj−1. πk.

(65) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. Lower bounding the transposition distance A transposition τ (i, j, k) increases the number of odd cycles in DBG by at most 2: πi−1. πi. πj−1. πj. πk−1. πk. πi−1. πj. πk−1. πi. πj−1. πk. πi−1. πi. πj−1. πj. πk−1. πk. πi−1. πj. πk−1. πi. πj−1. πk. πi−1. πi. πj−1. πj. πk−1. πk. πi−1. πj. πk−1. πi. πj−1. πk. πi−1. πi. πj−1. πj. πk−1. πk. πi−1. πj. πk−1. πi. πj−1. πk. Theorem ([Bafna and Pevzner, 1998]) For all π in Sn : td(π) ≥. n+1−codd (DBG (π)) . 2.

(66) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. A more general lower bounding technique [Labarre, 2013] I. Recall the “monochromatic” decomposition of DBG (π): 0 3. 0 4. 7. 3 1. 5. 6 2. 4. 7. 1 5. 6 2. 66.

(67) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. A more general lower bounding technique [Labarre, 2013] I. Recall the “monochromatic” decomposition of DBG (π): 0 3. 0 4. 7. 3 1. 5. 6. 4. 7. 1 5. 6. 2. 2. π̂ = (0, 1, 2, 3, 4, 5, 6, 7). π̇ = (0, 3, 7, 5, 2, 6, 1, 4). 67.

(68) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. A more general lower bounding technique [Labarre, 2013] I. Recall the “monochromatic” decomposition of DBG (π): 0 3. 0 4. 7. 1 5. π=. 3. 4. 7. 6. 1 5. 6. 2. 2. π̂ = (0, 1, 2, 3, 4, 5, 6, 7). π̇ = (0, 3, 7, 5, 2, 6, 1, 4). ◦. 68.

(69) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. A more general lower bounding technique [Labarre, 2013] I. Recall the “monochromatic” decomposition of DBG (π): 0 3. 0 4. 7. 1 5. 6 2. π= =. 3. 4. 7. 1 5. 6 2. π̂ π̇ = = (0, 1, 2, 3, 4, 5, 6, 7) ◦ (0, 3, 7, 5, 2, 6, 1, 4) (0, 4, 1, 5, 3)(2, 7, 6). 69.

(70) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. A more general lower bounding technique [Labarre, 2013] I. We have π = π̂ ◦ π̇, with dcd(π) ' G (π); indeed: 0 3. 4. 7. 1 5. 6 2. π= =. π̂ π̇ = = (0, 1, 2, 3, 4, 5, 6, 7) ◦ (0, 3, 7, 5, 2, 6, 1, 4) (0, 4, 1, 5, 3)(2, 7, 6). 70.

(71) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. Rearrangements in the setting of π. I. Bottom line: DBG (π) is a permutation π;. I. We can translate the effect of any rearrangement σ on π:. Lemma ([Labarre, 2013]) For all π, σ ∈ Sn : π ◦ σ = π ◦ σ π .. Proof sketch. Use the definition of π and simplify to the wanted expression..

(72) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. Conjugating permutations. Definition Let π, σ ∈ Sn ; the conjugate of π by σ is the permutation π σ = σπσ −1 . An easy (well, less tedious) way of computing π σ :    1 2 ··· n σ1 σ2 σ π= −→ π = π1 π2 · · · πn σπ1 σπ2. · · · σn · · · σπn. . 72.

(73) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. A lower bounding theorem I. This in turns yields:. Theorem ([Labarre, 2013]) Let: 1. S ⊂ Sn , with S = {s1 , s2 , . . .}, 2. S 0 = {s1 , s2 , . . .}, 3. C the set of conjugacy classes that intersect S 0 . Then for all π in Sn , every factorisation of π into t elements of S yields a factorisation of π into t elements of C. I. And as an immediate corollary: dS (π) ≥ dC (π) 73.

(74) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. An algorithm for obtaining lower bounds. I. To derive a lower bound on dS (π), we: 1. compute S 0 = {s1 , s2 , . . .}; 2. identify the set C of conjugacy classes that cover S 0 ; 3. use any lower bound on dC (π) as a lower bound on dS (π);. 74.

(75) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. Application: lower bounding the block-interchange distance. I. As an example, consider the block-interchange distance:. 75.

(76) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. Application: lower bounding the block-interchange distance. I. As an example, consider the block-interchange distance: 1. if β(i, j, k, `) is a block-interchange, then β(i, j, k, `) is a 3-cycle or two disjoint 2-cycles;. 76.

(77) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. Application: lower bounding the block-interchange distance. I. As an example, consider the block-interchange distance: 1. if β(i, j, k, `) is a block-interchange, then β(i, j, k, `) is a 3-cycle or two disjoint 2-cycles; 2. so C is the set of all pairs of 2-cycles;. 77.

(78) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. Application: lower bounding the block-interchange distance. I. As an example, consider the block-interchange distance: 1. if β(i, j, k, `) is a block-interchange, then β(i, j, k, `) is a 3-cycle or two disjoint 2-cycles; 2. so C is the set of all pairs of 2-cycles; 3. since dC (π) = (n + 1 − c(π))/2 (Cayley’s theorem), we recover dS (π) ≥ dC (π) = (n + 1 − c(π))/2 =. n + 1 − c(DBG (π)) 2. 78.

(79) Introduction Permutations. The model Exchanges Larger-scale transformations The directed breakpoint graph. References I. Bafna, V. and Pevzner, P. A. (1998). Sorting by transpositions. SIAM Journal on Discrete Mathematics, 11(2):224–240. Cayley, A. (1849). Note on the theory of permutations. Philosophical Magazine Series 3, 34(232):527–529. Christie, D. A. (1996). Sorting permutations by block-interchanges. Information Processing Letters, 60(4):165–169. Labarre, A. (2013). Lower bounding edit distances between permutations. SIAM Journal on Discrete Mathematics, 27(3):1410–1428.. 79.

(80)

Références

Documents relatifs

Introduction Permutations Signed permutations Strings Other models Alternative approaches Beyond pairwise comparisons.. Context

Introduction Permutations Signed permutations Strings Other models Alternative approaches Beyond pairwise comparisons.. Context

The model Exchanges Larger-scale transformations The directed breakpoint graph.. Modelling genomes as

I As before, we’re interested in sorting a given signed permutation using as few signed reversals as possible (or merely computing the length of a shortest sequence);... Solving

I [Hannenhalli and Pevzner, 1999] came up with the first polynomial-time algorithm for this problem:. Convert it back to an optimal sorting sequence

Problem ( minimum common string partition (mcsp)) Instance: balanced strings S and T , a bound k ∈ N ;.. Question: is there a common partition of S and T with at most

I So if we have a minimum common string partition for S and T , we get the number of breakpoints between strings S and T ;... Minimum common string

Our contributions are as follows: we prove tight upper and lower bounds on the so-called prefix block-interchange distance; we give an approximation algorithm which we prove to be