The Complexity of Finding Tangles Oksana Firman, Philipp Kindermann, - - PowerPoint PPT Presentation

the complexity of finding tangles
SMART_READER_LITE
LIVE PREVIEW

The Complexity of Finding Tangles Oksana Firman, Philipp Kindermann, - - PowerPoint PPT Presentation

The Complexity of Finding Tangles Oksana Firman, Philipp Kindermann, Alexander Wolff, Johannes Zink Julius-Maximilians-Universit at W urzburg, Germany Alexander Ravsky Stefan Felsner Pidstryhach Institute for Applied Problems TU Berlin,


slide-1
SLIDE 1

The Complexity of Finding Tangles

Oksana Firman, Philipp Kindermann, Alexander Wolff, Johannes Zink

Julius-Maximilians-Universit¨ at W¨ urzburg, Germany

Alexander Ravsky

Pidstryhach Institute for Applied Problems

  • f Mechanics and Mathematics,

National Academy of Sciences of Ukraine, Lviv, Ukraine

Stefan Felsner

TU Berlin, Germany

slide-2
SLIDE 2

Introduction

Given an ordered set

  • f n y-monotone wires
slide-3
SLIDE 3

Introduction

Given an ordered set

  • f n y-monotone wires

1 ≤ i < j ≤ n

swap ij i j

slide-4
SLIDE 4

Introduction

Given an ordered set

  • f n y-monotone wires

1 ≤ i < j ≤ n

swap ij disjoint swaps

slide-5
SLIDE 5

Introduction

Given an ordered set

  • f n y-monotone wires

1 ≤ i < j ≤ n

swap ij disjoint swaps adjacent permutations

slide-6
SLIDE 6

Introduction

Given an ordered set

  • f n y-monotone wires

1 ≤ i < j ≤ n

swap ij disjoint swaps multiple swaps adjacent permutations

slide-7
SLIDE 7

Introduction

Given an ordered set

  • f n y-monotone wires

1 ≤ i < j ≤ n

swap ij disjoint swaps multiple swaps tangle T of height h(T) π1 π2 π3 π6 adjacent permutations π4 π5

slide-8
SLIDE 8

Introduction

Given an ordered set

  • f n y-monotone wires

1 ≤ i < j ≤ n

1 2 · · · n swap ij disjoint swaps multiple swaps tangle T of height h(T) π1 π2 π3 π6 adjacent permutations π4 π5

slide-9
SLIDE 9

Introduction

Given an ordered set

  • f n y-monotone wires

. . . and given a list L

  • f swaps

1 ≤ i < j ≤ n

1 2 · · · n swap ij disjoint swaps multiple swaps tangle T of height h(T) π1 π2 π3 π6 adjacent permutations π4 π5

slide-10
SLIDE 10

Introduction

Given an ordered set

  • f n y-monotone wires

as a multiset (ℓij) . . . and given a list L

  • f swaps

1 ≤ i < j ≤ n

1 2 · · · n swap ij disjoint swaps multiple swaps tangle T of height h(T) π1 π2 π3 π6 1 3 1 2 1 adjacent permutations π4 π5 1

slide-11
SLIDE 11

Introduction

Given an ordered set

  • f n y-monotone wires

as a multiset (ℓij) . . . and given a list L

  • f swaps

1 ≤ i < j ≤ n

1 2 · · · n swap ij disjoint swaps multiple swaps tangle T of height h(T) π1 π2 π3 π6 1 3 1 2 1 Tangle T realizes list L. adjacent permutations π4 π5 1

slide-12
SLIDE 12

Introduction

Given an ordered set

  • f n y-monotone wires

as a multiset (ℓij) . . . and given a list L

  • f swaps

1 ≤ i < j ≤ n

1 2 · · · n swap ij disjoint swaps multiple swaps tangle T of height h(T) π1 π2 π3 π6 1 3 1 2 1 Tangle T realizes list L. adjacent permutations π4 π5 1

slide-13
SLIDE 13

Introduction

Given an ordered set

  • f n y-monotone wires

as a multiset (ℓij) . . . and given a list L

  • f swaps

1 ≤ i < j ≤ n

1 2 · · · n swap ij disjoint swaps multiple swaps tangle T of height h(T) π1 π2 π3 π6 1 3 1 2 1 Tangle T realizes list L. adjacent permutations not feasible π4 π5 1

