Counting and Finding Homomorphisms is Universal for Parameterized - - PowerPoint PPT Presentation

counting and finding homomorphisms is universal for
SMART_READER_LITE
LIVE PREVIEW

Counting and Finding Homomorphisms is Universal for Parameterized - - PowerPoint PPT Presentation

Counting and Finding Homomorphisms is Universal for Parameterized Complexity Theory Marc Roth (Merton College, Oxford University, United Kingdom) , Philip Wellnitz (MPII, SIC, Saarbrcken, Germany) SODA 2020 Basic Definitions and General


slide-1
SLIDE 1

Counting and Finding Homomorphisms is Universal for Parameterized Complexity Theory

Marc Roth (Merton College, Oxford University, United Kingdom), Philip Wellnitz (MPII, SIC, Saarbrücken, Germany)

SODA 2020

slide-2
SLIDE 2

Basic Definitions and General Overview Main Result Open Problems

Finding Graph Homomorphisms Graph Homomorphism

Mapping from graph H to G that preserves edges; Write Hom(H → G) for the set of all graph hom’s from H to G. Φ = bipartite H

|V(H)| = 4

G

Marc Roth and Philip Wellnitz Counting Homomorphisms is Universal for Parameterized Complexity Theory

slide-3
SLIDE 3

Basic Definitions and General Overview Main Result Open Problems

Finding Graph Homomorphisms Graph Homomorphism

Mapping from graph H to G that preserves edges; Write Hom(H → G) for the set of all graph hom’s from H to G. Φ = bipartite H

|V(H)| = 4

G

Marc Roth and Philip Wellnitz Counting Homomorphisms is Universal for Parameterized Complexity Theory

slide-4
SLIDE 4

Basic Definitions and General Overview Main Result Open Problems

Finding Graph Homomorphisms Graph Homomorphism

Mapping from graph H to G that preserves edges; Write Hom(H → G) for the set of all graph hom’s from H to G. Φ = bipartite H

|V(H)| = 4

G

Marc Roth and Philip Wellnitz Counting Homomorphisms is Universal for Parameterized Complexity Theory

slide-5
SLIDE 5

Basic Definitions and General Overview Main Result Open Problems

Finding Graph Homomorphisms Graph Homomorphism

Mapping from graph H to G that preserves edges; Write Hom(H → G) for the set of all graph hom’s from H to G. Φ = bipartite H

|V(H)| = 4

G #Hom(H → G) = 14

Marc Roth and Philip Wellnitz Counting Homomorphisms is Universal for Parameterized Complexity Theory

slide-6
SLIDE 6

Basic Definitions and General Overview Main Result Open Problems

Finding Graph Homomorphisms Graph Homomorphism

Mapping from graph H to G that preserves edges; Write Hom(H → G) for the set of all graph hom’s from H to G. Φ = bipartite H

|V(H)| = 4

G

Marc Roth and Philip Wellnitz Counting Homomorphisms is Universal for Parameterized Complexity Theory

slide-7
SLIDE 7

Basic Definitions and General Overview Main Result Open Problems

Finding Graph Homomorphisms Graph Homomorphism

Mapping from graph H to G that preserves edges; Write Hom(H → G) for the set of all graph hom’s from H to G. Φ = bipartite H

|V(H)| = 4

G No homomorphisms from H to G.

Marc Roth and Philip Wellnitz Counting Homomorphisms is Universal for Parameterized Complexity Theory

slide-8
SLIDE 8

Basic Definitions and General Overview Main Result Open Problems

Finding Graph Homomorphisms HOM(H → G)

Given graphs H ∈ H and G ∈ G, check if there is a graph hom from H to G.

Marc Roth and Philip Wellnitz Counting Homomorphisms is Universal for Parameterized Complexity Theory

slide-9
SLIDE 9

Basic Definitions and General Overview Main Result Open Problems

Finding Graph Homomorphisms HOM(H → G)

Given graphs H ∈ H and G ∈ G, check if there is a graph hom from H to G.

H G,

Graph classes

Marc Roth and Philip Wellnitz Counting Homomorphisms is Universal for Parameterized Complexity Theory

