• Nem Talált Eredményt

Counting in Parameterized Comlexity

N/A
N/A
Protected

Academic year: 2022

Ossza meg "Counting in Parameterized Comlexity"

Copied!
74
0
0

Teljes szövegt

(1)

Dániel Marx

Institute for Computer Science and Control, Hungarian Academy of Sciences (MTA SZTAKI)

Budapest, Hungary

Joint work with Radu Curticapean and Holger Dell Recent Advances in Parameterized Complexity

Tel Aviv, Israel, December 7, 2017

(2)

Counting problems

Counting is harder than decision:

Counting version of easy problems:

not clear if they remain easy.

Counting version of hard problems:

not clear if we can keep the same running time.

Working on counting problems is fun:

You can revisit fundamental, “well-understood” problems. Requires a new set of lower bound techniques.

Requires new algorithmic techniques.

(3)

Counting is harder than decision:

Counting version of easy problems:

not clear if they remain easy.

Counting version of hard problems:

not clear if we can keep the same running time.

Working on counting problems is fun:

You can revisit fundamental, “well-understood” problems.

Requires a new set of lower bound techniques.

Requires new algorithmic techniques.

(4)

FPT techniques

Color coding Kernelization

Algebraic techniques

Bounded-depth search trees

(5)

Treewidth

Color coding

Iterative compression Algebraic techniques

Bounded-depth search trees

Kernelization

(6)

FPT techniques . . . for counting?

Color coding Algebraic

techniques

Bounded-depth search trees

Kernelization

(7)

Treewidth

Color coding

Iterative compression Algebraic

techniques

Bounded-depth search trees

Kernelization

(8)

Counting complexity

W[1]-hardness: “as hard as find ak-clique”

#W[1]-hardness: “as hard as countingk-cliques”

Questions about counting versions of W[1]-hard problems:

Theoretical question:

Is the the counting version of a W[1]-hard problem

#W[1]-hard?

More fine-grained question:

Can we get the same running time (e.g., nO(

k)) also for the

(9)

What can happen to the counting versions of an FPT or P problem?

1 The same algorithmic technique shows that the counting problem is FPT.

2 New algorithmic techniques are needed to show that the counting version is FPT.

3 New lower bound technique are needed to show that the counting version is #W[1]-hard.

(10)

Counting patterns

Main question

Which type of subgraph patterns are easy to count?

biclique clique complete multipartite graph matching

Before that: counting homomorphisms!

(11)

Main question

Which type of subgraph patterns are easy to count?

biclique clique complete multipartite graph matching

star subdivided star windmill

path

(12)

Homomorphisms

AhomomorphismfromH toG is a mapping f :V(H)→V(G) such that ifab is an edge ofH, thenf(a)f(b) is an edge ofG.

4 3

2 1

1 2

3 4

Which pattern graphsH are easy for counting homomorphisms? Theorem (trivial)

For every fixedH, the problem#Hom(H) (count homomorphisms fromH to the given graphG) is polynomial-time solvable.

. . .because we can try all |V(G)||V(H)|possible mappings

f:V(H)→V(G).

(13)

Homomorphisms

AhomomorphismfromH toG is a mapping f :V(H)→V(G) such that ifab is an edge ofH, thenf(a)f(b) is an edge ofG.

3

24 1

1 2

3 4

Theorem (trivial)

For every fixedH, the problem#Hom(H) (count homomorphisms fromH to the given graphG) is polynomial-time solvable.

. . .because we can try all |V(G)||V(H)|possible mappings

f:V(H)→V(G).

(14)

Homomorphisms

AhomomorphismfromH toG is a mapping f :V(H)→V(G) such that ifab is an edge ofH, thenf(a)f(b) is an edge ofG.

24

1 2

3 4

13

Which pattern graphsH are easy for counting homomorphisms? Theorem (trivial)

For every fixedH, the problem#Hom(H) (count homomorphisms fromH to the given graphG) is polynomial-time solvable.

. . .because we can try all |V(G)||V(H)|possible mappings

f:V(H)→V(G).

(15)

Homomorphisms

AhomomorphismfromH toG is a mapping f :V(H)→V(G) such that ifab is an edge ofH, thenf(a)f(b) is an edge ofG.

13

1 2

3 4

24

Theorem (trivial)

For every fixedH, the problem#Hom(H) (count homomorphisms fromH to the given graphG) is polynomial-time solvable.

