Everything you always wanted to know about the parameterized - - PowerPoint PPT Presentation

everything you always wanted to know about the
SMART_READER_LITE
LIVE PREVIEW

Everything you always wanted to know about the parameterized - - PowerPoint PPT Presentation

Everything you always wanted to know about the parameterized complexity of Subgraph Isomorphism (but were afraid to ask) D aniel Marx, Micha l Pilipczuk STACS14, Lyon, March 6 th , 2014 Marx, Pilipczuk Subgraph Isomorphism 1/22


slide-1
SLIDE 1

Everything you always wanted to know about the parameterized complexity of Subgraph Isomorphism

(but were afraid to ask)

D´ aniel Marx, Micha l Pilipczuk STACS’14, Lyon, March 6th, 2014

Marx, Pilipczuk Subgraph Isomorphism 1/22

slide-2
SLIDE 2

The problem

Subgraph Isomorphism Given H and G, decide if H is a subgraph of G.

Marx, Pilipczuk Subgraph Isomorphism 2/22

slide-3
SLIDE 3

The problem

Subgraph Isomorphism Given H and G, decide if H is a subgraph of G. NP-hard, as it generalizes Hamiltonian Path.

Marx, Pilipczuk Subgraph Isomorphism 2/22

slide-4
SLIDE 4

The problem

Subgraph Isomorphism Given H and G, decide if H is a subgraph of G. NP-hard, as it generalizes Hamiltonian Path. Natural question: What if H is ‘small’, or ‘simple’.

Marx, Pilipczuk Subgraph Isomorphism 2/22

slide-5
SLIDE 5

The problem

Subgraph Isomorphism Given H and G, decide if H is a subgraph of G. NP-hard, as it generalizes Hamiltonian Path. Natural question: What if H is ‘small’, or ‘simple’. Parameterized complexity

Marx, Pilipczuk Subgraph Isomorphism 2/22

slide-6
SLIDE 6

The problem

Subgraph Isomorphism Given H and G, decide if H is a subgraph of G. NP-hard, as it generalizes Hamiltonian Path. Natural question: What if H is ‘small’, or ‘simple’. Parameterized complexity

Let k := |V (H)|.

Marx, Pilipczuk Subgraph Isomorphism 2/22

slide-7
SLIDE 7

The problem

Subgraph Isomorphism Given H and G, decide if H is a subgraph of G. NP-hard, as it generalizes Hamiltonian Path. Natural question: What if H is ‘small’, or ‘simple’. Parameterized complexity

Let k := |V (H)|. Trivial nO(k) algorithm.

Marx, Pilipczuk Subgraph Isomorphism 2/22

slide-8
SLIDE 8

The problem

Subgraph Isomorphism Given H and G, decide if H is a subgraph of G. NP-hard, as it generalizes Hamiltonian Path. Natural question: What if H is ‘small’, or ‘simple’. Parameterized complexity

Let k := |V (H)|. Trivial nO(k) algorithm. Generalization of Clique ⇒ no f (k) · nO(1) algorithm (FPT), unless FPT=W[1].

Marx, Pilipczuk Subgraph Isomorphism 2/22

slide-9
SLIDE 9

Tree-like H

But if H is a path on k vertices, then there is a 1.66k · nO(1) algorithm [Bj¨

  • rklund].

Marx, Pilipczuk Subgraph Isomorphism 3/22

slide-10
SLIDE 10

Tree-like H

But if H is a path on k vertices, then there is a 1.66k · nO(1) algorithm [Bj¨

  • rklund].

Idea: measure the treewidth of H (denoted tw(H)).

Marx, Pilipczuk Subgraph Isomorphism 3/22

slide-11
SLIDE 11

Tree-like H

But if H is a path on k vertices, then there is a 1.66k · nO(1) algorithm [Bj¨

  • rklund].

Idea: measure the treewidth of H (denoted tw(H)). Theorem [Alon, Yuster, Zwick] Subgraph Isomorphism is solvable in time 2O(|V (H)|) · nO(tw(H)).

Marx, Pilipczuk Subgraph Isomorphism 3/22

slide-12
SLIDE 12

Tree-like H

But if H is a path on k vertices, then there is a 1.66k · nO(1) algorithm [Bj¨

  • rklund].

Idea: measure the treewidth of H (denoted tw(H)). Theorem [Alon, Yuster, Zwick] Subgraph Isomorphism is solvable in time 2O(|V (H)|) · nO(tw(H)). We need small |V (H)| and even smaller tw(H), but G can be arbitrarily complicated.