slide-10
SLIDE 10

Basic Definitions and General Overview Main Result Open Problems

Finding Graph Homomorphisms HOM(H → G)

Given graphs H ∈ H and G ∈ G, check if there is a graph hom from H to G.

· · · · · ·

All Graphs (⊤)

· · · · · ·

All Bipartite Graphs

· · · · · ·

All Cliques

H G,

Graph classes

Marc Roth and Philip Wellnitz Counting Homomorphisms is Universal for Parameterized Complexity Theory

slide-11
SLIDE 11

Basic Definitions and General Overview Main Result Open Problems

Finding Graph Homomorphisms HOM(H → G)

Given graphs H ∈ H and G ∈ G, check if there is a graph hom from H to G.

· · · · · ·

All Graphs (⊤)

· · · · · ·

All Bipartite Graphs

· · · · · ·

All Cliques

H G,

Graph classes

set of graphs

Marc Roth and Philip Wellnitz Counting Homomorphisms is Universal for Parameterized Complexity Theory

slide-12
SLIDE 12

Basic Definitions and General Overview Main Result Open Problems

Known Results HOM(H → G)

Given graphs H ∈ H and G ∈ G, check if there is a graph hom from H to G.

Marc Roth and Philip Wellnitz Counting Homomorphisms is Universal for Parameterized Complexity Theory

slide-13
SLIDE 13

Basic Definitions and General Overview Main Result Open Problems

Known Results HOM(H → G)

Given graphs H ∈ H and G ∈ G, check if there is a graph hom from H to G.

HOM(⊤ → {K3}) 3-COLORABLE 3-COLORABLE HOM(⊤ → ⊤)

NP-complete

Marc Roth and Philip Wellnitz Counting Homomorphisms is Universal for Parameterized Complexity Theory

slide-14
SLIDE 14

Basic Definitions and General Overview Main Result Open Problems

Known Results HOM(H → G)

Given graphs H ∈ H and G ∈ G, check if there is a graph hom from H to G.

HOM(⊤ → {K3}) 3-COLORABLE HOM(⊤ → ⊤) 3-COLORABLE

NP-complete

Marc Roth and Philip Wellnitz Counting Homomorphisms is Universal for Parameterized Complexity Theory

slide-15
SLIDE 15

Basic Definitions and General Overview Main Result Open Problems

Known Results HOM(H → G)

Given graphs H ∈ H and G ∈ G, check if there is a graph hom from H to G.

HOM(⊤ → {K3}) HOM(⊤ → { }) 3-COLORABLE

NP-complete

Marc Roth and Philip Wellnitz Counting Homomorphisms is Universal for Parameterized Complexity Theory

slide-16
SLIDE 16

Basic Definitions and General Overview Main Result Open Problems

Known Results HOM(H → G)

Given graphs H ∈ H and G ∈ G, check if there is a graph hom from H to G.

Are there fast algorithms for special cases of HOM(⊤ → ⊤)?

Marc Roth and Philip Wellnitz Counting Homomorphisms is Universal for Parameterized Complexity Theory

slide-17
SLIDE 17

Basic Definitions and General Overview Main Result Open Problems

Known Results HOM(H → G)

Given graphs H ∈ H and G ∈ G, check if there is a graph hom from H to G.

What makes HOM(⊤ → ⊤) hard?

Marc Roth and Philip Wellnitz Counting Homomorphisms is Universal for Parameterized Complexity Theory

slide-18
SLIDE 18

Basic Definitions and General Overview Main Result Open Problems

Known Results HOM(H → G)

Given graphs H ∈ H and G ∈ G, check if there is a graph hom from H to G.

poly-time solvable NP-complete HOM(⊤ → G) G contains only G contains a bipartite graphs non-bipartite graph

[Hell, Nešetˇ ril ’90] [Hell, Nešetˇ ril ’90]

Marc Roth and Philip Wellnitz Counting Homomorphisms is Universal for Parameterized Complexity Theory

slide-19
SLIDE 19

Basic Definitions and General Overview Main Result Open Problems

Known Results #HOM(H → G)