. . .because we can try all |V(G)||V(H)|possible mappings

f:V(H)→V(G).

(16)

Homomorphisms

AhomomorphismfromH toG is a mapping f :V(H)→V(G) such that ifab is an edge ofH, thenf(a)f(b) is an edge ofG.

13

1 2

3 4

24

Which pattern graphsH are easy for counting homomorphisms?

Theorem (trivial)

For every fixedH, the problem#Hom(H) (count homomorphisms fromH to the given graphG) is polynomial-time solvable.

. . .because we can try all |V(G)||V(H)|possible mappings

f:V(H)→V(G).

(17)

AhomomorphismfromH toG is a mapping f :V(H)→V(G) such that ifab is an edge ofH, thenf(a)f(b) is an edge ofG.

13

1 2

3 4

24

Which pattern graphsH are easy for counting homomorphisms?

Theorem (trivial)

For every fixedH, the problem#Hom(H) (count homomorphisms fromH to the given graphG) is polynomial-time solvable.

. . .because we can try all |V(G)||V(H)|possible mappings

(18)

Counting homomorphisms

Better question:

#Hom(H)

Input: graph H ∈ Hand an arbitrary graph G.

Task: count the number of homomorphisms fromH toG. Goal: characterize the classesH for which #Hom(H)is polynomial-time solvable.

We have reasons to believe that there is no P vs. NP-complete dichotomy for#Hom(H). Instead of NP-completeness, we will use paramterized complexity for giving negative evidence.

We parameterize byk =|V(H)|, i.e., our goal is an f(|V(H)|)·nO(1) time algorithm.

(19)

Better question:

#Hom(H)

Input: graph H ∈ Hand an arbitrary graph G.

Task: count the number of homomorphisms fromH toG. Goal: characterize the classesH for which #Hom(H)is polynomial-time solvable.

We have reasons to believe that there is no P vs. NP-complete dichotomy for#Hom(H). Instead of NP-completeness, we will use paramterized complexity for giving negative evidence.

We parameterize byk =|V(H)|, i.e., our goal is an f(|V(H)|)·nO(1) time algorithm.

(20)

Counting homomorphisms

Theorem[Dalmau and Jonsson 2004]

AssumingFPT6=W[1], for every recursively enumerable classH of graphs, the following are equivalent:

1 #Hom(H) is polynomial-time solvable.

2 #Hom(H) isFPT parameterized by|V(H)|.

3 H has bounded treewidth.

(21)

Theorem[Dalmau and Jonsson 2004]

AssumingFPT6=W[1], for every recursively enumerable classH of graphs, the following are equivalent:

1 #Hom(H) is polynomial-time solvable.

2 #Hom(H) isFPT parameterized by|V(H)|.

3 H has bounded treewidth.

Proof of the positive result:

Show that the problem can be solved in time O(nc+1)ifH has treewidth c (standard dynamic programing).

[Díaz et al. 2002]

(22)

Counting homomorphisms

Theorem[Dalmau and Jonsson 2004]

AssumingFPT6=W[1], for every recursively enumerable classH of graphs, the following are equivalent:

1 #Hom(H) is polynomial-time solvable.

2 #Hom(H) isFPT parameterized by|V(H)|.

3 H has bounded treewidth.

Excluded Grid Theorem [Robertson and Seymour]

There is a functionf such that every graph with treewidthf(k) contains ak×k grid minor.

(23)

Theorem[Dalmau and Jonsson 2004]

AssumingFPT6=W[1], for every recursively enumerable classH of graphs, the following are equivalent:

1 #Hom(H) is polynomial-time solvable.

2 #Hom(H) isFPT parameterized by|V(H)|.

3 H has bounded treewidth.

Proof of the negative result:

1 Show that #Hom(H) is W[1]-hard ifHis the class of grids.

2 Show that ifH containsk×k as minor, then #Hom(k×k) can be reduced to #Hom(H).

3 Use the Excluded Grid Theorem to show that this implies W[1]-hardness for every classH with unbounded treewidth.

(24)

Counting subgraphs

Two highlights of classical complexity:

Finding a perfect matching is polynomial-time solvable.

[Edmonds 1965]

Counting perfect matchings is #P-hard.

[Valiant 1979]

[Flum and Grohe 2002]started the study of parameterized counting problems.

Theorem

Countingk-paths is #W[1]-hard.

Question: What about counting k-matchings?

(25)

Two highlights of classical complexity:

Finding a perfect matching is polynomial-time solvable.

[Edmonds 1965]

Counting perfect matchings is #P-hard.

[Valiant 1979]

[Flum and Grohe 2002]started the study of parameterized counting problems.

Theorem

Countingk-paths is #W[1]-hard.

Question: What about counting k-matchings?

(26)

Counting k -matchings

Colorful history:

Weighted version is #W[1]-hard [Bläser and Curticapean 2012] Unweighted version is #W[1]-hard [Curticapean 2013] — complicated proof. Unweighted version is #W[1]-hard

[Curticapean and M 2014] — simpler proof. Unweighted version is #W[1]-hard

[Curticapean and M, unpublished]— even simpler proof. Unweighted version is #W[1]-hard

[Curticapean, Dell, and M 2017] — tells the real story.

(27)

Counting k -matchings

Colorful history:

Weighted version is #W[1]-hard [Bläser and Curticapean 2012]

Unweighted version is #W[1]-hard

[Curticapean and M 2014] — simpler proof. Unweighted version is #W[1]-hard

[Curticapean and M, unpublished]— even simpler proof. Unweighted version is #W[1]-hard

[Curticapean, Dell, and M 2017] — tells the real story.

(28)

Counting k -matchings

Colorful history:

Weighted version is #W[1]-hard [Bläser and Curticapean 2012]

Unweighted version is #W[1]-hard [Curticapean 2013] — complicated proof.

Unweighted version is #W[1]-hard

[Curticapean and M 2014] — simpler proof. Unweighted version is #W[1]-hard

[Curticapean and M, unpublished]— even simpler proof. Unweighted version is #W[1]-hard

[Curticapean, Dell, and M 2017] — tells the real story.

(29)

Counting k -matchings

Colorful history:

Weighted version is #W[1]-hard [Bläser and Curticapean 2012]

Unweighted version is #W[1]-hard [Curticapean 2013] — complicated proof.

Unweighted version is #W[1]-hard

[Curticapean and M 2014] — simpler proof.

Unweighted version is #W[1]-hard

[Curticapean, Dell, and M 2017] — tells the real story.

(30)

Counting k -matchings

Colorful history:

Weighted version is #W[1]-hard [Bläser and Curticapean 2012]

Unweighted version is #W[1]-hard [Curticapean 2013] — complicated proof.

Unweighted version is #W[1]-hard

[Curticapean and M 2014] — simpler proof.

Unweighted version is #W[1]-hard

[Curticapean and M, unpublished]— even simpler proof.

Unweighted version is #W[1]-hard

[Curticapean, Dell, and M 2017] — tells the real story.

(31)

Colorful history:

Weighted version is #W[1]-hard [Bläser and Curticapean 2012]

Unweighted version is #W[1]-hard [Curticapean 2013] — complicated proof.

Unweighted version is #W[1]-hard

[Curticapean and M 2014] — simpler proof.

Unweighted version is #W[1]-hard

[Curticapean and M, unpublished]— even simpler proof.

Unweighted version is #W[1]-hard

[Curticapean, Dell, and M 2017]— tells the real story.

(32)

Counting subgraphs

#Sub(H)

Input: a graph H ∈ H and an arbitrary graphG. Task: calculate the number of copies of H in G.

IfH is the class of all stars, then #Sub(H) is easy: for each placement of the center of the star, calculate the number of possible different assignments of the leaves.

H G

Theorem[Vassilevska Williams and Williams][Kowalik et al.] If every graph inHhas vertex cover number at mostc, then

#Sub(H) is polynomial-time solvable.

(33)

#Sub(H)

Input: a graph H ∈ H and an arbitrary graphG. Task: calculate the number of copies of H in G.

IfH is the class of all stars, then #Sub(H) is easy: for each placement of the center of the star, calculate the number of possible different assignments of the leaves.

H G

Theorem[Vassilevska Williams and Williams][Kowalik et al.]

If every graph inHhas vertex cover number at mostc, then

(34)

Counting subgraphs

Theorem[Curticapean and M. 2014][Curticapean, Dell, and M. 2017]

LetHbe a recursively enumerable class of graphs. If Hhas unbounded vertex cover number, then#Sub(H) is #W[1]-hard.

(ν(G)τ(G)2ν(G), hence “unbounded vertex cover number” and

“unbounded matching number” are the same.)

Dichotomy theorem:

Theorem

AssumingFPT6=W[1], for every recursively enumerable classH of graphs, the following are equivalent:

1 #Sub(H) is polynomial-time solvable.

2 #Sub(H) isFPTparameterized by |V(H)|.

3 H has bounded vertex cover number.

(35)

Theorem[Curticapean and M. 2014][Curticapean, Dell, and M. 2017]

LetHbe a recursively enumerable class of graphs. If Hhas unbounded vertex cover number, then#Sub(H) is #W[1]-hard.

(ν(G)τ(G)2ν(G), hence “unbounded vertex cover number” and

“unbounded matching number” are the same.)

Dichotomy theorem:

Theorem

AssumingFPT6=W[1], for every recursively enumerable classH of graphs, the following are equivalent:

1 #Sub(H) is polynomial-time solvable.

2 #Sub(H) isFPTparameterized by |V(H)|.

3 H has bounded vertex cover number.

(36)

Subgraphs ⇔ homomorphisms

Easy to check:

hom( ,G) =8sub( ,G) +4sub( ,G) +2sub( ,G)

4 3

2 1

1 2

3 4

Not completely obvious:

The formula can be reversed by inclusion-exclusion. sub( ,G) = 1

8hom( ,G)−1

4hom( ,G) +1

8hom( ,G)

(37)

Subgraphs ⇔ homomorphisms

Easy to check:

hom( ,G) =8sub( ,G) +4sub( ,G) +2sub( ,G)

3

24 1

1 2

3 4

The formula can be reversed by inclusion-exclusion. sub( ,G) = 1

8hom( ,G)−1

4hom( ,G) +1

8hom( ,G)

(38)

Subgraphs ⇔ homomorphisms

Easy to check:

hom( ,G) =8sub( ,G) +4sub( ,G) +2sub( ,G)

24

1 2

3 4

13

Not completely obvious:

The formula can be reversed by inclusion-exclusion. sub( ,G) = 1

8hom( ,G)−1

4hom( ,G) +1

8hom( ,G)

(39)

Easy to check:

hom( ,G) =8sub( ,G) +4sub( ,G) +2sub( ,G)

24

1 2

3 4

13 Not completely obvious:

The formula can be reversed by inclusion-exclusion.

sub( ,G) = 1

hom( ,G)−1

hom( ,G) +1

hom( ,G)

(40)

General statements

Definition

surj(H,G): number of surjective homomorphisms fromH to G (every vertex and edge ofG appears in the image).

Homomorphisms can be counted by classifying according to the imageF:

hom( ,G) =8sub( ,G) +4sub( ,G) +2sub( ,G)

⇓ hom(H,G) =P

Fsurj(H,F)sub(F,G)

(41)

Spasm

Part0(H): set of partitions ofV(H) where each class is an independent set.

For Π∈Part0(H),H is obtained by contracting the classes of Π.

Spasm( ) = n

, , , , , , ,

o

(42)

Spasm

Part0(H): set of partitions ofV(H) where each class is an independent set.

For Π∈Part0(H),H is obtained by contracting the classes of Π.

Spasm={H |Π∈Part (H)}

(43)

Subgraphs ⇔ homomorphisms

From subgraphs to homomorphisms:

hom(H,G) =X

F

surj(H,F)sub(F,G) wheresurj(H,F)6=0 if and only ifF ∈Spasm(H).

From homomorphisms to subgraphs: [Lovász 1967]

sub(H,G) =X

F

βF hom(F,G) whereβF 6=0 if and only ifF ∈Spasm(H).

Extremely useful for applications in algorithms and complexity!

(44)

Subgraphs ⇔ homomorphisms

From subgraphs to homomorphisms:

hom(H,G) =X

F

surj(H,F)sub(F,G)

wheresurj(H,F)6=0 if and only ifF ∈Spasm(H).

. . .useless.

From homomorphisms to subgraphs: [Lovász 1967]

sub(H,G) =X

F

βF hom(F,G)

Extremely useful for applications in algorithms and complexity!

(45)

From subgraphs to homomorphisms:

hom(H,G) =X

F

surj(H,F)sub(F,G)

wheresurj(H,F)6=0 if and only ifF ∈Spasm(H).

. . .useless.

From homomorphisms to subgraphs: [Lovász 1967]

sub(H,G) =X

F

βF hom(F,G) whereβF 6=0 if and only ifF ∈Spasm(H).

Extremely useful for applications in algorithms and complexity!

(46)

Algorithmic applications