slide-14
SLIDE 14

Introduction

Given an ordered set

  • f n y-monotone wires

as a multiset (ℓij) . . . and given a list L

  • f swaps

1 ≤ i < j ≤ n

1 2 · · · n swap ij disjoint swaps multiple swaps tangle T of height h(T) π1 π2 π3 π6 A list L of swaps is feasible if there exists a tangle that realizes L. There may be multiple tangles realizing the same list of swaps. 1 3 1 2 1 Tangle T realizes list L. adjacent permutations π4 π5 1

slide-15
SLIDE 15

Introduction

Given an ordered set

  • f n y-monotone wires

as a multiset (ℓij) . . . and given a list L

  • f swaps

1 ≤ i < j ≤ n

1 2 · · · n swap ij disjoint swaps multiple swaps tangle T of height h(T) π1 π2 π3 π6 A list L of swaps is feasible if there exists a tangle that realizes L. There may be multiple tangles realizing the same list of swaps. 1 3 1 2 1 Tangle T realizes list L. adjacent permutations π4 π5 1

slide-16
SLIDE 16

Related Work

  • Olszewski et al.: Visualizing the template of a chaotic attractor.

GD 2018

slide-17
SLIDE 17

Related Work

  • Olszewski et al.: Visualizing the template of a chaotic attractor.

GD 2018

  • list
slide-18
SLIDE 18

Related Work

  • Olszewski et al.: Visualizing the template of a chaotic attractor.

GD 2018

  • list

Exp.-time algorithm for finding optimal-height tangles

slide-19
SLIDE 19

Related Work

  • Olszewski et al.: Visualizing the template of a chaotic attractor.

GD 2018

  • list

Exp.-time algorithm for finding optimal-height tangles

Complexity ?

?

slide-20
SLIDE 20

Related Work

  • Olszewski et al.: Visualizing the template of a chaotic attractor.

GD 2018

  • list
  • Sado and Igarashi: A function for evaluating

the computing time of a bubbling system. TCS 1987 Given: initial and

final permutations Exp.-time algorithm for finding optimal-height tangles

Complexity ?

?

slide-21
SLIDE 21

Related Work

  • Olszewski et al.: Visualizing the template of a chaotic attractor.

GD 2018

  • list
  • Sado and Igarashi: A function for evaluating

the computing time of a bubbling system. TCS 1987 Given: initial and

final permutations

Objective: minimize

the number of bends

  • Bereg et al.: Drawing Permutations with Few Corners.

GD 2013

Exp.-time algorithm for finding optimal-height tangles

Complexity ?

?

slide-22
SLIDE 22

Related Work

  • Olszewski et al.: Visualizing the template of a chaotic attractor.

GD 2018

  • list
  • Sado and Igarashi: A function for evaluating

the computing time of a bubbling system. TCS 1987 Given: initial and

final permutations

Objective: minimize

the number of bends

  • Bereg et al.: Drawing Permutations with Few Corners.

GD 2013

Exp.-time algorithm for finding optimal-height tangles

Complexity ?

?

  • FKRWZ: Computing optimal-height tangles faster.

GD 2019

slide-23
SLIDE 23

Related Work

Faster exp.-time algorithm for finding optimal-height tangles

  • Olszewski et al.: Visualizing the template of a chaotic attractor.

GD 2018

  • list
  • Sado and Igarashi: A function for evaluating

the computing time of a bubbling system. TCS 1987 Given: initial and

final permutations

Objective: minimize

the number of bends

  • Bereg et al.: Drawing Permutations with Few Corners.

GD 2013

Exp.-time algorithm for finding optimal-height tangles

Complexity ?

?

  • FKRWZ: Computing optimal-height tangles faster.

GD 2019

slide-24
SLIDE 24

Related Work

Faster exp.-time algorithm for finding optimal-height tangles

  • Olszewski et al.: Visualizing the template of a chaotic attractor.

GD 2018

  • list
  • Sado and Igarashi: A function for evaluating

the computing time of a bubbling system. TCS 1987 Given: initial and

final permutations

Objective: minimize

the number of bends

  • Bereg et al.: Drawing Permutations with Few Corners.

GD 2013

Exp.-time algorithm for finding optimal-height tangles

Complexity ?

?

  • FKRWZ: Computing optimal-height tangles faster.

GD 2019

Finding optimal-height tangles is NP-hard

slide-25
SLIDE 25

Contribution

Deciding whether a given list of swaps is feasible is NP-hard.

Theorem.

slide-26
SLIDE 26

Contribution

Reduction from Positive Not-All-Equal 3-SAT Deciding whether a given list of swaps is feasible is NP-hard.

Theorem.

Proof.

slide-27
SLIDE 27

Contribution

Reduction from Positive Not-All-Equal 3-SAT Deciding whether a given list of swaps is feasible is NP-hard.

Theorem.

Proof.

slide-28
SLIDE 28

Contribution

Reduction from Positive Not-All-Equal 3-SAT Deciding whether a given list of swaps is feasible is NP-hard.

Theorem.

Proof. (F ∨ F ∨ F)

slide-29
SLIDE 29

Contribution

Reduction from Positive Not-All-Equal 3-SAT Deciding whether a given list of swaps is feasible is NP-hard.

Theorem.

Proof. (F ∨ F ∨ F)

slide-30
SLIDE 30

Contribution

Reduction from Positive Not-All-Equal 3-SAT Deciding whether a given list of swaps is feasible is NP-hard.

Theorem.

Proof. (T ∨ T ∨ T) (F ∨ F ∨ F)

slide-31
SLIDE 31

Contribution

Reduction from Positive Not-All-Equal 3-SAT Deciding whether a given list of swaps is feasible is NP-hard.

Theorem.

Proof. (T ∨ T ∨ T) (F ∨ F ∨ F)

slide-32
SLIDE 32

Contribution

Reduction from Positive Not-All-Equal 3-SAT Deciding whether a given list of swaps is feasible is NP-hard.

Theorem.

Proof. (T ∨ T ∨ T) (F ∨ F ∨ F) negative literals

slide-33
SLIDE 33

Contribution

Reduction from Positive Not-All-Equal 3-SAT Deciding whether a given list of swaps is feasible is NP-hard.

Theorem.

Proof.

slide-34
SLIDE 34

Idea

  • Two wires build 4 loops that we consider
slide-35
SLIDE 35

Idea

  • Two wires build 4 loops that we consider

λ λ′ λ′ λ

slide-36
SLIDE 36

Idea

  • Two wires build 4 loops that we consider

λ λ′ λ′ λ

slide-37
SLIDE 37

Idea

  • Two wires build 4 loops that we consider

λ λ′ λ′ λ

  • Two loops represent true,

the other two false

slide-38
SLIDE 38

Idea

  • Two wires build 4 loops that we consider

T T

λ λ′ λ′ λ

  • Two loops represent true,

the other two false

slide-39
SLIDE 39

Idea

  • Two wires build 4 loops that we consider

T T

λ λ′ λ′ λ

  • Two loops represent true,

the other two false

slide-40
SLIDE 40

Idea

  • Two wires build 4 loops that we consider

T T F F

λ λ′ λ′ λ

  • Two loops represent true,

the other two false

slide-41
SLIDE 41

Idea

  • Two wires build 4 loops that we consider

T T F F

λ λ′ λ′ λ

  • Two loops represent true,

the other two false

  • For each clause, there is a wire with

an arm in each of the 4 loops.

slide-42
SLIDE 42

Idea

  • Two wires build 4 loops that we consider

T T F F

λ λ′ λ′ λ

  • Two loops represent true,

the other two false

  • For each clause, there is a wire with

an arm in each of the 4 loops.

ci ci

slide-43
SLIDE 43

Idea

  • Two wires build 4 loops that we consider

T T F F

λ λ′ λ′ λ

  • Two loops represent true,

the other two false

  • For each clause, there is a wire with

an arm in each of the 4 loops.

ci ci

slide-44
SLIDE 44

Idea

  • Two wires build 4 loops that we consider

T T F F

λ λ′ λ′ λ

  • Two loops represent true,

the other two false

  • For each clause, there is a wire with

an arm in each of the 4 loops.

  • For each variable, there is a wire entering

either both true or both false loops.

slide-45
SLIDE 45

Idea

vj

  • Two wires build 4 loops that we consider

T T F F

λ λ′ λ′ λ

  • Two loops represent true,

the other two false

  • For each clause, there is a wire with

an arm in each of the 4 loops.

  • For each variable, there is a wire entering