Given graphs H ∈ H and G ∈ G, count all graph homomorphisms from H to G.

poly-time solvable #P-complete #HOM(⊤ → G) (explicit criterion exists) (explicit criterion exists)

[Dyer, Greenhill ’00] [Dyer, Greenhill ’00]

Marc Roth and Philip Wellnitz Counting Homomorphisms is Universal for Parameterized Complexity Theory

slide-20
SLIDE 20

Basic Definitions and General Overview Main Result Open Problems

Known Results HOM(H → G)

Given graphs H ∈ H and G ∈ G, check if there is a graph hom from H to G.

What about the other side, HOM(H → ⊤)?

Marc Roth and Philip Wellnitz Counting Homomorphisms is Universal for Parameterized Complexity Theory

slide-21
SLIDE 21

Basic Definitions and General Overview Main Result Open Problems

Known Results HOM(H → G)

Parameter: |V(H)| Given graphs H ∈ H and G ∈ G, check if there is a graph hom from H to G.

What about the other side, HOM(H → ⊤)?

Marc Roth and Philip Wellnitz Counting Homomorphisms is Universal for Parameterized Complexity Theory

slide-22
SLIDE 22

Basic Definitions and General Overview Main Result Open Problems

Known Results HOM(H → G)

Parameter: |V(H)| Given graphs H ∈ H and G ∈ G, check if there is a graph hom from H to G.

FPT W[1]-hard

(f(|V(H)|) · poly(|V(G)|) time) (not faster than K-CLIQUE)

HOM(H → ⊤) “H contains only graphs “H contains graphs with with small treewidth” arbitrary large tw”

[Grohe ’03] [Grohe ’03]

Marc Roth and Philip Wellnitz Counting Homomorphisms is Universal for Parameterized Complexity Theory

slide-23
SLIDE 23

Basic Definitions and General Overview Main Result Open Problems

Known Results #HOM(H → G)

Parameter: |V(H)| Given graphs H ∈ H and G ∈ G, count all graph homomorphisms from H to G.

FPT #W[1]-hard