sub(H,G) = X

F∈Spasm(H)

βF hom(F,G)

The maximum treewidth inSpasm(H) gives an upper bound on complexity:

Corollary

If every graph inSpasm(H) has treewidth at mostc, then sub(H,G) can be computed in time O(nc+1).

(47)

Algorithmic applications

Corollary

If every graph inSpasm(H) has treewidth at mostc, then sub(H,G) can be computed in time O(nc+1).

Observe: If H has k edges, then every graph in Spasm(H) has at mostk edges.

Every graph with≤k edges has treewidth at most0.174k+O(1). Corollary

IfH has k edges, then sub(H,G) can be computed in time n0.174k+O(1).

(48)

Algorithmic applications

Corollary

If every graph inSpasm(H) has treewidth at mostc, then sub(H,G) can be computed in time O(nc+1).

Observe: If H has k edges, then every graph in Spasm(H) has at mostk edges.

Theorem[Scott and Sorkin 2007]

Every graph with≤k edges has treewidth at most0.174k+O(1).

Corollary

(49)

Corollary

IfH hask edges, then sub(H,G) can be computed in time n0.174k+O(1).

Example: Counting k-paths Brute force: O(nk).

Meet in the middle [Björklund et al. 2009],[Koutis and Williams 2016]: O(n0.5k).

[Björklund et al. 2014]: n0.455k+O(1).

New! counting homomorphisms in the spasm: n0.174k+O(1).

(50)

Count small cycles

Theorem[Alon, Yuster, and Zwick 1997]

Fork ≤7, we can compute sub(Ck,G)in time nω (where ω <2.373 is the matrix-multiplication exponent).

We can recover this result:

Check: ifk ≤7, then every graph inSpasm(Ck,G)has treewidth at most 2.

For treewidth 2, the O(n2+1)homomorphism algorithm can be improved toO(nω) with fast matrix multiplication.

⇒ O(nω)algorithm forsub(Ck,G) ifk ≤7.

(51)

Theorem[Alon, Yuster, and Zwick 1997]

Fork ≤7, we can compute sub(Ck,G)in time nω (where ω <2.373 is the matrix-multiplication exponent).

We can recover this result:

Check: ifk ≤7, then every graph inSpasm(Ck,G) has treewidth at most 2.

For treewidth 2, the O(n2+1)homomorphism algorithm can be improved toO(nω) with fast matrix multiplication.

⇒ O(nω) algorithm forsub(Ck,G) ifk ≤7.

(52)

Vertex cover

Theorem

IfH has vertex cover numberc, thenhom(H,G) can be computed in timeO(nc+1).

Proof: For F ∈Spasm(H), we have tw(F)≤vc(F)≤vc(H)≤c. Corollary

IfH is a class of graphs with bounded vertex cover number, then

#Sub(H) is FPT parameterized by|V(H)|.

(53)

Complexity applications

sub(H,G) = X

F∈Spasm(H)

βF hom(F,G)

Note: Every βF is nonzero.

Reductions:

⇒ we can compute sub(H,G). Highly nontrivial:

if we can compute sub(H,G)

⇒ we can compute hom(F,G) for anyF ∈Spasm(H).

Complexity ofhom(F,G) for anyF ∈Spasm(H) is a lower bound on the complexity ofsub(H,G).

(54)

Complexity applications

sub(H,G) = X

F∈Spasm(H)

βF hom(F,G)

Note: Every βF is nonzero.

Reductions:

Obvious:

if we can compute hom(F,G) for any F ∈Spasm(H)

⇒ we can compute sub(H,G).

Highly nontrivial:

if we can compute sub(H,G)

⇒ we can compute hom(F,G) for anyF ∈Spasm(H). Complexity ofhom(F,G) for anyF ∈Spasm(H) is a lower bound on the complexity ofsub(H,G).

(55)

Complexity applications

sub(H,G) = X

F∈Spasm(H)

βF hom(F,G)

Note: Every βF is nonzero.

Reductions:

Obvious:

if we can compute hom(F,G) for any F ∈Spasm(H)

⇒ we can compute sub(H,G).

Highly nontrivial:

if we can compute sub(H,G)

⇒ we can compute hom(F,G) for anyF ∈Spasm(H).

(56)

Complexity applications

sub(H,G) = X

F∈Spasm(H)

βF hom(F,G)

Note: Every βF is nonzero.

Reductions:

Obvious:

if we can compute hom(F,G) for any F ∈Spasm(H)

⇒ we can compute sub(H,G).

Highly nontrivial:

if we can compute sub(H,G)

(57)

Matrices

Fix an enumeration of graphs with≤k edges with nondecreasing number of edges.

Hom matrix: row i, column j ishom(Hi,Hj).

Submatrix: row i, columnj is sub(Hi,Hj).

Surj matrix: row i, columnj issurj(Hi,Hj).

Hom=Surj·Sub

The Hom matrix is invertible!

(58)

Matrices

Fix an enumeration of graphs with≤k edges with nondecreasing number of edges.

Hom matrix: row i, column j ishom(Hi,Hj).

Submatrix: row i, columnj is sub(Hi,Hj).

Surj matrix: row i, columnj issurj(Hi,Hj).

hom(H,G) =P

Fsurj(H,F)sub(F,G)

Hom=Surj·Sub

Hom = Surj · Sub

The Hom matrix is invertible!

(59)

Matrices

Fix an enumeration of graphs with≤k edges with nondecreasing number of edges.

Hom matrix: row i, column j ishom(Hi,Hj).

Submatrix: row i, columnj is sub(Hi,Hj).

Surj matrix: row i, columnj issurj(Hi,Hj).

hom(H,G) =P

Fsurj(H,F)sub(F,G)

Hom=Surj·Sub

Hom = Surj · Sub

H

G

(60)

Matrices

Fix an enumeration of graphs with≤k edges with nondecreasing number of edges.

Hom matrix: row i, column j ishom(Hi,Hj).

Submatrix: row i, columnj is sub(Hi,Hj).

Surj matrix: row i, columnj issurj(Hi,Hj).

hom(H,G) =P

Fsurj(H,F)sub(F,G)

Hom=Surj·Sub

Hom = Surj · Sub

(61)

One of the standard graph products:

Definition

G1×G2 has vertex set V(G1)×V(G2) and(v1,v2)and(v10,v20) adjacent inG1×G2 ⇐⇒ v1v10 ∈E(G1) andv2v20 ∈E(G2).

[missing figure]

Exercise:

hom(H,G1×G2) =hom(H,G1)·hom(H,G2)

(62)

Extracting a term

Lemma

Given an algorithm forsub(H,G) =P

F∈Spasm(H)βF hom(F,G) (withβF 6=0), we can compute hom(F,G) for any F ∈Spasm(H).

Use the algorithm onZ×G for every Z with ≤k =|E(H)|edges.

X

F∈Spasm(H)

βF ·hom(F,Z ×G) =bZ

HomT · =

bZ1

βF1·hom(F1,G)

βFt·hom(Ft,G) bZt

... ...

TheHommatrix is invertible, so we can solve this system of equations!

(63)

Extracting a term

Lemma

Given an algorithm forsub(H,G) =P

F∈Spasm(H)βF hom(F,G) (withβF 6=0), we can compute hom(F,G) for any F ∈Spasm(H).

Use the algorithm onZ×G for every Z with ≤k =|E(H)|edges.

X

F∈Spasm(H)

βF ·hom(F,Z)·hom(F,G) =bZ

HomT · =

βFt·hom(Ft,G) bZt

... ...

TheHommatrix is invertible, so we can solve this system of equations!

(64)

Extracting a term

Lemma

Given an algorithm forsub(H,G) =P

F∈Spasm(H)βF hom(F,G) (withβF 6=0), we can compute hom(F,G) for any F ∈Spasm(H).

Use the algorithm onZ×G for every Z with ≤k =|E(H)|edges.

X

F∈Spasm(H)

hom(F,Z)·βF ·hom(F,G) =bZ

HomT · =

bZ1

βF1·hom(F1,G)

βFt·hom(Ft,G) bZt

... ...

TheHommatrix is invertible, so we can solve this system of equations!

(65)

Extracting a term

Lemma

Given an algorithm forsub(H,G) =P

F∈Spasm(H)βF hom(F,G) (withβF 6=0), we can compute hom(F,G) for any F ∈Spasm(H).

Use the algorithm onZ×G for every Z with ≤k =|E(H)|edges.

X

F∈Spasm(H)

hom(F,Z)·βF ·hom(F,G) =bZ

HomT · =

bZ1

βF1·hom(F1,G)

βFt·hom(Ft,G) bZt

... ...

(66)

Extracting a term

Lemma

Given an algorithm forsub(H,G) =P