Marx, Pilipczuk Subgraph Isomorphism 3/22

slide-13
SLIDE 13

Tree-like H

But if H is a path on k vertices, then there is a 1.66k · nO(1) algorithm [Bj¨

  • rklund].

Idea: measure the treewidth of H (denoted tw(H)). Theorem [Alon, Yuster, Zwick] Subgraph Isomorphism is solvable in time 2O(|V (H)|) · nO(tw(H)). We need small |V (H)| and even smaller tw(H), but G can be arbitrarily complicated. Question: Could we get something better if we assume that tw(G) is small, instead of tw(H)?

Marx, Pilipczuk Subgraph Isomorphism 3/22

slide-14
SLIDE 14

Tree-like G

Theorem [FO model checking] Subgraph Isomorphism can be solved in time f (|V (H)|, tw(G)) · n for some computable function f .

Marx, Pilipczuk Subgraph Isomorphism 4/22

slide-15
SLIDE 15

Tree-like G

Theorem [FO model checking] Subgraph Isomorphism can be solved in time f (|V (H)|, tw(G)) · n for some computable function f . We need small tw(G), but |V (H)| must be also small.

Marx, Pilipczuk Subgraph Isomorphism 4/22

slide-16
SLIDE 16

Tree-like G

Theorem [FO model checking] Subgraph Isomorphism can be solved in time f (|V (H)|, tw(G)) · n for some computable function f . We need small tw(G), but |V (H)| must be also small. Theorem [Matouˇ sek, Thomas] Subgraph Isomorphism for connected H can be solved in time f (∆(H)) · nO(tw(G)) for some computable function f .

Marx, Pilipczuk Subgraph Isomorphism 4/22

slide-17
SLIDE 17

Tree-like G

Theorem [FO model checking] Subgraph Isomorphism can be solved in time f (|V (H)|, tw(G)) · n for some computable function f . We need small tw(G), but |V (H)| must be also small. Theorem [Matouˇ sek, Thomas] Subgraph Isomorphism for connected H can be solved in time f (∆(H)) · nO(tw(G)) for some computable function f . We can have unbounded size of V (H), but at the cost of:

Marx, Pilipczuk Subgraph Isomorphism 4/22

slide-18
SLIDE 18

Tree-like G

Theorem [FO model checking] Subgraph Isomorphism can be solved in time f (|V (H)|, tw(G)) · n for some computable function f . We need small tw(G), but |V (H)| must be also small. Theorem [Matouˇ sek, Thomas] Subgraph Isomorphism for connected H can be solved in time f (∆(H)) · nO(tw(G)) for some computable function f . We can have unbounded size of V (H), but at the cost of:

bounding ∆(H);

Marx, Pilipczuk Subgraph Isomorphism 4/22

slide-19
SLIDE 19

Tree-like G

Theorem [FO model checking] Subgraph Isomorphism can be solved in time f (|V (H)|, tw(G)) · n for some computable function f . We need small tw(G), but |V (H)| must be also small. Theorem [Matouˇ sek, Thomas] Subgraph Isomorphism for connected H can be solved in time f (∆(H)) · nO(tw(G)) for some computable function f . We can have unbounded size of V (H), but at the cost of:

bounding ∆(H); having tw(G) in the exponent;

Marx, Pilipczuk Subgraph Isomorphism 4/22

slide-20
SLIDE 20

Tree-like G

Theorem [FO model checking] Subgraph Isomorphism can be solved in time f (|V (H)|, tw(G)) · n for some computable function f . We need small tw(G), but |V (H)| must be also small. Theorem [Matouˇ sek, Thomas] Subgraph Isomorphism for connected H can be solved in time f (∆(H)) · nO(tw(G)) for some computable function f . We can have unbounded size of V (H), but at the cost of:

bounding ∆(H); having tw(G) in the exponent; assuming that H is connected.

Marx, Pilipczuk Subgraph Isomorphism 4/22

slide-21
SLIDE 21

Motivation

Question: How does treewidth influence the parameterized complexity of Subgraph Isomorphism?

Marx, Pilipczuk Subgraph Isomorphism 5/22

slide-22
SLIDE 22

Motivation

Question: How does treewidth influence the parameterized complexity of Subgraph Isomorphism? Answer: It depence...

Marx, Pilipczuk Subgraph Isomorphism 5/22

slide-23
SLIDE 23

Motivation