either both true or both false loops.

vj

slide-46
SLIDE 46

Idea

vk vj

  • Two wires build 4 loops that we consider

T T F F

λ λ′ λ′ λ

  • Two loops represent true,

the other two false

  • For each clause, there is a wire with

an arm in each of the 4 loops.

  • For each variable, there is a wire entering

either both true or both false loops.

vj vk

slide-47
SLIDE 47

Idea

vℓ vk vj

  • Two wires build 4 loops that we consider

T T F F

λ λ′ λ′ λ

  • Two loops represent true,

the other two false

  • For each clause, there is a wire with

an arm in each of the 4 loops.

  • For each variable, there is a wire entering

either both true or both false loops.

vj vk vℓ

slide-48
SLIDE 48

Idea

vℓ vk vj

  • Two wires build 4 loops that we consider

T T F F

λ λ′ λ′ λ

  • Two loops represent true,

the other two false

  • For each clause, there is a wire with

an arm in each of the 4 loops.

  • For each variable, there is a wire entering

either both true or both false loops.

vj vk vℓ

  • Each clause wire meets precisely its

three corresponding variable wires – each one in a different loop.

slide-49
SLIDE 49

Idea

vℓ vk vj

  • Two wires build 4 loops that we consider

T T F F

λ λ′ λ′ λ

  • Two loops represent true,

the other two false

  • For each clause, there is a wire with

an arm in each of the 4 loops.

ci ci

  • For each variable, there is a wire entering

either both true or both false loops.

vj vk vℓ

  • Each clause wire meets precisely its

three corresponding variable wires – each one in a different loop.

slide-50
SLIDE 50

Idea

vℓ vk vj

  • Two wires build 4 loops that we consider

T T F F

λ λ′ λ′ λ

  • Two loops represent true,

the other two false

  • For each clause, there is a wire with

an arm in each of the 4 loops.

ci ci

  • For each variable, there is a wire entering

either both true or both false loops.

vj vk vℓ

  • Each clause wire meets precisely its

three corresponding variable wires – each one in a different loop.

slide-51
SLIDE 51

Idea

vℓ vk vj

  • Two wires build 4 loops that we consider

T T F F

λ λ′ λ′ λ

  • Two loops represent true,

the other two false

  • For each clause, there is a wire with

an arm in each of the 4 loops.

ci ci

  • For each variable, there is a wire entering

either both true or both false loops.

vj vk vℓ

  • Each clause wire meets precisely its

three corresponding variable wires – each one in a different loop.

slide-52
SLIDE 52

Idea

vℓ vk vj

  • Two wires build 4 loops that we consider

T T F F

λ λ′ λ′ λ

  • Two loops represent true,

the other two false

  • For each clause, there is a wire with

an arm in each of the 4 loops.

ci ci

  • For each variable, there is a wire entering

either both true or both false loops.

vj vk vℓ

  • Each clause wire meets precisely its

three corresponding variable wires – each one in a different loop.

slide-53
SLIDE 53

Idea

vℓ vk vj

  • Two wires build 4 loops that we consider

T T F F

λ λ′ λ′ λ

  • Two loops represent true,

the other two false

  • For each clause, there is a wire with

an arm in each of the 4 loops.

ci ci

  • For each variable, there is a wire entering

either both true or both false loops.

vj vk vℓ

  • Each clause wire meets precisely its

three corresponding variable wires – each one in a different loop.

  • Only 2 true loops and 2 false loops

⇒ clause wires meet all their variable wires iff Positive Not-All-Equal 3-SAT formula satisfiable

slide-54
SLIDE 54

Variable Gadget

T T F F

λ λ′ λ′ λ

λ, λ′ : central loop structure

slide-55
SLIDE 55

Variable Gadget

T T F F

λ λ′ λ′ λ vj vj

vj : variable wire of j-th variable λ, λ′ : central loop structure

slide-56
SLIDE 56

Variable Gadget

T T F F

λ λ′ λ′ λ vj α′

j

vj α′

j

vj : variable wire of j-th variable λ, λ′ : central loop structure

slide-57
SLIDE 57

Variable Gadget

T T F F

λ λ′ λ′ λ vj α′

j

αj αj vj α′

j

vj : variable wire of j-th variable λ, λ′ : central loop structure αj, α′

j : make vj appear only in

true or in false loops