F∈Spasm(H)βF hom(F,G) (withβF 6=0), we can compute hom(F,G) for any F ∈Spasm(H).

Use the algorithm onZ×G for every Z with ≤k =|E(H)|edges.

X

F∈Spasm(H)

hom(F,Z)·βF ·hom(F,G) =bZ

HomT · =

bZ1

βF1·hom(F1,G)

... ...

(67)

Hardness results

Theorem

Countingk-matchings is W[1]-hard.

to counting 2 -matchings.

With standard techniques, we can show that there is no f(k)no(k/logk) time algorithm, assuming ETH.

For other counting problems, hardness boils down to finding a graph of large treewidth in the spasm.

(68)

Hardness results

Theorem

Countingk-matchings is W[1]-hard.

Proof: As Kk ∈Spasm(M(k2)), counting k-cliques can be reduced to counting k2

-matchings.

With standard techniques, we can show that there is no f(k)no(k/logk) time algorithm, assuming ETH.

For other counting problems, hardness boils down to finding a graph of large treewidth in the spasm.

(69)

Theorem

Countingk-matchings is W[1]-hard.

Proof: As Kk ∈Spasm(M(k2)), counting k-cliques can be reduced to counting k2

-matchings.

With standard techniques, we can show that there is no f(k)no(k/logk) time algorithm, assuming ETH.

For other counting problems, hardness boils down to finding a graph of large treewidth in the spasm.

(70)

Hardness results

Theorem

IfH is a class of graphs with unbounded vertex cover number, then

#Sub(H) is W[1]-hard.

Proof:

Let H0=S

H∈HSpasm(H).

Lemma: IfH has vertex cover numerk, thenSpasm(H) contains a graph with treewidth Ω(k).

As Hhas unbounded vertex cover number, H0 has unbounded treewidth.

(71)

Dichotomy result

Theorem

AssumingFPT6=W[1], for every recursively enumerable classH of graphs, the following are equivalent:

1 #Sub(H) is polynomial-time solvable.

2 #Sub(H) isFPTparameterized by |V(H)|.

3 H has bounded vertex cover number.

F

Complexity of hom(F,G)is well understood from earlier work: treewidth determines it.

Algorithmic result: bounded vc-number implies that treewidth is bounded in the spasm.

Hardness result:

1 ForF Spasm(H),hom(F,G)can be reduced tohom(H,G).

2 If vc-number is unbounded, then the spasm contains graphs of large treewidth.

(72)

Dichotomy result

Theorem

AssumingFPT6=W[1], for every recursively enumerable classH of graphs, the following are equivalent:

1 #Sub(H) is polynomial-time solvable.

2 #Sub(H) isFPTparameterized by |V(H)|.

3 H has bounded vertex cover number.

Ingredients:

Formula sub(H,G) =P

F∈Spasm(H)βF,Hhom(F,G).

Complexity of hom(F,G)is well understood from earlier work:

treewidth determines it.

Algorithmic result: bounded vc-number implies that

(73)

Similar approach for counting induced subgraphs.

Graph motif parameters: those that can be computed from counting induced subgraphs of bounded size.

Linear combination of homomorphisms seems to be the most fundamental form of description.

(74)

Advertisement

Postdoc positions available in parameterized algorithms and complexity!

Institute for Computer Science and Control Hungarian Academy of Sciences

Budapest, Hungary

Hivatkozások

KAPCSOLÓDÓ DOKUMENTUMOK

This result, together with presence of the extensional mylonites, implies that the study area evolved in an extensional stress regime following the thermal peak;

In a landmark paper [25] Harold Widom described the behavior of various extremal polynomials associated with a system of curves on the complex plane or with some measures on

.АПУ ^УРУ^уРУРУ ФААА^АЛУУТ^^ПУПУУрУ^УоААУЮУПУЯ^^ПУ^,, ATP^Aj. ypppíA.ААпург рррАтру уУррру.А ^^^AíM't^-jy f .КЛААуррру

[r]

[r]

We complement this result with a corresponding lower bound: if H is any recursively enumerable class of graphs with unbounded vertex-cover number, then #Sub(H) is

The concrete part of an FGI-compatible workflow is given by a set of DCI-independent concrete task representations (CTR) for each task type contained in its IWIR abstract work-

Droste &amp; Gastin [3, page 52] consider mc-rational and c-rational formal power series that are the semantics of mc-rational and c-rational expressions defined as follows: