Csr2011 june16 12_00_wagner

28
Graphs of Bounded Treewidth can be Canonized in AC 1 Fabian Wagner CSR 2011 Institut Theoretische Informatik, Universit¨ at Ulm, Germany [email protected] June 14-18, 2011
  • date post

    21-Oct-2014
  • Category

    Documents

  • view

    388
  • download

    0

description

 

Transcript of Csr2011 june16 12_00_wagner

Page 1: Csr2011 june16 12_00_wagner

Graphs of Bounded Treewidthcan be Canonized in AC1

Fabian Wagner∗

CSR 2011

∗Institut Theoretische Informatik, Universitat Ulm, [email protected]

June 14-18, 2011

Page 2: Csr2011 june16 12_00_wagner

1. Graph Isomorphism (GI)

Graph: Gi = (V ,Ei), vertices V = {1, . . . , n}, edges Ei ⊆ V × V

Isomorphism: G1∼= G2 iff ∃φ ∈ Sn such that ∀u, v ∈ V :

(u, v) ∈ E1 ⇔ (φ(u), φ(v)) ∈ E2

Graph Isomorphism: GI = {(G1,G2) | G1∼= G2}

Complete invariant: f : G 7→ Σ∗ s.t. f (G1) = f (G2) ⇔ G1∼= G2

Canonical form: f : G 7→ G s.t. f (G1) = f (G2) ∼= G1 ⇔ G1∼= G2

v4

v3

v2

v1

v0

G1 G2v0

v1

v2

v3

v4

Page 3: Csr2011 june16 12_00_wagner

1. Graph Isomorphism (GI)

Graph: Gi = (V ,Ei), vertices V = {1, . . . , n}, edges Ei ⊆ V × V

Isomorphism: G1∼= G2 iff ∃φ ∈ Sn such that ∀u, v ∈ V :

(u, v) ∈ E1 ⇔ (φ(u), φ(v)) ∈ E2

Graph Isomorphism: GI = {(G1,G2) | G1∼= G2}

Complete invariant: f : G 7→ Σ∗ s.t. f (G1) = f (G2) ⇔ G1∼= G2

Canonical form: f : G 7→ G s.t. f (G1) = f (G2) ∼= G1 ⇔ G1∼= G2

v4

v3

v2

v1

v0

G1 G2v0

v1

v2

v3

v4

φ

Page 4: Csr2011 june16 12_00_wagner

1. Graph Isomorphism (GI)

Graph: Gi = (V ,Ei), vertices V = {1, . . . , n}, edges Ei ⊆ V × V

Isomorphism: G1∼= G2 iff ∃φ ∈ Sn such that ∀u, v ∈ V :

(u, v) ∈ E1 ⇔ (φ(u), φ(v)) ∈ E2

Graph Isomorphism: GI = {(G1,G2) | G1∼= G2}

Complete invariant: f : G 7→ Σ∗ s.t. f (G1) = f (G2) ⇔ G1∼= G2

Canonical form: f : G 7→ G s.t. f (G1) = f (G2) ∼= G1 ⇔ G1∼= G2

v4

v3

v2

v1

v0

G1 G2v0

v1

v2

v3

v4

φ

Page 5: Csr2011 june16 12_00_wagner

1. Bounded Treewidth GraphsTree decomposition of width k :

D = ({Xi | i ∈ I},T = (I ,F ))

◮ every vertex in a bag Xi

◮ every edge in a bag Xi

◮ all bags which contain vertex v form a connected subtree

◮ treewidth k − 1 ⇔ bags have size ≤ k

bag

tree structure

size ≤ k

Page 6: Csr2011 june16 12_00_wagner

1. Bounded Treewidth graphs

w

v v

k-clique

u

k-tree:

subgraph

vconnect new vertex to a k-clique

k-tree partial k-tree, treewidth k graph:

Page 7: Csr2011 june16 12_00_wagner

1. Results

Bounded Treewidth graph (BTW-graph)

Known Results:

◮ Isomorphism: BTW-graphs in P [Bod90]

◮ Complete invariant: BTW-graphs in TC1 [GroVer06]

◮ Canonical labeling: BTW-graphs in TC2 [KobVer08]

New Results:

◮ Computation: tree decomposition in L [EJT10]

◮ Isomorphism: BTW-graphs in LogCFL [DTW10]

◮ Canonical labeling: BTW-graphs in AC1

Page 8: Csr2011 june16 12_00_wagner

1. Results

Restricted classes of BTW-graphs

Known Results:

◮ Canonical labeling: BTDW-graphs in L [DTW10]

◮ Canonical labeling: k-trees in L [KobKu09]

◮ Canonical labeling: partial 2-trees in L [ADK08]

◮ Canonical labeling: K3,3- and K5-free graphs in L [DNTW09]

→ partial 3-trees are K5-free

Open:

◮ Canonical labeling: partial 4-trees in L?

Page 9: Csr2011 june16 12_00_wagner