Question: How does treewidth influence the parameterized complexity of Subgraph Isomorphism? Answer: It depence...

whether it’s treewidth of H or of G;

Marx, Pilipczuk Subgraph Isomorphism 5/22

slide-24
SLIDE 24

Motivation

Question: How does treewidth influence the parameterized complexity of Subgraph Isomorphism? Answer: It depence...

whether it’s treewidth of H or of G; what other assumptions about other parameters we make.

Marx, Pilipczuk Subgraph Isomorphism 5/22

slide-25
SLIDE 25

Motivation

Question: How does treewidth influence the parameterized complexity of Subgraph Isomorphism? Answer: It depence...

whether it’s treewidth of H or of G; what other assumptions about other parameters we make.

What about other constraints? Like planarity, cliquewidth, excluded minors...

Marx, Pilipczuk Subgraph Isomorphism 5/22

slide-26
SLIDE 26

Motivation

Question: How does treewidth influence the parameterized complexity of Subgraph Isomorphism? Answer: It depence...

whether it’s treewidth of H or of G; what other assumptions about other parameters we make.

What about other constraints? Like planarity, cliquewidth, excluded minors... Our motivation:

Marx, Pilipczuk Subgraph Isomorphism 5/22

slide-27
SLIDE 27

Motivation

Question: How does treewidth influence the parameterized complexity of Subgraph Isomorphism? Answer: It depence...

whether it’s treewidth of H or of G; what other assumptions about other parameters we make.

What about other constraints? Like planarity, cliquewidth, excluded minors... Our motivation:

It’s a mess.

Marx, Pilipczuk Subgraph Isomorphism 5/22

slide-28
SLIDE 28

Motivation

Question: How does treewidth influence the parameterized complexity of Subgraph Isomorphism? Answer: It depence...

whether it’s treewidth of H or of G; what other assumptions about other parameters we make.

What about other constraints? Like planarity, cliquewidth, excluded minors... Our motivation:

It’s a mess. Let’s try to clean it.

Marx, Pilipczuk Subgraph Isomorphism 5/22

slide-29
SLIDE 29

Parameters

We consider the following 10 parameters for H and G:

1

Number of vertices |V (·)| (only H).

2

Number of connected components cc(·).

3

Maximum degree ∆(·).

4

Treewidth tw(·).

5

Pathwidth pw(·).

6

Feedback vertex set number fvs(·).

7

Cliquewidth cw(·).

8

Genus genus(·).

9

Hadwiger number (largest clique minor) hadw(·).

10 Topological Hadwiger number (largest topological clique minor)

hadwT(·).

Marx, Pilipczuk Subgraph Isomorphism 6/22

slide-30
SLIDE 30

Constraints

Known results indicate that there is a complexity shift change between tw(G) = 1 and tw(G) = 2.

Marx, Pilipczuk Subgraph Isomorphism 7/22

slide-31
SLIDE 31

Constraints

Known results indicate that there is a complexity shift change between tw(G) = 1 and tw(G) = 2. Also the case of planar graphs (genus = 0) be of interest.

Marx, Pilipczuk Subgraph Isomorphism 7/22

slide-32
SLIDE 32

Constraints

Known results indicate that there is a complexity shift change between tw(G) = 1 and tw(G) = 2. Also the case of planar graphs (genus = 0) be of interest. 5 possible additional restrictions on H or G:

1

Genus is 0 (i.e., planar).

2

Number of components is 1 (i.e., connected).

3

Treewidth is at most 1 (i.e., graph is a forest).

4

Maximum degree at most 2 (i.e., paths and cycles).

5

Maximum degree at most 3.

Marx, Pilipczuk Subgraph Isomorphism 7/22

slide-33
SLIDE 33

Goal

Goal Determine for every combination of these parameters and constraints, whether there is an algorithm with running time f1(p1, p2, . . . , pℓ) · nf2(pℓ+1,...,pt), working under given constraints c1, c2, . . . , cq.

Marx, Pilipczuk Subgraph Isomorphism 8/22

slide-34
SLIDE 34

Goal

Goal Determine for every combination of these parameters and constraints, whether there is an algorithm with running time f1(p1, p2, . . . , pℓ) · nf2(pℓ+1,...,pt), working under given constraints c1, c2, . . . , cq. Vectors (p1, . . . , pℓ), (pℓ+1, . . . , pt), (c1, . . . , cq), are called the description.

Marx, Pilipczuk Subgraph Isomorphism 8/22

slide-35
SLIDE 35

Implications

