The Breakpoint Graph 1 5- 2- 4 3. The Breakpoint Graph Augment with 0 = n+1 6 1 5- 2- 4 3 0.

Post on 18-Dec-2015

226 views 1 download

Tags:

Transcript of The Breakpoint Graph 1 5- 2- 4 3. The Breakpoint Graph Augment with 0 = n+1 6 1 5- 2- 4 3 0.

The Breakpoint Graph

1 5 -2 -4 3

The Breakpoint Graph

• Augment with 0 = n+1

6 1 5 -2 -4 3 0

The Breakpoint Graph

• Augment with 0 = n+1• Vertices 2i, 2i-1 for each i

6 1 5 -2 -4 3 0

11 2 1 9 10 3 4 8 7 6 5 0

The Breakpoint Graph

• Augment with 0 = n+1• Vertices 2i, 2i-1 for each i • Blue edges between adjacent vertices

6 1 5 -2 -4 3 0

11 2 1 9 10 3 4 8 7 6 5 0

12,2 1 ii

The Breakpoint Graph

• Augment with 0 = n+1• Vertices 2i, 2i-1 for each i • Blue edges between adjacent vertices• Red edges between consecutive labels 2i,2i+1

6 1 5 -2 -4 3 0

11 2 1 9 10 3 4 8 7 6 5 0

12,2 1 ii

11 2 1 9 10 3 4 8 7 6 5 0

11 10 9 8 7 6 5 4 3 2 1 0

into n+1 trivial cycles

Sort a given breakpoint graph

11 2 1 9 10 3 4 8 7 6 5 0

Sort a given breakpoint graph

Conclusion: We want to increase number of cycles

11 10 9 8 7 6 5 4 3 2 1 0

into n+1 trivial cycles

Def:A reversal acts on two blue edges

cutting them and re-connecting them

11 2 1 9 10 3 4 88 77 6 5 0

11 2 1 9 10 3 4 77 88 6 5 0

A reversal can either

Act on two cycles, joining them (bad!!)

11 2 1 9 10 3 4 88 77 6 5 0

11 2 1 9 10 3 4 77 88 6 5 0

A reversal can either

Act on one cycle, changing it (profitless)

11 2 1 9 10 3 4 88 77 6 5 0

11 2 1 5 66 7 8 4 3 10 9 0

A reversal can either

Act on one cycle, splitting it (good move)

11 2 1 9 10 3 4 88 77 6 5 0

11 10 9 1 2 3 4 88 77 6 5 0

Basic Theorem

)(1)( cnd

Where d=#reversals needed (reversal distance),

and c=#cycles.

Proof: Every reversal changes c by at most 1.

(Bafna, Pevzner 93)

)(1)( cnd

Where d=#reversals needed (reversal distance),

and c=#cycles.

Proof: Every reversal changes c by at most 1.

Alternative formulation:

where b=#breakpoints, and c ignores short cycles

)()()( cbd

Basic Theorem(Bafna, Pevzner 93)

Right-to-Right

Left-to-Left

Left-to-Right

Right-to-Left

Red edges can be :

Oriented{

Unoriented{

Oriented Edges

Right-to-Right

Left-to-Left

Left-to-Right

Right-to-Left

Red edges can be :

Oriented{

Unoriented{Def:This reversal acts on the red edge

Oriented Edges

Right-to-Right

Left-to-Left

Left-to-Right

Right-to-Left

Red edges can be :

Oriented{

Unoriented{Def:This reversal acts on the red edge

Oriented Edges

Thm: A reversal acting on a red edge is good the edge is oriented

Def: Two red edges are said to be overlapping if they span intersecting intervals which do not contain one another.

Overlapping Edges

Overlapping Edges

Def: Two red edges are said to be overlapping if they span intersecting intervals which do not contain one another The lines intersect

Thm: A reversal acting on a red edge flips the orientation of all edges overlapping it, leaving other orientations unchanged

Overlapping Edges

Def: Two red edges are said to be overlapping if they span intersecting intervals which do not contain one another The lines intersect

Thm: if e,f,g overlap each other, then after applying a reversal that acts on e, f and g do not overlap

Overlapping Edges

Def: Two red edges are said to be overlapping if they span intersecting intervals which do not contain one another The lines intersect

Overlap Graph

Nodes correspond to red edges.Two nodes are connected by an arc if they overlap

Overlap Graph

Def:Unoriented connected components in the overlap graph - all nodes correspond to oriented edges.

Nodes correspond to red edges.Two nodes are connected by an arc if they overlap

Overlap Graph

Def:Unoriented connected components in the overlap graph - all nodes correspond to oriented edges.

Cannot be solved in only good moves

Nodes correspond to red edges.Two nodes are connected by an arc if they overlap

Dealing with Unoriented Components

• A profitless move on an oriented edge, making its component to oriented

Dealing with Unoriented Components

• A profitless move on an oriented edge, making its component to oriented

or:

• A bad move (reversal) joining cycles from different unoriented components, thus merging them flipping the orientation of many components on the way

Merging Unoriented Components

Merging Unoriented Components

Merging Unoriented Components

Merging Unoriented Components

Hurdles

• Def:Hurdle - an unoriented connected component which is consecutive along the cycle

Hurdles

d b c h( ) ( ) ( ) ( )

• Def:Hurdle - an unoriented connected component which is consecutive along the cycle

• Thm: (Hannenhalli, Pevzner 95)

Proof: A hurdle is destroyed by a profitless move, or

at most two are destroyed (merged) by a bad move.

Hurdles

• Def:Hurdle - an unoriented connected component which is consecutive along the cycle

• Thm: (Hannenhalli, Pevzner 95)

Proof: A hurdle is destroyed by a profitless move, or

at most two are destroyed (merged) by a bad move.

• Thm:

d b c h( ) ( ) ( ) ( )

d b c h f f( ) ( ) ( ) ( ) ( ), ( ) { , } 0 1