1. Complexity

P

DET

NP

L

NL

[Toran04]

SAC1=LogCFL

BTW-GI

k = 1:

k = 2:

k = 3:

[Lin92]

[ADK08]

[DNTW09]

AC1

NC1

AC0

[JKMT03]

GI

TC1

TC2

[KoKu09]

k-tree GI

[DTW10]

[GroVer06]

[KoVer08]

BTW-canonical labeling

partial k-treek ≤ 3

BTW-complete invariant

[JKMT03]

Page 10: Csr2011 june16 12_00_wagner

2. BTW-Canonization: ingredients

◮ Theorem: {G | G has treewidth ≤ k} in L [EJT10]

◮ for graph G , treewidth k ,

approximate tree decomposition: width 4k +3, depth O(log n)

Theorem: approximate tree decomposition in L [EJT10]

◮ number of bags: ≤ n4k+3 bags of size 4k + 3

◮ pre-computation in L:◮ all possible bags,◮ all split components of bags w.r.t. fixed root Xr

◮ all possible child bags w.r.t. fixed root Xr

Page 11: Csr2011 june16 12_00_wagner

2. BTW-Canonization: minimal description

Xr

X

X = {u, v ,w}

σ = (u v wu w v )

C (G ,X , σ) = 010 101 010 2(4k+3)2−|X |2uwv2(4k+3−|X |)⌈log n⌉ [ ]

C (G ,X , σ) = C0(G ,X , σ) C′0(G ,X , σ) [children]

G [X ]σ =

0 1 01 0 10 1 0

Definition: minimal description:

Page 12: Csr2011 june16 12_00_wagner

2. BTW-Canonization: inductive construction

...

... ... ...

X ′3

X1 X2

X

Xr

X

X1 X2 X3

C (G ,X , σ)

min min min

sort

C (G ,X1, σ1) C (G ,X2, σ2)

C 1 C 2 C 3

C (G ,X3, σ3) C (G ,X ′3, σ

′3)

minimal description for i -th split component:

C i = minXi ,σiC (G ,Xi , σi)[...]

Page 13: Csr2011 june16 12_00_wagner

2. BTW-Canonization: depth parameter

Ci = minXi ,σi

C (G ,Xi , σi , d)

C (G ,X3, σ3, d)C (G ,X1, σ1, d) C (G ,X2, σ2, d) C (G ,X ′

3, σ′

3, d)

...

... ... ...min min min

sort

C (G ,X , σ, d + 1)

C1

C2

C3

Xr

X

X1 X2 X3

d = 0

d = 1

d = 2

d = 3

minimal description for i -th split component:

Page 14: Csr2011 june16 12_00_wagner

2. BTW-Canonization: circuit depth

...

...min

...min

...

X1 X2 Xi

X

C (G ,Xi , σi , d − i)

C (G ,X , σ, d)

C (G ,X , σ, d − 1) canon ∨ sort

C (G ,X1, σ1, d − i)

C 1 C i

◮ minimum: first order definable, in AC0 [Imm99]

◮ sort: i children of equal size ≤ n/i :

with O(log i)-depth AC1-circuits

Page 15: Csr2011 june16 12_00_wagner

2. BTW-Canonization: example

no−canon

...

...

C (G ,Xi , σi , d)...

... ... ...min min min

C 1 C 2 C 3

canon ∨ sort

Page 16: Csr2011 june16 12_00_wagner

2. BTW-Canonization: example

leaf

bag with leafs

tree of depth log n

tree of depth 3

tree of depth 2

. . .

tree decomposition for:computes

d = c log n

C (G ,Xr , σr , c log n)

0

1

2

3

Page 17: Csr2011 june16 12_00_wagner

2. BTW-Canonization: example

. . .

. . .

. . .leaf

bag with leafs

tree of depth log n

tree of depth 3

tree of depth 2

. . .

tree decomposition for:computes

d = c log n

C (G ,Xr , σr , c log n)

d = 0

d = 1

d = 2

pre-computation

Page 18: Csr2011 june16 12_00_wagner

2. BTW-Canonization: example

. . .

. . .

. . .leaf

bag with leafs

tree of depth log n

tree of depth 3

tree of depth 2

. . .

tree decomposition for:computes

d = c log n

C (G ,Xr , σr , c log n)

d = 0

d = 1

d = 2

pre-computation

Page 19: Csr2011 june16 12_00_wagner

2. BTW-Canonization: example

. . .

. . .

pre-computation

leaf

bag with leafs

tree of depth log n

tree of depth 3

tree of depth 2

. . .

tree decomposition for:computes

d = c log n

. . .

. . .

C (G ,Xr , σr , c log n)

d = 0

d = 1

d = i

sort

Page 20: Csr2011 june16 12_00_wagner

2. BTW-Canonization: algorithm

input: graph G , treewidth k

output: minimal description C

1: for all bags Xr = {v1, . . . , v4k+3} ⊆ V in parallel do