There are some easy implications between the results.

Marx, Pilipczuk Subgraph Isomorphism 9/22

slide-36
SLIDE 36

Implications

There are some easy implications between the results. An f (|V (H)|, cw(G)) · nO(1) algorithm implies an f (|V (H)|, tw(G)) · nO(1) algorithm:

Marx, Pilipczuk Subgraph Isomorphism 9/22

slide-37
SLIDE 37

Implications

There are some easy implications between the results. An f (|V (H)|, cw(G)) · nO(1) algorithm implies an f (|V (H)|, tw(G)) · nO(1) algorithm:

Replacing a parameter with a smaller one makes the description stronger.

Marx, Pilipczuk Subgraph Isomorphism 9/22

slide-38
SLIDE 38

Implications

There are some easy implications between the results. An f (|V (H)|, cw(G)) · nO(1) algorithm implies an f (|V (H)|, tw(G)) · nO(1) algorithm:

Replacing a parameter with a smaller one makes the description stronger.

If we assume that ∆(G) ≤ 3, then also ∆(H) ≤ 3:

Marx, Pilipczuk Subgraph Isomorphism 9/22

slide-39
SLIDE 39

Implications

There are some easy implications between the results. An f (|V (H)|, cw(G)) · nO(1) algorithm implies an f (|V (H)|, tw(G)) · nO(1) algorithm:

Replacing a parameter with a smaller one makes the description stronger.

If we assume that ∆(G) ≤ 3, then also ∆(H) ≤ 3:

Some parameters/constraints for G imply some parameters/constraints for H.

Marx, Pilipczuk Subgraph Isomorphism 9/22

slide-40
SLIDE 40

Implications

There are some easy implications between the results. An f (|V (H)|, cw(G)) · nO(1) algorithm implies an f (|V (H)|, tw(G)) · nO(1) algorithm:

Replacing a parameter with a smaller one makes the description stronger.

If we assume that ∆(G) ≤ 3, then also ∆(H) ≤ 3:

Some parameters/constraints for G imply some parameters/constraints for H.

Thus we obtain a partial order of descriptions.

Marx, Pilipczuk Subgraph Isomorphism 9/22

slide-41
SLIDE 41

Implications

There are some easy implications between the results. An f (|V (H)|, cw(G)) · nO(1) algorithm implies an f (|V (H)|, tw(G)) · nO(1) algorithm:

Replacing a parameter with a smaller one makes the description stronger.

If we assume that ∆(G) ≤ 3, then also ∆(H) ≤ 3:

Some parameters/constraints for G imply some parameters/constraints for H.

Thus we obtain a partial order of descriptions. There are > 319 descriptions, but maybe a smaller set of results explains all of them.

Marx, Pilipczuk Subgraph Isomorphism 9/22

slide-42
SLIDE 42

Main result

Main result For any combination of the 19 parameters in the multiplier and the exponent and for any combinations of the 5 additional restrictions, we either show an algorithm or prove that no such algorithm exists (under P=NP or FPT=W[1]).

Marx, Pilipczuk Subgraph Isomorphism 10/22

slide-43
SLIDE 43

Main result

Main result For any combination of the 19 parameters in the multiplier and the exponent and for any combinations of the 5 additional restrictions, we either show an algorithm or prove that no such algorithm exists (under P=NP or FPT=W[1]). All the cases are explained by 11 maximally-positive and 17 minimally-negative results.

Marx, Pilipczuk Subgraph Isomorphism 10/22

slide-44
SLIDE 44

Main result

Main result For any combination of the 19 parameters in the multiplier and the exponent and for any combinations of the 5 additional restrictions, we either show an algorithm or prove that no such algorithm exists (under P=NP or FPT=W[1]). All the cases are explained by 11 maximally-positive and 17 minimally-negative results. Out of these, 4 algorithmic results are new: they are contained in 2 new families of tractable cases of Subgraph Isomorphism.

Marx, Pilipczuk Subgraph Isomorphism 10/22

slide-45
SLIDE 45

Main result

Main result For any combination of the 19 parameters in the multiplier and the exponent and for any combinations of the 5 additional restrictions, we either show an algorithm or prove that no such algorithm exists (under P=NP or FPT=W[1]). All the cases are explained by 11 maximally-positive and 17 minimally-negative results. Out of these, 4 algorithmic results are new: they are contained in 2 new families of tractable cases of Subgraph Isomorphism. 11 negative results are new: a new methodology for proving intractability on planar and bounded-genus graphs.