(f(|V(H)|) · poly(|V(G)|) time) (not faster than #K-CLIQUE)

#HOM(H → ⊤) “H contains only graphs “H contains a graph with small treewidth” with large treewidth”

[Dalmau, Jonsson ’04] [Dalmau, Jonsson ’04]

Marc Roth and Philip Wellnitz Counting Homomorphisms is Universal for Parameterized Complexity Theory

slide-24
SLIDE 24

Basic Definitions and General Overview Main Result Open Problems

Known Results #HOM(H → G)

Parameter: |V(H)| Given graphs H ∈ H and G ∈ G, count all graph homomorphisms from H to G.

Complexity dichotomies when restricting either G or H.

Marc Roth and Philip Wellnitz Counting Homomorphisms is Universal for Parameterized Complexity Theory

slide-25
SLIDE 25

Basic Definitions and General Overview Main Result Open Problems

Known Results #HOM(H → G)

Parameter: |V(H)| Given graphs H ∈ H and G ∈ G, count all graph homomorphisms from H to G.

Complexity dichotomies when restricting either G or H. What if we restrict both sides?

Marc Roth and Philip Wellnitz Counting Homomorphisms is Universal for Parameterized Complexity Theory

slide-26
SLIDE 26

Basic Definitions and General Overview Main Result Open Problems

Known Results #HOM(H → G)

Parameter: |V(H)| Given graphs H ∈ H and G ∈ G, count all graph homomorphisms from H to G.

Complexity dichotomies when restricting either G or H. What if we restrict both sides? This talk.

Marc Roth and Philip Wellnitz Counting Homomorphisms is Universal for Parameterized Complexity Theory

slide-27
SLIDE 27

Basic Definitions and General Overview Main Result Open Problems

Main Result #HOM(H → G)

Parameter: |V(H)| Given graphs H ∈ H and G ∈ G, count all graph homomorphisms from H to G.

Theorem

For any problem P in #W[1] (or W[1]), there are graph classes HP and GP such that P is equivalent to #HOM(HP → GP) (or HOM(HP → GP)).

Marc Roth and Philip Wellnitz Counting Homomorphisms is Universal for Parameterized Complexity Theory

slide-28
SLIDE 28

Basic Definitions and General Overview Main Result Open Problems

Main Result #HOM(H → G)

Parameter: |V(H)| Given graphs H ∈ H and G ∈ G, count all graph homomorphisms from H to G.

Theorem

For any problem P in #W[1] (or W[1]), there are graph classes HP and GP such that P is equivalent to #HOM(HP → GP) (or HOM(HP → GP)). Cannot hope for clear categorization into FPT/W[1]-hard for all pairs (H, G)

(think of Ladner’s Theorem)

Marc Roth and Philip Wellnitz Counting Homomorphisms is Universal for Parameterized Complexity Theory

slide-29
SLIDE 29

Basic Definitions and General Overview Main Result Open Problems

Proof Ideas #HOM(H → G)

Parameter: |V(H)| Given graphs H ∈ H and G ∈ G, count all graph homomorphisms from H to G.

Theorem

For any problem P in #W[1] (or W[1]), there are graph classes HP and GP such that P is equivalent to #HOM(HP → GP) (or HOM(HP → GP)).

Marc Roth and Philip Wellnitz Counting Homomorphisms is Universal for Parameterized Complexity Theory

slide-30
SLIDE 30

Basic Definitions and General Overview Main Result Open Problems

Proof Ideas #HOM(H → G)

Parameter: |V(H)| Given graphs H ∈ H and G ∈ G, count all graph homomorphisms from H to G.

Theorem

For any problem P in #W[1] (or W[1]), there are graph classes HP and GP such that P is equivalent to #HOM(HP → GP) (or HOM(HP → GP)). Recall: #HOM(H → ⊤) is #W[1]-hard if H has “unbounded treewidth” [DalJon’04]

Marc Roth and Philip Wellnitz Counting Homomorphisms is Universal for Parameterized Complexity Theory

slide-31
SLIDE 31

Basic Definitions and General Overview Main Result Open Problems

Proof Ideas #HOM(H → G)

Parameter: |V(H)| Given graphs H ∈ H and G ∈ G, count the number of graph hom’s from H to G.

Theorem

For any P in #W[1], there are HP, GP such that P is equivalent to #HOM(HP → GP).

Problem P #K-CLIQUE #HOM(H → ⊤)

#W[1] #W[1]-hard H w/ unbounded treewidth

Marc Roth and Philip Wellnitz Counting Homomorphisms is Universal for Parameterized Complexity Theory

slide-32
SLIDE 32

Basic Definitions and General Overview Main Result Open Problems

Proof Ideas #HOM(H → G)

Parameter: |V(H)| Given graphs H ∈ H and G ∈ G, count the number of graph hom’s from H to G.

Theorem

For any P in #W[1], there are HP, GP such that P is equivalent to #HOM(HP → GP).

Problem P #K-CLIQUE #HOM(H → ⊤)

#W[1] #W[1]-hard H w/ unbounded treewidth

?

Marc Roth and Philip Wellnitz Counting Homomorphisms is Universal for Parameterized Complexity Theory

slide-33
SLIDE 33

Basic Definitions and General Overview Main Result Open Problems

Proof Ideas #HOM(H → G)

Parameter: |V(H)| Given graphs H ∈ H and G ∈ G, count the number of graph hom’s from H to G.

Theorem

For any P in #W[1], there are HP, GP such that P is equivalent to #HOM(HP → GP).

Problem P #K-CLIQUE #HOM(H → ⊤)

#W[1] #W[1]-hard H w/ unbounded treewidth

Marc Roth and Philip Wellnitz Counting Homomorphisms is Universal for Parameterized Complexity Theory

slide-34
SLIDE 34

Basic Definitions and General Overview Main Result Open Problems

Proof Ideas Theorem

For any P in #W[1], there are HP, GP such that P is equivalent to #HOM(HP → GP).

Problem P #K-CLIQUE #HOM(H → ⊤)

#W[1] #W[1]-hard H w/ unbounded treewidth

Marc Roth and Philip Wellnitz Counting Homomorphisms is Universal for Parameterized Complexity Theory

slide-35
SLIDE 35

Basic Definitions and General Overview Main Result Open Problems

Proof Ideas Theorem

For any P in #W[1], there are HP, GP such that P is equivalent to #HOM(HP → GP). Problem P #HOM(H → ⊤) encode Graph J How do we obtain instance J from (HJ, GJ)?

P #HOM(HP → GP)

HP := {HJ | instance J of P} GP := {GJ ∪ J | instance J of P} Problem P #HOM(H → ⊤) How do we ensure #Hom(HJ → GL ∪ L) = 0? (ensure #Hom(HJ → J) = 0) Instance J

  • f P

Graphs HJ, GJ Graphs HJ, GJ

Marc Roth and Philip Wellnitz Counting Homomorphisms is Universal for Parameterized Complexity Theory

slide-36
SLIDE 36

Basic Definitions and General Overview Main Result Open Problems

Proof Ideas Theorem

For any P in #W[1], there are HP, GP such that P is equivalent to #HOM(HP → GP). Problem P #HOM(H → ⊤) encode Graph J How do we obtain instance J from (HJ, GJ)?

P #HOM(HP → GP)

HP := {HJ | instance J of P} GP := {GJ ∪ J | instance J of P} Problem P #HOM(H → ⊤) How do we ensure #Hom(HJ → GL ∪ L) = 0? (ensure #Hom(HJ → J) = 0) Instance J

  • f P

Graphs HJ, GJ Graphs HJ, GJ Instance J

  • f P

Graphs HJ, GJ

Marc Roth and Philip Wellnitz Counting Homomorphisms is Universal for Parameterized Complexity Theory

slide-37
SLIDE 37

Basic Definitions and General Overview Main Result Open Problems

Proof Ideas Theorem

For any P in #W[1], there are HP, GP such that P is equivalent to #HOM(HP → GP). Problem P #HOM(H → ⊤) encode Graph J How do we obtain instance J from (HJ, GJ)?

P #HOM(HP → GP)

HP := {HJ | instance J of P} GP := {GJ ∪ J | instance J of P} Problem P #HOM(H → ⊤) How do we ensure #Hom(HJ → GL ∪ L) = 0? (ensure #Hom(HJ → J) = 0) Instance J

  • f P

Graphs HJ, GJ Graphs HJ, GJ Instance J

  • f P

Graphs HJ, GJ

Approach:

HP := {HJ | instance J of P} GP := {GJ | instance J of P}

Marc Roth and Philip Wellnitz Counting Homomorphisms is Universal for Parameterized Complexity Theory

slide-38
SLIDE 38

Basic Definitions and General Overview Main Result Open Problems

Proof Ideas Theorem

For any P in #W[1], there are HP, GP such that P is equivalent to #HOM(HP → GP). Problem P #HOM(H → ⊤) encode Graph J How do we obtain instance J from (HJ, GJ)?

P #HOM(HP → GP)

HP := {HJ | instance J of P} GP := {GJ ∪ J | instance J of P} Problem P #HOM(H → ⊤) How do we ensure #Hom(HJ → GL ∪ L) = 0? (ensure #Hom(HJ → J) = 0) Instance J

  • f P

Graphs HJ, GJ Graphs HJ, GJ Instance J

  • f P

Graphs HJ, GJ

Approach:

HP := {HJ | instance J of P} GP := {GJ | instance J of P}

P #HOM(HP → GP)

Marc Roth and Philip Wellnitz Counting Homomorphisms is Universal for Parameterized Complexity Theory

slide-39
SLIDE 39

Basic Definitions and General Overview Main Result Open Problems

Proof Ideas Theorem

For any P in #W[1], there are HP, GP such that P is equivalent to #HOM(HP → GP). Problem P #HOM(H → ⊤) encode Graph J How do we obtain instance J from (HJ, GJ)?

P #HOM(HP → GP)

HP := {HJ | instance J of P} GP := {GJ ∪ J | instance J of P} Problem P #HOM(H → ⊤) How do we ensure #Hom(HJ → GL ∪ L) = 0? (ensure #Hom(HJ → J) = 0) Instance J

  • f P

Graphs HJ, GJ Graphs HJ, GJ Instance J

  • f P

Graphs HJ, GJ

Approach:

HP := {HJ | instance J of P} GP := {GJ | instance J of P}

P #HOM(HP → GP) #HOM(HP → GP)

?

P

Marc Roth and Philip Wellnitz Counting Homomorphisms is Universal for Parameterized Complexity Theory

slide-40
SLIDE 40

Basic Definitions and General Overview Main Result Open Problems

Proof Ideas Theorem

For any P in #W[1], there are HP, GP such that P is equivalent to #HOM(HP → GP). Problem P #HOM(H → ⊤) encode Graph J How do we obtain instance J from (HJ, GJ)?

P #HOM(HP → GP)

HP := {HJ | instance J of P} GP := {GJ ∪ J | instance J of P} Problem P #HOM(H → ⊤) How do we ensure #Hom(HJ → GL ∪ L) = 0? (ensure #Hom(HJ → J) = 0) Instance J

  • f P

Graphs HJ, GJ Graphs HJ, GJ Instance J

  • f P

Graphs HJ, GJ

Approach:

HP := {HJ | instance J of P} GP := {GJ | instance J of P}

P #HOM(HP → GP) #HOM(HP → GP) P

How do we obtain instance J from (HJ, GJ)?

Marc Roth and Philip Wellnitz Counting Homomorphisms is Universal for Parameterized Complexity Theory

slide-41
SLIDE 41

Basic Definitions and General Overview Main Result Open Problems

Proof Ideas Theorem

For any P in #W[1], there are HP, GP such that P is equivalent to #HOM(HP → GP). Problem P #HOM(H → ⊤) encode Graph J How do we obtain instance J from (HJ, GJ)?

P #HOM(HP → GP)

HP := {HJ | instance J of P} GP := {GJ ∪ J | instance J of P} Problem P #HOM(H → ⊤) How do we ensure #Hom(HJ → GL ∪ L) = 0? (ensure #Hom(HJ → J) = 0) Instance J

  • f P

Graphs HJ, GJ Graphs HJ, GJ Instance J

  • f P

Graphs HJ, GJ encode encode Graph J

Marc Roth and Philip Wellnitz Counting Homomorphisms is Universal for Parameterized Complexity Theory

slide-42
SLIDE 42

Basic Definitions and General Overview Main Result Open Problems

Proof Ideas Theorem

For any P in #W[1], there are HP, GP such that P is equivalent to #HOM(HP → GP). Problem P #HOM(H → ⊤) encode Graph J How do we obtain instance J from (HJ, GJ)?

P #HOM(HP → GP)

HP := {HJ | instance J of P} GP := {GJ ∪ J | instance J of P} Problem P #HOM(H → ⊤) How do we ensure #Hom(HJ → GL ∪ L) = 0? (ensure #Hom(HJ → J) = 0) Instance J

  • f P

Graphs HJ, GJ Graphs HJ, GJ Instance J

  • f P

Graphs HJ, GJ encode encode Graph J Approach: HP := {HJ | instance J of P} GP := {GJ ∪ J | instance J of P}

Marc Roth and Philip Wellnitz Counting Homomorphisms is Universal for Parameterized Complexity Theory

slide-43
SLIDE 43

Basic Definitions and General Overview Main Result Open Problems

Proof Ideas Theorem

For any P in #W[1], there are HP, GP such that P is equivalent to #HOM(HP → GP). Problem P #HOM(H → ⊤) encode Graph J How do we obtain instance J from (HJ, GJ)?

P #HOM(HP → GP)

HP := {HJ | instance J of P} GP := {GJ ∪ J | instance J of P} Problem P #HOM(H → ⊤) How do we ensure #Hom(HJ → GL ∪ L) = 0? (ensure #Hom(HJ → J) = 0) Instance J

  • f P

Graphs HJ, GJ Graphs HJ, GJ Instance J

  • f P

Graphs HJ, GJ encode encode Graph J Approach: HP := {HJ | instance J of P} GP := {GJ ∪ J | instance J of P} P #HOM(HP → GP) (ensure #Hom(HJ → J) = 0)

Marc Roth and Philip Wellnitz Counting Homomorphisms is Universal for Parameterized Complexity Theory

slide-44
SLIDE 44

Basic Definitions and General Overview Main Result Open Problems

Proof Ideas Theorem

For any P in #W[1], there are HP, GP such that P is equivalent to #HOM(HP → GP). Problem P #HOM(H → ⊤) encode Graph J How do we obtain instance J from (HJ, GJ)?

P #HOM(HP → GP)

HP := {HJ | instance J of P} GP := {GJ ∪ J | instance J of P} Problem P #HOM(H → ⊤) How do we ensure #Hom(HJ → GL ∪ L) = 0? (ensure #Hom(HJ → J) = 0) Instance J

  • f P

Graphs HJ, GJ Graphs HJ, GJ Instance J

  • f P

Graphs HJ, GJ encode encode Graph J Approach: HP := {HJ | instance J of P} GP := {GJ ∪ J | instance J of P} P #HOM(HP → GP) (ensure #Hom(HJ → J) = 0) #HOM(HP → GP)

?

P

Marc Roth and Philip Wellnitz Counting Homomorphisms is Universal for Parameterized Complexity Theory

slide-45
SLIDE 45

Basic Definitions and General Overview Main Result Open Problems

Proof Ideas Theorem

For any P in #W[1], there are HP, GP such that P is equivalent to #HOM(HP → GP). Problem P #HOM(H → ⊤) encode Graph J How do we obtain instance J from (HJ, GJ)?

P #HOM(HP → GP)

HP := {HJ | instance J of P} GP := {GJ ∪ J | instance J of P} Problem P #HOM(H → ⊤) How do we ensure #Hom(HJ → GL ∪ L) = 0? (ensure #Hom(HJ → J) = 0) Instance J

  • f P

Graphs HJ, GJ Graphs HJ, GJ Instance J

  • f P

Graphs HJ, GJ encode encode Graph J Approach: HP := {HJ | instance J of P} GP := {GJ ∪ J | instance J of P} P #HOM(HP → GP) (ensure #Hom(HJ → J) = 0) #HOM(HP → GP)

?

P How do we handle malformed input (HJ, GL)?

Marc Roth and Philip Wellnitz Counting Homomorphisms is Universal for Parameterized Complexity Theory

slide-46
SLIDE 46

Basic Definitions and General Overview Main Result Open Problems

Proof Ideas Theorem

For any P in #W[1], there are HP, GP such that P is equivalent to #HOM(HP → GP). Problem P #HOM(H → ⊤) encode Graph J How do we obtain instance J from (HJ, GJ)?

P #HOM(HP → GP)

HP := {HJ | instance J of P} GP := {GJ ∪ J | instance J of P} Problem P #HOM(H → ⊤) How do we ensure #Hom(HJ → GL ∪ L) = 0? (ensure #Hom(HJ → J) = 0) Instance J

  • f P

Graphs HJ, GJ Graphs HJ, GJ Instance J

  • f P

Graphs HJ, GJ encode encode Graph J Approach: HP := {HJ | instance J of P} GP := {GJ ∪ J | instance J of P} P #HOM(HP → GP) (ensure #Hom(HJ → J) = 0) #HOM(HP → GP)

?

P How do we ensure #Hom(HJ → GL ∪ L) = 0?

Marc Roth and Philip Wellnitz Counting Homomorphisms is Universal for Parameterized Complexity Theory

slide-47
SLIDE 47

Theorem

For any P in #W[1], there are HP, GP such that P is equivalent to #HOM(HP → GP). P #HOM(HP → GP) #HOM(HP → GP) P Can solve instance J with (HJ, GJ ∪ J) by computing #Hom(HJ → GJ ∪ J) Can extract instance J from pair (HJ, GJ ∪ J)

(ensuring #Hom(HJ → J) = 0) How do we ensure #Hom(HJ → GL ∪ L) = 0?

slide-48
SLIDE 48

Theorem

For any P in #W[1], there are HP, GP such that P is equivalent to #HOM(HP → GP). P #HOM(HP → GP) #HOM(HP → GP) P Can solve instance J with (HJ, GJ ∪ J) by computing #Hom(HJ → GJ ∪ J) Can extract instance J from pair (HJ, GJ ∪ J)

(ensuring #Hom(HJ → J) = 0) How do we ensure #Hom(HJ → GL ∪ L) = 0?

Problem P #HOM(H → ⊤) Instance J

  • f P

Graphs HJ, GJ

slide-49
SLIDE 49

Theorem

For any P in #W[1], there are HP, GP such that P is equivalent to #HOM(HP → GP). P #HOM(HP → GP) #HOM(HP → GP) P Can solve instance J with (HJ, GJ ∪ J) by computing #Hom(HJ → GJ ∪ J) Can extract instance J from pair (HJ, GJ ∪ J)

(ensuring #Hom(HJ → J) = 0) How do we ensure #Hom(HJ → GL ∪ L) = 0?

slide-50
SLIDE 50

Theorem

For any P in #W[1], there are HP, GP such that P is equivalent to #HOM(HP → GP). P #HOM(HP → GP) #HOM(HP → GP) P Can solve instance J with (HJ, GJ ∪ J) by computing #Hom(HJ → GJ ∪ J) Can extract instance J from pair (HJ, GJ ∪ J)

(ensuring #Hom(HJ → J) = 0) How do we ensure #Hom(HJ → GL ∪ L) = 0?

No homomorphisms

slide-51
SLIDE 51

H

  • m

( HJ → GJ ) Aut(K(2κ(J) + 3)) HJ K(2κ(J) + 3) ˆ HJ GJ (HJ-colored) J, HJ K(2κ(J) + 3) ˆ GJ

slide-52
SLIDE 52

Basic Definitions and General Overview Main Result Open Problems

Main Result #HOM(H → G)

Parameter: |V(H)| Given graphs H ∈ H and G ∈ G, count all graph homomorphisms from H to G.

Theorem

For any problem P in #W[1] (or W[1]), there are graph classes HP and GP such that P is equivalent to #HOM(HP → GP) (or HOM(HP → GP)). Cannot hope for clear categorization into FPT/W[1]-hard for all pairs (H, G) Need to look at specific pairs of graph classes

Marc Roth and Philip Wellnitz Counting Homomorphisms is Universal for Parameterized Complexity Theory

slide-53
SLIDE 53

Basic Definitions and General Overview Main Result Open Problems

Main Result #HOM(H → G)

Parameter: |V(H)| Given graphs H ∈ H and G ∈ G, count all graph homomorphisms from H to G.

Theorem

For any problem P in #W[1] (or W[1]), there are graph classes HP and GP such that P is equivalent to #HOM(HP → GP) (or HOM(HP → GP)). Cannot hope for clear categorization into FPT/W[1]-hard for all pairs (H, G) Need to look at specific pairs of graph classes

Marc Roth and Philip Wellnitz Counting Homomorphisms is Universal for Parameterized Complexity Theory

slide-54
SLIDE 54

Basic Definitions and General Overview Main Result Open Problems

Open Problems

Can we find a “hierarchy” of homomorphism problems? #HOM(H1 → G1) “≤” #HOM(H2 → G2) “≤” · · · “≤” #HOM(⊤ → ⊤)

(Grunt work?) Obtain algorithms/hardness for specific pairs of graph classes H, G

(Done for G = F-colorable graphs, line graphs, claw-free graphs, . . . )

Marc Roth and Philip Wellnitz Counting Homomorphisms is Universal for Parameterized Complexity Theory

slide-55
SLIDE 55

Thank you!

TikZ code for Kneser graphs available on GitHub github.com/PH111P/tikz-kneser

slide-56
SLIDE 56

Navigation

Start Graph hom’s 1 Graph hom’s 2 Graph hom’s 3 Graph classes Known results 1 Known results 2 Known results 3 Known results 4 Main result Proof ideas 1 Proof ideas 2 Proof ideas 3 Open Problems End Marc Roth and Philip Wellnitz Counting Homomorphisms is Universal for Parameterized Complexity Theory