2: for all σ ∈ Sym(Xr) in parallel do

3: C = min{C ,C (G ,Xr , σ, c log n)} recursively

4: relabel vertices in C in increasing order in L [DLN08]

5: return C → complete invariant

return new labels → canonical form

◮ C = 010101010222 uvw222 [0101010102222 xyw222 . . . ]

→ u = 1, v = 2,w = 3, x = 4, y = 5, . . .

Page 21: Csr2011 june16 12_00_wagner

2. BTW-Canonization: algorithm

input: graph G , treewidth k

output: canonical labeling

1: for all bags Xr = {v1, . . . , v4k+3} ⊆ V in parallel do

2: for all σ ∈ Sym(Xr) in parallel do

3: C = min{C ,C (G ,Xr , σ, c log n)} recursively

4: relabel vertices in C in increasing order in L [DLN08]

5: return C → complete invariant

return new labels → canonical form

◮ C = 010101010222 uvw222 [0101010102222 xyw222 . . . ]

→ u = 1, v = 2,w = 3, x = 4, y = 5, . . .

Page 22: Csr2011 june16 12_00_wagner

6. Tools for Canonization

Decomposition Reduction

3-connected planar components [DLN08]

NAuxPDA [DTW10]

AC1-circuit [Wag11]

tree decomposition [DTW10,Wag11]

3-connected component tree [DLNTW09,DNTW09]

2-connected component tree [DLNTW09,DNTW09]

four-connected component tree [DNTW09]

tree distance decomposition [DTW10]

BTW-Canon ≤ BTDW-Canon [DTW10]

constant size components [DTW10,Wag11]

→ analyse resources [Lin92]

colored tree [KK09]

tree representation of inverval graphs [KKLV10]

→ merge canons

logspace machine [Lin92]

Canonize Pieces Computational models

Page 23: Csr2011 june16 12_00_wagner
Page 24: Csr2011 june16 12_00_wagner

A. PlanarGI ∈ L - Canonize Biconnected Components

Isomorphism order S < T if [Lindell92]:

1. |S | < |T | or

2. |S | = |T | but #s < #t or

3. |S | = |T | and #s = #t = k but (S1, . . . ,Sk) < (T1, . . . ,Tk)

T t

canon(S) =( ((())) (()()) (. . . ) )

S s

S3S2 S1 T1 T2T3

Page 25: Csr2011 june16 12_00_wagner

A. PlanarGI ∈ L - Canonize Biconnected Components

Isomorphism order S < T if [Lindell92]:

1. |S | < |T | or

2. |S | = |T | but #s < #t or

3. |S | = |T | and #s = #t = k but (S1, . . . ,Sk) < (T1, . . . ,Tk)

T1 T2 T3S3S1

T tS s

≤≤ ≤ ≤

canon(S) =( ((())) (()()) (. . . ) )

≤ ≤

S2

≤ ≤

Page 26: Csr2011 june16 12_00_wagner

BTW-GI in LogCFL

◮ compute tree decomposition for G [Wanke94,GoLeSc02,EJT10]

◮ compute augmented tree Sr for G

◮ guess root r ′ in H, φ : Xr 7→ Xr ′

◮ if r ′, φ not consistent then reject

◮ recursion: (s1 ≤T · · · ≤T sl) ≤T (t1 ≤T · · · ≤T tl)

◮ return

...

augmented tree Sr

...s1 s2 sl

a1,1 a2,1 a2,k2 al,kl

r

graph Hgraph G

≤logm

Page 27: Csr2011 june16 12_00_wagner

BTW-GI in LogCFL

◮ compute tree decomposition for G [Wanke94,GoLeSc02,EJT10]

◮ compute augmented tree Sr for G

◮ guess root r ′ in H, φ : Xr 7→ Xr ′

◮ if r ′, φ not consistent then reject

◮ recursion: (s1 ≤T · · · ≤T sl) ≤T (t1 ≤T · · · ≤T tl)

◮ return

augmented tree Sr

...

...s1 s2 sl

a1,1 a2,1 a2,k2 al,kl

r

T ′

r

r ′

graph H

guess

graph G

φ

guess

Page 28: Csr2011 june16 12_00_wagner

BTW-GI in LogCFL◮ compute tree decomposition for G [Wanke94,GoLeSc02,EJT10]◮ compute augmented tree Sr for G◮ guess root r ′ in H, φ : Xr 7→ Xr ′

◮ if r ′, φ not consistent then reject◮ recursion: (s1 ≤T · · · ≤T sl) ≤T (t1 ≤T · · · ≤T tl)◮ return

guess

guess

≤T

≤T

augmented tree Sr

≤T ≤T

≤T

...

...

≤T

remember bags alongcomputation path

a2,k2 al,kl

r

graph G T ′

r

r ′

graph H

t1 t2 tl

a′2,1

guess ≤T + ≤lexdepth first search + ≤T

guess and extend φ

s1 s2 sl

a1,1 a2,1