Marx, Pilipczuk Subgraph Isomorphism 10/22

slide-46
SLIDE 46

Results

Short Description Thm H G |V (·)| cc ∆ fvs pw tw cw genus hadw hadwT cc ∆ fvs pw tw cw genus hadw hadwT Thm P.1 (page 17) M M FO model checking Thm P.2 (page 17) M M Color coding Thm P.3 (page 17) M E Matouˇ sek-Thomas Thm P.4 (page 18) M M E Paths&Cycles → Paths&Cycles Thm P.5 (page 18) E 2 Thm P.6 (page 19) E 2 M Thm P.7 (page 21) E 2 E Dynamic Programming Thm P.8⋆ (page 23) M 1 Thm P.9⋆ (page 28) M 2 M M Thm P.10⋆ (page 36) E M M E FVS and CSPs Thm P.11⋆ (page 46) E E M M E Thm N.1 (page 46) M 2 1 Thm N.2 (page 47) 1 1 E E Bin Packing Thm N.3 (page 47) 2 1 3 E 1 Planar cubic HamPath Thm N.4 (page 48) 1 2 1 3 Clique Thm N.5 (page 48) M 1 E HamPath in bounded cw Thm N.6 (page 48) 1 2 1 M Thm N.7⋆ (page 57) M E 1 1 3 M M Thm N.8⋆ (page 61) 1 E 1 M M M M E Thm N.9⋆ (page 61) 1 E 1 3 M M M Grid Tiling, 1-in-n gadgets Thm N.10⋆ (page 63) 1 3 E 1 M M M E M Thm N.11⋆ (page 64) 1 3 E 1 M M Grid Tiling, moustache gadgets Thm N.12⋆ (page 66) 1 E 1 3 M Small planar graph Thm N.13⋆ (page 67) M 1 3 Thm N.14⋆ (page 74) M 2 1 1 M M Thm N.15⋆ (page 77) M 2 1 1 3 M Thm N.16⋆ (page 79) M 2 1 1 M M E M Exact Planar Arc Supply Thm N.17⋆ (page 79) M 2 1 1 M M E M

Figure 1: Positive and negative results in the paper. Results marked with ⋆ are new findings that were not known before. 7

Marx, Pilipczuk Subgraph Isomorphism 11/22

slide-47
SLIDE 47

How did we do it?

How do you manage such a project?

Marx, Pilipczuk Subgraph Isomorphism 12/22

slide-48
SLIDE 48

How did we do it?

How do you manage such a project? First attempt: Keep track of resolved cases using Google spreadsheet, and check coverage of the descriptions by hand.

Marx, Pilipczuk Subgraph Isomorphism 12/22

slide-49
SLIDE 49

How did we do it?

How do you manage such a project? First attempt: Keep track of resolved cases using Google spreadsheet, and check coverage of the descriptions by hand.

Problem: MESS

Marx, Pilipczuk Subgraph Isomorphism 12/22

slide-50
SLIDE 50

How did we do it?

How do you manage such a project? First attempt: Keep track of resolved cases using Google spreadsheet, and check coverage of the descriptions by hand.

Problem: MESS Problem: Checking coverage of the descriptions is NP-hard.

Marx, Pilipczuk Subgraph Isomorphism 12/22

slide-51
SLIDE 51

How did we do it?

How do you manage such a project? First attempt: Keep track of resolved cases using Google spreadsheet, and check coverage of the descriptions by hand.

Problem: MESS Problem: Checking coverage of the descriptions is NP-hard.

Second attempt: Write a simple backtracking algorithm that, given known set of positive and negative results, either says that the whole partial order is covered or gives an uncovered case.

Marx, Pilipczuk Subgraph Isomorphism 12/22

slide-52
SLIDE 52

How did we do it?

How do you manage such a project? First attempt: Keep track of resolved cases using Google spreadsheet, and check coverage of the descriptions by hand.

Problem: MESS Problem: Checking coverage of the descriptions is NP-hard.

Second attempt: Write a simple backtracking algorithm that, given known set of positive and negative results, either says that the whole partial order is covered or gives an uncovered case.

Worked really well.

Marx, Pilipczuk Subgraph Isomorphism 12/22

slide-53
SLIDE 53

How did we do it?

How do you manage such a project? First attempt: Keep track of resolved cases using Google spreadsheet, and check coverage of the descriptions by hand.

Problem: MESS Problem: Checking coverage of the descriptions is NP-hard.