slide-58
SLIDE 58

Variable Gadget

T T F F

λ λ′ λ′ λ vj α′

j

αj αj vj α′

j

vj : variable wire of j-th variable λ, λ′ : central loop structure αj, α′

j : make vj appear only in

true or in false loops

slide-59
SLIDE 59

Variable Gadget

T T F F

λ λ′ λ′ λ vj α′

j

T T F F

αj αj vj α′

j

λ λ′ vj α′

j

αj λ′ λ αj vj α′

j

slide-60
SLIDE 60

Clause Gadget

T T F F λ λ′ λ λ′

λ, λ′ : central loop structure

slide-61
SLIDE 61

Clause Gadget

T T F F λ λ′ λ λ′ ci ci

ci : clause wire of i-th clause λ, λ′ : central loop structure

slide-62
SLIDE 62

Clause Gadget

T T F F λ λ′ λ λ′ ci ci

ci : clause wire of i-th clause λ, λ′ : central loop structure

slide-63
SLIDE 63

Clause Gadget

T T F F λ λ′ λ λ′ vj vj ci ci

ci : clause wire of i-th clause vj : variable wire of j-th variable λ, λ′ : central loop structure

slide-64
SLIDE 64

Clause Gadget

T T F F λ λ′ λ λ′ vj vj ci ci

γj

i

ci : clause wire of i-th clause vj : variable wire of j-th variable λ, λ′ : central loop structure γj

i : protects the arm of ci

that intersects vj from

  • ther variable wires
slide-65
SLIDE 65

Clause Gadget

T T F F λ λ′ λ λ′ vj vj ci ci

γj

i

ci : clause wire of i-th clause vj : variable wire of j-th variable λ, λ′ : central loop structure γj

i : protects the arm of ci

that intersects vj from

  • ther variable wires

T T F F λ λ′ λ λ′

γj

i

slide-66
SLIDE 66

Open Problems

Problem 1 Can we decide the feasibility of a list L faster than finding an

  • ptimal-height tangle of L?
slide-67
SLIDE 67

Open Problems

Problem 1 For lists where all entries are 0 or 1, we can find a tangle that has height at most OPT+ 1 in polynomial time. Can we also always find a tangle of height OPT efficiently? Problem 2 Can we decide the feasibility of a list L faster than finding an

  • ptimal-height tangle of L?
slide-68
SLIDE 68

Open Problems

Problem 1 For lists where all entries are 0 or 1, we can find a tangle that has height at most OPT+ 1 in polynomial time. Can we also always find a tangle of height OPT efficiently? Problem 2 Can we decide the feasibility of a list L faster than finding an

  • ptimal-height tangle of L?

Problem 3 A list is non-separable if ∀i<k<j:

  • ℓik = ℓkj = 0 implies ℓij = 0
  • .

i k j

slide-69
SLIDE 69

Open Problems

Problem 1 For lists where all entries are 0 or 1, we can find a tangle that has height at most OPT+ 1 in polynomial time. Can we also always find a tangle of height OPT efficiently? Problem 2 Can we decide the feasibility of a list L faster than finding an

  • ptimal-height tangle of L?

Problem 3 A list is non-separable if ∀i<k<j:

  • ℓik = ℓkj = 0 implies ℓij = 0
  • .

i k j necessary

slide-70
SLIDE 70

Open Problems

Problem 1 For lists where all entries are 0 or 1, we can find a tangle that has height at most OPT+ 1 in polynomial time. Can we also always find a tangle of height OPT efficiently? Problem 2 Can we decide the feasibility of a list L faster than finding an

  • ptimal-height tangle of L?

Problem 3 For lists where all entries are even, is this sufficient? A list is non-separable if ∀i<k<j:

  • ℓik = ℓkj = 0 implies ℓij = 0
  • .

i k j necessary

slide-71
SLIDE 71

Open Problems

Problem 1 For lists where all entries are 0 or 1, we can find a tangle that has height at most OPT+ 1 in polynomial time. Can we also always find a tangle of height OPT efficiently? Problem 2 Can we decide the feasibility of a list L faster than finding an

  • ptimal-height tangle of L?

Problem 3 For lists where all entries are even, is this sufficient? A list is non-separable if ∀i<k<j:

  • ℓik = ℓkj = 0 implies ℓij = 0
  • .

i k j necessary

Thank you!