Second attempt: Write a simple backtracking algorithm that, given known set of positive and negative results, either says that the whole partial order is covered or gives an uncovered case.

Worked really well. The program guides the research to yet unresolved cases..

Marx, Pilipczuk Subgraph Isomorphism 12/22

slide-54
SLIDE 54

How did we do it?

How do you manage such a project? First attempt: Keep track of resolved cases using Google spreadsheet, and check coverage of the descriptions by hand.

Problem: MESS Problem: Checking coverage of the descriptions is NP-hard.

Second attempt: Write a simple backtracking algorithm that, given known set of positive and negative results, either says that the whole partial order is covered or gives an uncovered case.

Worked really well. The program guides the research to yet unresolved cases.. The input is a description of the partial order and of the current knowledge, so the program can be used for any similar study.

Marx, Pilipczuk Subgraph Isomorphism 12/22

slide-55
SLIDE 55

How did we do it?

How do you manage such a project? First attempt: Keep track of resolved cases using Google spreadsheet, and check coverage of the descriptions by hand.

Problem: MESS Problem: Checking coverage of the descriptions is NP-hard.

Second attempt: Write a simple backtracking algorithm that, given known set of positive and negative results, either says that the whole partial order is covered or gives an uncovered case.

Worked really well. The program guides the research to yet unresolved cases.. The input is a description of the partial order and of the current knowledge, so the program can be used for any similar study. Source code and input files available as ancillary files in the arxiv version.

Marx, Pilipczuk Subgraph Isomorphism 12/22

slide-56
SLIDE 56

Packing a tree into a tree

Let’s recall the poly-time algorithm when H and G are trees.

Marx, Pilipczuk Subgraph Isomorphism 13/22

slide-57
SLIDE 57

Packing a tree into a tree

Let’s recall the poly-time algorithm when H and G are trees. Take one vertex and guess its image; now we are at subgraph isomorphism of rooted trees.

Marx, Pilipczuk Subgraph Isomorphism 13/22

slide-58
SLIDE 58

Packing a tree into a tree

Let’s recall the poly-time algorithm when H and G are trees. Take one vertex and guess its image; now we are at subgraph isomorphism of rooted trees. Create dynamic programming table D[u][v], for u ∈ V (H) and v ∈ V (G), with the following meaning: D[u][v] = Is there a subgraph isomorphism η from Hu to Gv such that η(u) = v?

Marx, Pilipczuk Subgraph Isomorphism 13/22

slide-59
SLIDE 59

Packing a tree into a tree

To compute D[u][v], we need to match subtrees of Hu into subtrees of Gv.

Marx, Pilipczuk Subgraph Isomorphism 14/22

slide-60
SLIDE 60

Packing a tree into a tree

To compute D[u][v], we need to match subtrees of Hu into subtrees of Gv. This boils down to solving the maximum matching problem in an auxiliary bipartite graph.

Marx, Pilipczuk Subgraph Isomorphism 14/22

slide-61
SLIDE 61

Packing a tree into a tree

To compute D[u][v], we need to match subtrees of Hu into subtrees of Gv. This boils down to solving the maximum matching problem in an auxiliary bipartite graph. Result is D[rH][rG].

Marx, Pilipczuk Subgraph Isomorphism 14/22

slide-62
SLIDE 62

Packing a forest into a forest

What if we were packing a forest into a forest?

Marx, Pilipczuk Subgraph Isomorphism 15/22

slide-63
SLIDE 63

Packing a forest into a forest

What if we were packing a forest into a forest? Bin Packing: Subgraph Isomorphism is already NP-hard for forests of paths!

Marx, Pilipczuk Subgraph Isomorphism 15/22

slide-64
SLIDE 64

Packing a forest into a forest

What if we were packing a forest into a forest? Bin Packing: Subgraph Isomorphism is already NP-hard for forests of paths! We show an f (cc(H)) · nO(1) algorithm for packing a forest into a forest.

Marx, Pilipczuk Subgraph Isomorphism 15/22

slide-65
SLIDE 65

Packing a forest into a forest

What if we were packing a forest into a forest? Bin Packing: Subgraph Isomorphism is already NP-hard for forests of paths! We show an f (cc(H)) · nO(1) algorithm for packing a forest into a forest. A very natural case omitted by the previous study (Thm P.8).

Marx, Pilipczuk Subgraph Isomorphism 15/22

slide-66
SLIDE 66

Packing a forest into a forest

For simplicity, let us pack a forest into a tree. Let k = cc(H).

Marx, Pilipczuk Subgraph Isomorphism 16/22

slide-67
SLIDE 67

Packing a forest into a forest

For simplicity, let us pack a forest into a tree. Let k = cc(H). Idea: let’s make a similar DP, but now a state consists of:

Marx, Pilipczuk Subgraph Isomorphism 16/22

slide-68
SLIDE 68

Packing a forest into a forest

For simplicity, let us pack a forest into a tree. Let k = cc(H). Idea: let’s make a similar DP, but now a state consists of:

a subtree Gv of G, rooted at v;

Marx, Pilipczuk Subgraph Isomorphism 16/22

slide-69
SLIDE 69

Packing a forest into a forest

For simplicity, let us pack a forest into a tree. Let k = cc(H). Idea: let’s make a similar DP, but now a state consists of:

a subtree Gv of G, rooted at v; a subtree Hu of some connected component of H, rooted at u;

Marx, Pilipczuk Subgraph Isomorphism 16/22

slide-70
SLIDE 70

Packing a forest into a forest

For simplicity, let us pack a forest into a tree. Let k = cc(H). Idea: let’s make a similar DP, but now a state consists of:

a subtree Gv of G, rooted at v; a subtree Hu of some connected component of H, rooted at u; a subset S of the other components of H.

Marx, Pilipczuk Subgraph Isomorphism 16/22

slide-71
SLIDE 71

Packing a forest into a forest

For simplicity, let us pack a forest into a tree. Let k = cc(H). Idea: let’s make a similar DP, but now a state consists of:

a subtree Gv of G, rooted at v; a subtree Hu of some connected component of H, rooted at u; a subset S of the other components of H.

Meaning: D[u][v][S] is true iff the subgraph Hu ∪ S can be squeezed into Gv so that u is mapped to v.

Marx, Pilipczuk Subgraph Isomorphism 16/22

slide-72
SLIDE 72

Packing a forest into a forest

Computation of D[u][v][S] involves a variant of maximum matching with ≤ k colors.

Marx, Pilipczuk Subgraph Isomorphism 17/22

slide-73
SLIDE 73

Packing a forest into a forest

Computation of D[u][v][S] involves a variant of maximum matching with ≤ k colors. This variant is NP-hard, but can be solved in FPT time when parameterized by k using algebraic algorithms for matchings.

Marx, Pilipczuk Subgraph Isomorphism 17/22

slide-74
SLIDE 74

Packing a forest into a forest

Computation of D[u][v][S] involves a variant of maximum matching with ≤ k colors. This variant is NP-hard, but can be solved in FPT time when parameterized by k using algebraic algorithms for matchings. The algorithm uses Schwartz-Zippel lemma. Hence it is randomized, and we do not know how to derandomize it.

Marx, Pilipczuk Subgraph Isomorphism 17/22

slide-75
SLIDE 75

Feedback vertex set number and planarity

By Matouˇ sek and Thomas, Subgraph Isomorphism can be solved in time f (∆(H)) · nO(tw(G)) for connected H.

Marx, Pilipczuk Subgraph Isomorphism 18/22

slide-76
SLIDE 76

Feedback vertex set number and planarity

By Matouˇ sek and Thomas, Subgraph Isomorphism can be solved in time f (∆(H)) · nO(tw(G)) for connected H. How much more do we need to assume to remove tw(G) from the exponent?

Marx, Pilipczuk Subgraph Isomorphism 18/22

slide-77
SLIDE 77

Feedback vertex set number and planarity

By Matouˇ sek and Thomas, Subgraph Isomorphism can be solved in time f (∆(H)) · nO(tw(G)) for connected H. How much more do we need to assume to remove tw(G) from the exponent? Recall: X is a feedback vertex set if G \ X is a forest. fvs(G) is the minimum size of a fvs in G.

Marx, Pilipczuk Subgraph Isomorphism 18/22

slide-78
SLIDE 78

Main algorithmic result

Main algorithmic result, Thm P.10 Subgraph Isomorphism can be solved in time f (∆(G), fvs(G)) · ng(cc(H),genus(G)).

Marx, Pilipczuk Subgraph Isomorphism 19/22

slide-79
SLIDE 79

Main algorithmic result

Main algorithmic result, Thm P.10 Subgraph Isomorphism can be solved in time f (∆(G), fvs(G)) · ng(cc(H),genus(G)). We need to replace tw(G) with fvs(G), and assume that G has small degree and very small genus.

Marx, Pilipczuk Subgraph Isomorphism 19/22

slide-80
SLIDE 80

Main algorithmic result

Main algorithmic result, Thm P.10 Subgraph Isomorphism can be solved in time f (∆(G), fvs(G)) · ng(cc(H),genus(G)). We need to replace tw(G) with fvs(G), and assume that G has small degree and very small genus. Lower bounds: all these assumptions are necessary!

Marx, Pilipczuk Subgraph Isomorphism 19/22

slide-81
SLIDE 81

Glimpse into the proof

Focus on the case genus(G) = 0.

Marx, Pilipczuk Subgraph Isomorphism 20/22

slide-82
SLIDE 82

Glimpse into the proof

Focus on the case genus(G) = 0. Graphs of small degree and feedback vertex set number have a very special structure:

Marx, Pilipczuk Subgraph Isomorphism 20/22

slide-83
SLIDE 83

Glimpse into the proof

Focus on the case genus(G) = 0. Graphs of small degree and feedback vertex set number have a very special structure:

A simple skeleton with branches sticking out of it.

Marx, Pilipczuk Subgraph Isomorphism 20/22

slide-84
SLIDE 84

Glimpse into the proof

Focus on the case genus(G) = 0. Graphs of small degree and feedback vertex set number have a very special structure:

A simple skeleton with branches sticking out of it.

Guess how the skeleton of H is embedded into the skeleton of G.

Marx, Pilipczuk Subgraph Isomorphism 20/22

slide-85
SLIDE 85

Glimpse into the proof

Focus on the case genus(G) = 0. Graphs of small degree and feedback vertex set number have a very special structure:

A simple skeleton with branches sticking out of it.

Guess how the skeleton of H is embedded into the skeleton of G. Encode the rest as a CSP instance on an outerplanar graph that has treewidth 2.

Marx, Pilipczuk Subgraph Isomorphism 20/22

slide-86
SLIDE 86

Glimpse into the proof

Focus on the case genus(G) = 0. Graphs of small degree and feedback vertex set number have a very special structure:

A simple skeleton with branches sticking out of it.

Guess how the skeleton of H is embedded into the skeleton of G. Encode the rest as a CSP instance on an outerplanar graph that has treewidth 2. For a higher genus g, generalizations of outerplanar graphs have treewidth O(g).

Marx, Pilipczuk Subgraph Isomorphism 20/22

slide-87
SLIDE 87

Lower bounds

Marx, Pilipczuk Subgraph Isomorphism 21/22

slide-88
SLIDE 88

Lower bounds

Marx, Pilipczuk Subgraph Isomorphism 21/22

slide-89
SLIDE 89

Lower bounds

Marx, Pilipczuk Subgraph Isomorphism 21/22

slide-90
SLIDE 90

Lower bounds

Marx, Pilipczuk Subgraph Isomorphism 21/22

slide-91
SLIDE 91

Conclusions

The question you probably ask yourselves...

Marx, Pilipczuk Subgraph Isomorphism 22/22

slide-92
SLIDE 92

Conclusions

The question you probably ask yourselves... WHY?!

Marx, Pilipczuk Subgraph Isomorphism 22/22

slide-93
SLIDE 93

Conclusions

The question you probably ask yourselves... WHY?! A systematic study can be a managable project even though the number of cases seems hopeless in the beginning.

Marx, Pilipczuk Subgraph Isomorphism 22/22

slide-94
SLIDE 94

Conclusions

The question you probably ask yourselves... WHY?! A systematic study can be a managable project even though the number of cases seems hopeless in the beginning. It guides you to new positive cases that would not be discovered

  • therwise.

Marx, Pilipczuk Subgraph Isomorphism 22/22

slide-95
SLIDE 95

Conclusions

The question you probably ask yourselves... WHY?! A systematic study can be a managable project even though the number of cases seems hopeless in the beginning. It guides you to new positive cases that would not be discovered

  • therwise.

Subgraph Isomorphism has a particularly rich ecology of parameters, which makes it well-suited for such considerations.

Marx, Pilipczuk Subgraph Isomorphism 22/22

slide-96
SLIDE 96

Conclusions

The question you probably ask yourselves... WHY?! A systematic study can be a managable project even though the number of cases seems hopeless in the beginning. It guides you to new positive cases that would not be discovered

  • therwise.

Subgraph Isomorphism has a particularly rich ecology of parameters, which makes it well-suited for such considerations. Thanks for attention!

Marx, Pilipczuk Subgraph Isomorphism 22/22