Courcelles Theorem Made Dynamic Patricia Bouyer-Decitre 1,2 , Vincent - - PowerPoint PPT Presentation

courcelle s theorem made dynamic
SMART_READER_LITE
LIVE PREVIEW

Courcelles Theorem Made Dynamic Patricia Bouyer-Decitre 1,2 , Vincent - - PowerPoint PPT Presentation

Courcelles Theorem Made Dynamic Patricia Bouyer-Decitre 1,2 , Vincent Jug 1,2,3 & Nicolas Markey 1,2,4 1: CNRS 2: ENS Paris-Saclay (LSV) 3: UPEM (LIGM) 4: Rennes (IRISA) 03/10/2017 P. Bouyer-Decitre, V. Jug & N. Markey


slide-1
SLIDE 1

Courcelle’s Theorem Made Dynamic

Patricia Bouyer-Decitre1,2, Vincent Jugé1,2,3 & Nicolas Markey1,2,4

1: CNRS — 2: ENS Paris-Saclay (LSV) — 3: UPEM (LIGM) — 4: Rennes (IRISA)

03/10/2017

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-2
SLIDE 2

Contents

1

Dynamic Complexity of Decision Problems

2

Courcelle’s Theorem

3

Making Courcelle’s Theorem Dynamic

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-3
SLIDE 3

Dynamic Complexity of Decision Problems

Modulo 3 Decision

Input: Elements x1, x2, . . . , xn of F3 Output: Yes if x1 ` x2 ` . . . ` xn “ 0 — No otherwise

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-4
SLIDE 4

Dynamic Complexity of Decision Problems

Modulo 3 Decision

Input: Elements x1, x2, . . . , xn of F3 Output: Yes if x1 ` x2 ` . . . ` xn “ 0 — No otherwise Solving this problem. . . Static world: membership in a regular language

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-5
SLIDE 5

Dynamic Complexity of Decision Problems

Modulo 3 Decision

Input: Elements x1, x2, . . . , xn of F3 Output: Yes if x1 ` x2 ` . . . ` xn “ 0 — No otherwise Solving this problem. . . Static world: membership in a regular language Dynamic world: what if some element xk changes?

§ Maintain predicates Si ” “x1 ` x2 ` . . . ` xn “ i ” for i P F3 § Update the values of S0, S1, S2 when xk changes § Use the new value of S0 and answer the problem

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-6
SLIDE 6

Dynamic Complexity of Decision Problems

Modulo 3 Decision

Input: Elements x1, x2, . . . , xn of F3 Output: Yes if x1 ` x2 ` . . . ` xn “ 0 — No otherwise Solving this problem. . . Static world: membership in a regular language Dynamic world: what if some element xk changes?

§ Maintain predicates Si ” “x1 ` x2 ` . . . ` xn “ i ” for i P F3 § Update the values of S0, S1, S2 when xk changes § Use the new value of S0 and answer the problem

How complex is it? Static world: linear time Dynamic world:

§ Easy initial instance px1 “ x2 “ . . . “ xn “ 0q: constant time § Each update: constant time

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-7
SLIDE 7

Dynamic Complexity of Decision Problems

Reachability in DAGs

Input: Directed acyclic graph G “ pV , Eq & two vertices s, t P V Output: Yes if D path from s to t in G — No otherwise

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-8
SLIDE 8

Dynamic Complexity of Decision Problems

Reachability in DAGs

Input: Directed acyclic graph G “ pV , Eq & two vertices s, t P V Output: Yes if D path from s to t in G — No otherwise Solving this problem. . . Static world: use your favorite graph exploration algorithm Dynamic world: what if edge u Ñ v is inserted/deleted?

§ Maintain a predicate Rpx, yq ” pD path from x to y in Gq for x, y P V § Update the values of Rpx, yq when u Ñ v is inserted/deleted § Use the new value of Rps, tq and answer the problem

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-9
SLIDE 9

Dynamic Complexity of Decision Problems

Reachability in DAGs

Input: Directed acyclic graph G “ pV , Eq & two vertices s, t P V Output: Yes if D path from s to t in G — No otherwise Solving this problem. . . Static world: use your favorite graph exploration algorithm Dynamic world: what if edge u Ñ v is inserted/deleted?

§ Maintain a predicate Rpx, yq ” pD path from x to y in Gq for x, y P V § Update the values of Rpx, yq when u Ñ v is inserted/deleted § Use the new value of Rps, tq and answer the problem

How complex is it? Static world: linear time Dynamic world:

§ Easy initial edgeless instance: FO formulæ § Each update: FO formulæ

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-10
SLIDE 10

Dynamic Complexity of Decision Problems

Reachability in DAGs

Input: Directed acyclic graph G “ pV , Eq & two vertices s, t P V Output: Yes if D path from s to t in G — No otherwise Solving this problem. . . Static world: use your favorite graph exploration algorithm Dynamic world: what if edge u Ñ v is inserted/deleted?

§ Maintain a predicate Rpx, yq ” pD path from x to y in Gq for x, y P V § Update the values of Rpx, yq when u Ñ v is inserted/deleted § Use the new value of Rps, tq and answer the problem

How complex is it? Static world: linear time Dynamic world:

§ Easy initial edgeless instance: FO formulæ (parallel constant time) § Each update: FO formulæ (parallel constant time)

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-11
SLIDE 11

FO formulæ ñ parallel «constant time φ “ Dx.@y.ψpx, yq_ψpy, xq

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-12
SLIDE 12

FO formulæ ñ parallel «constant time φ “ Dx.@y.ψpx, yq_ψpy, xq

ψpe1, e1q ψpe1, e2q ψpe2, e1q ψpe2, e2q

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-13
SLIDE 13

FO formulæ ñ parallel «constant time φ “ Dx.@y.ψpx, yq_ψpy, xq

ψpe1, e1q ψpe1, e2q ψpe2, e1q ψpe2, e2q

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-14
SLIDE 14

FO formulæ ñ parallel «constant time φ “ Dx.@y.ψpx, yq_ψpy, xq _ _ _ _

x “e1 y “e1 x “e1 y “e2 x “e2 y “e1 x “e2 y “e2

ψpe1, e1q ψpe1, e2q ψpe2, e1q ψpe2, e2q

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-15
SLIDE 15

FO formulæ ñ parallel «constant time φ “ Dx.@y.ψpx, yq_ψpy, xq _ _ _ _

x “e1 y “e1 x “e1 y “e2 x “e2 y “e1 x “e2 y “e2

^ ^

x “e1 x “e2

ψpe1, e1q ψpe1, e2q ψpe2, e1q ψpe2, e2q

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-16
SLIDE 16

FO formulæ ñ parallel «constant time φ “ Dx.@y.ψpx, yq_ψpy, xq _ _ _ _

x “e1 y “e1 x “e1 y “e2 x “e2 y “e1 x “e2 y “e2

^ ^

x “e1 x “e2

_

ψpe1, e1q ψpe1, e2q ψpe2, e1q ψpe2, e2q

φ

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-17
SLIDE 17

Dynamic Complexity of Decision Problems

Reachability in DAGs with FO formulæ

Initialization (on the edgeless graph): Rpx, yq Ð px “ yq Rpx, yq Ð Rpx, yq Ð Rpx, yq Ð Rpx, yq Ð

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-18
SLIDE 18

Dynamic Complexity of Decision Problems

Reachability in DAGs with FO formulæ

Initialization (on the edgeless graph): Update after inserting the edge u Ñ v u v x y Rpx, yq Ð Rpx, yq Rpx, yq Ð Rpx, yq Ð Rpx, yq Ð Rpx, yq Ð

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-19
SLIDE 19

Dynamic Complexity of Decision Problems

Reachability in DAGs with FO formulæ

Initialization (on the edgeless graph): Update after inserting the edge u Ñ v: u v x y Rpx, yq Ð Rpx, yq_ pRpx, uq ^ Rpv, yqq Rpx, yq Ð Rpx, yq Ð Rpx, yq Ð

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-20
SLIDE 20

Dynamic Complexity of Decision Problems

Reachability in DAGs with FO formulæ

Initialization (on the edgeless graph): Update after inserting the edge u Ñ v: Update after deleting the edge u Ñ v u v x y Rpx, yq Ð pRpx, yq ^ Rpx, uqq Rpx, yq Ð Rpx, yq Ð Rpx, yq Ð Rpx, yq Ð

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-21
SLIDE 21

Dynamic Complexity of Decision Problems

Reachability in DAGs with FO formulæ

Initialization (on the edgeless graph): Update after inserting the edge u Ñ v: Update after deleting the edge u Ñ v u v x y Rpx, yq Ð pRpx, yq ^ Rpx, uqq_ pRpx, yq ^ Rpy, uqq Rpx, yq Ð Rpx, yq Ð Rpx, yq Ð

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-22
SLIDE 22

Dynamic Complexity of Decision Problems

Reachability in DAGs with FO formulæ

Initialization (on the edgeless graph): Update after inserting the edge u Ñ v: Update after deleting the edge u Ñ v: u v a b x y Rpx, yq Ð pRpx, yq ^ Rpx, uqq_ pRpx, yq ^ Rpy, uqq_ pDa.Db.Rpx, aq ^ Rpb, yq^ ppa Ñ bq ^ pa, bq ‰ pu, vq^ pRpa, uq ^ Rpb, uqq

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-23
SLIDE 23

Dynamic Complexity of Decision Problems

Reachability in DAGs with FO formulæ

Initialization (on the edgeless graph): Update after inserting the edge u Ñ v: Update after deleting the edge u Ñ v: ñ You can even maintain paths from s to t!

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-24
SLIDE 24

Dynamic Complexity of Decision Problems

Reachability in DAGs with FO formulæ

Initialization (on the edgeless graph): Update after inserting the edge u Ñ v: Update after deleting the edge u Ñ v:

Definition (Dong & Su & Topor 93 – Patnaik & Immerman 97)

A decision problem with updates is in C-DynFO if D predicates s.t.: every predicate can be initialized in C every predicate can be updated in FO

  • ne predicate is the goal predicate
  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-25
SLIDE 25

Dynamic Complexity of Decision Problems

Reachability in DAGs with FO formulæ

Initialization (on the edgeless graph): Update after inserting the edge u Ñ v: Update after deleting the edge u Ñ v:

Definition (Dong & Su & Topor 93 – Patnaik & Immerman 97)

A decision problem with updates is in DynFO if D predicates s.t.: every predicate can be initialized in FO every predicate can be updated in FO

  • ne predicate is the goal predicate
  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-26
SLIDE 26

Dynamic Complexity of Decision Problems

Some more problems in DynFO Reachability in undirected graphs (Patnaik & Immerman 97) Integer multiplication (Patnaik & Immerman 97) Context-free language membership (Gelade et al. 08) Distance in undirected graphs (Grädel & Siebertz 12) Reachability in directed graphs (Datta et al. 15) Some problems that might be in DynFO Distance in directed graphs Next hop / path maintenance in directed graphs Shortest path maintenance in undirected graphs

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-27
SLIDE 27

Dynamic Complexity of Decision Problems

Some more problems in LogSpace-DynFO Reachability in undirected graphs (Patnaik & Immerman 97) Integer multiplication (Patnaik & Immerman 97) Context-free language membership (Gelade et al. 08) Distance in undirected graphs (Grädel & Siebertz 12) Reachability in directed graphs (Datta et al. 15) MSO model checking on graphs of small tree-width (Bouyer et al. 17 – Datta et al. 17) Some problems that might be in DynFO Distance in directed graphs Next hop / path maintenance in directed graphs Shortest path maintenance in undirected graphs

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-28
SLIDE 28

Contents

1

Dynamic Complexity of Decision Problems

2

Courcelle’s Theorem

3

Making Courcelle’s Theorem Dynamic

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-29
SLIDE 29

Tree Decompositions and Tree Width

Definition #1 (Halin 76 – Robertson & Seymour 84)

A tree decomposition of a graph G “ pV , Eq is formed of: a tree T “ pV, Eq a mapping T : V ÞÑ 2V , such that:

§ for every edge px, yq of G, we have tx, yu Ď Tpvq for some node v P V § for every vertex x of G, the set tv P V | x P Tpvqu is a sub-tree of T

The width of the tree decomposition is maxt#Tpvq | v P Vu ´ 1.

v1 v2 v3 v4 v5 v6 v7 v8 v9 v1 v2 v3 v4 v5 v6 v7 v8 v9 v1 v2 v3 v4 v5 v6 v7 v8 v9 v1 v2 v3 v4 v5 v6 v7 v8 v9 v1 v2 v3 v4 v5 v6 v7 v8 v9 v1 v2 v3 v4 v5 v6 v7 v8 v9 v1 v2 v3 v4 v5 v6 v7 v8 v9

Width = 2

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-30
SLIDE 30

Tree Decompositions and Tree Width

Definition #2 (Halin 76 – Robertson & Seymour 84)

The tree width of a graph G is the minimal width of all of G’s tree decompositions.

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-31
SLIDE 31

Tree Decompositions and Tree Width

Definition #2 (Halin 76 – Robertson & Seymour 84)

The tree width of a graph G is the minimal width of all of G’s tree decompositions. Tree width of some specific graphs Graph Width Tree 1 Cycle 2 Kn n ´ 1 Ka,b minta, bu Za ˆ Zb minta, bu

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-32
SLIDE 32

Tree Decompositions and Tree Width

Definition #2 (Halin 76 – Robertson & Seymour 84)

The tree width of a graph G is the minimal width of all of G’s tree decompositions. Tree width of some specific graphs Graph Width Tree 1 Cycle 2 Kn n ´ 1 Ka,b minta, bu Za ˆ Zb minta, bu

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-33
SLIDE 33

Tree Decompositions and Tree Width

Definition #2 (Halin 76 – Robertson & Seymour 84)

The tree width of a graph G is the minimal width of all of G’s tree decompositions. Tree width of some specific graphs Graph Width Tree 1 Cycle 2 Kn n ´ 1 Ka,b minta, bu Za ˆ Zb minta, bu

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-34
SLIDE 34

Tree Decompositions and Tree Width

Definition #2 (Halin 76 – Robertson & Seymour 84)

The tree width of a graph G is the minimal width of all of G’s tree decompositions. Tree width of some specific graphs Graph Width Tree 1 Cycle 2 Kn n ´ 1 Ka,b minta, bu Za ˆ Zb minta, bu

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-35
SLIDE 35

Tree Decompositions and Tree Width

Definition #2 (Halin 76 – Robertson & Seymour 84)

The tree width of a graph G is the minimal width of all of G’s tree decompositions. Tree width of some specific graphs Graph Width Tree 1 Cycle 2 Kn n ´ 1 Ka,b minta, bu Za ˆ Zb minta, bu

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-36
SLIDE 36

Monadic Second-Order Formulæ on Directed Graphs

Is the graph G “ pV , Eq Undirected? @s.@t.ps, tq P E ñ pt, sq P E

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-37
SLIDE 37

Monadic Second-Order Formulæ on Directed Graphs

Is the graph G “ pV , Eq Undirected? @s.@t.ps, tq P E ñ pt, sq P E Strongly connected?

@X.@a.@b.a P X ^ b R X ñ pDs.Dt.s P X ^ t R X ^ ps, tq P Eq

3-colorable?

DV1.DV2.DV3.V “ V1 Z V2 Z V3 ^ @s.@t. Ź3

i“1ps P Vi ^ t P Viq ñ ps, tq R E

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-38
SLIDE 38

Monadic Second-Order Formulæ on Directed Graphs

Is the partitioned graph G “ pVA Z VB, Eq Undirected? @s.@t.ps, tq P E ñ pt, sq P E Strongly connected?

@X.@a.@b.a P X ^ b R X ñ pDs.Dt.s P X ^ t R X ^ ps, tq P Eq

3-colorable?

DV1.DV2.DV3.V “ V1 Z V2 Z V3 ^ @s.@t. Ź3

i“1ps P Vi ^ t P Viq ñ ps, tq R E

Properly partitioned? @s.@t.ps, tq P E ñ ps P VA ô t P VBq Winning for Alice (in the reachability game s Ñ t)? D Alice’s strategy s.t. @ Barbara’s strategies, A wins

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-39
SLIDE 39

Monadic Second-Order Formulæ on Directed Graphs

Is the partitioned graph G “ pVA Z VB, Eq Undirected? @s.@t.ps, tq P E ñ pt, sq P E Strongly connected?

@X.@a.@b.a P X ^ b R X ñ pDs.Dt.s P X ^ t R X ^ ps, tq P Eq

3-colorable?

DV1.DV2.DV3.V “ V1 Z V2 Z V3 ^ @s.@t. Ź3

i“1ps P Vi ^ t P Viq ñ ps, tq R E

Properly partitioned? @s.@t.ps, tq P E ñ ps P VA ô t P VBq Winning for Alice (in the reachability game s Ñ t)? D Alice’s strategy s.t. @ Barbara’s strategies, A wins

Theorem (Karp 72)

Checking a given MSO formula on finite structures is NP-hard.

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-40
SLIDE 40

Courcelle’s Theorem

Theorem (Courcelle 90, Bodlaender 96 & Eberfeld et al. 10)

For all κ, checking a given MSO formula on n-vertex structures of tree width at most κ is feasible in time Opnq and space Oplogpnqq.

The constant in the Op¨q may be huge!

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-41
SLIDE 41

Courcelle’s Theorem

Theorem (Courcelle 90, Bodlaender 96 & Eberfeld et al. 10)

For all κ, checking a given MSO formula on n-vertex structures of tree width at most κ is feasible in time Opnq and space Oplogpnqq.

The constant in the Op¨q may be huge!

Proof Idea

1 Compute a tree decomposition of G of width κ 2 Run a tree automaton on the tree decomposition

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-42
SLIDE 42

Contents

1

Dynamic Complexity of Decision Problems

2

Courcelle’s Theorem

3

Making Courcelle’s Theorem Dynamic

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-43
SLIDE 43

Result Framework

Check MSO satisfaction in low dynamic complexity

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-44
SLIDE 44

Result Framework

Check MSO satisfaction in LogSpace-DynFO

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-45
SLIDE 45

Result Framework

Check MSO satisfaction in LogSpace-DynFO Too hard in general!

Look for restricted cases

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-46
SLIDE 46

Result Framework

Check MSO satisfaction in LogSpace-DynFO Too hard in general!

Look for restricted cases

Use a maximal graph G‹ “ pV , E‹q?

Added edges belong to E‹

Still too hard in general!

Look for further restricted cases

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-47
SLIDE 47

Result Framework

Check MSO satisfaction in LogSpace-DynFO Too hard in general!

Look for restricted cases

Use a maximal graph G‹ “ pV , E‹q?

Added edges belong to E‹

Still too hard in general!

Look for further restricted cases

Do it for graphs G‹ with tree width at most κ!

Copy Courcelle

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-48
SLIDE 48

Result Framework

Check MSO satisfaction in LogSpace-DynFO Too hard in general!

Look for restricted cases

Use a maximal graph G‹ “ pV , E‹q?

Added edges belong to E‹

Still too hard in general!

Look for further restricted cases

Do it for graphs G‹ with tree width at most κ!

Copy Courcelle

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-49
SLIDE 49

Result Framework

Check MSO satisfaction in LogSpace-DynFO Too hard in general!

Look for restricted cases

Use a maximal graph G‹ “ pV , E‹q?

Added edges belong to E‹

Still too hard in general!

Look for further restricted cases

Do it for graphs G‹ with tree width at most κ!

Copy Courcelle

Bonus: Compute witnesses of D formulæ

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-50
SLIDE 50

Sketch of Proof

1 Compute a nice tree decomposition from G

(linear-size, log-depth binary tree)

n6 n5 n7 n3 n4 n1 ROOT n2

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-51
SLIDE 51

Sketch of Proof

1 Compute a nice tree decomposition from G

(linear-size, log-depth binary tree)

2 Run a (bottom-up, deterministic) automaton

n6 n5 n7 n3 n4 n1 ROOT n2

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-52
SLIDE 52

Sketch of Proof

1 Compute a nice tree decomposition from G

(linear-size, log-depth binary tree)

2 Run a (bottom-up, deterministic) automaton sequentially 3 Identify its run with a path in an acyclic graph G’

n6 n5 n7 n3 n4 n1 ROOT n2 H

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-53
SLIDE 53

Sketch of Proof

1 Compute a nice tree decomposition from G

(linear-size, log-depth binary tree)

2 Run a (bottom-up, deterministic) automaton sequentially 3 Identify its run with a path in an acyclic graph G’

n6 n5 n7 n3 n4 n1 ROOT n2 H q7

λ7

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-54
SLIDE 54

Sketch of Proof

1 Compute a nice tree decomposition from G

(linear-size, log-depth binary tree)

2 Run a (bottom-up, deterministic) automaton sequentially 3 Identify its run with a path in an acyclic graph G’

n6 n5 n7 n3 n4 n1 ROOT n2 H q7

λ7

q6 q7

λ6

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-55
SLIDE 55

Sketch of Proof

1 Compute a nice tree decomposition from G

(linear-size, log-depth binary tree)

2 Run a (bottom-up, deterministic) automaton sequentially 3 Identify its run with a path in an acyclic graph G’

n6 n5 n7 n3 n4 n1 ROOT n2 H q7

λ7

q6 q7

λ6

q5

λ5

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-56
SLIDE 56

Sketch of Proof

1 Compute a nice tree decomposition from G

(linear-size, log-depth binary tree)

2 Run a (bottom-up, deterministic) automaton sequentially 3 Identify its run with a path in an acyclic graph G’

n6 n5 n7 n3 n4 n1 ROOT n2 H q7

λ7

q6 q7

λ6

q5

λ5

q4 q5

λ4

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-57
SLIDE 57

Sketch of Proof

1 Compute a nice tree decomposition from G

(linear-size, log-depth binary tree)

2 Run a (bottom-up, deterministic) automaton sequentially 3 Identify its run with a path in an acyclic graph G’

n6 n5 n7 n3 n4 n1 ROOT n2 H q7

λ7

q6 q7

λ6

q5

λ5

q4 q5

λ4

q3

λ3

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-58
SLIDE 58

Sketch of Proof

1 Compute a nice tree decomposition from G

(linear-size, log-depth binary tree)

2 Run a (bottom-up, deterministic) automaton sequentially 3 Identify its run with a path in an acyclic graph G’

n6 n5 n7 n3 n4 n1 ROOT n2 H q7

λ7

q6 q7

λ6

q5

λ5

q4 q5

λ4

q3

λ3

q2 q3

λ2

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-59
SLIDE 59

Sketch of Proof

1 Compute a nice tree decomposition from G

(linear-size, log-depth binary tree)

2 Run a (bottom-up, deterministic) automaton sequentially 3 Identify its run with a path in an acyclic graph G’

n6 n5 n7 n3 n4 n1 ROOT n2 H q7

λ7

q6 q7

λ6

q5

λ5

q4 q5

λ4

q3

λ3

q2 q3

λ2

n1

λ1

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-60
SLIDE 60

Sketch of Proof

1 Compute a nice tree decomposition from G

(linear-size, log-depth binary tree)

2 Run a (bottom-up, deterministic) automaton sequentially 3 Identify its run with a path in an acyclic graph G’

n6 n5 n7 n3 n4 n1 ROOT n2 H q7

λ7

q6 q7

λ6

q5

λ5

q4 q5

λ4

q3

λ3

q2 q3

λ2

n1

λ1 ?

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-61
SLIDE 61

Sketch of Proof

1 Compute a nice tree decomposition from G

(linear-size, log-depth binary tree)

2 Run a (bottom-up, deterministic) automaton sequentially 3 Identify its run with a Dyck path in an acyclic graph G’

Golden rule: 1 change in G = O(1) changes in G’

n6 n5 n7 n3 n4 n1 ROOT n2 H q7

λ7

q6 q7

λ6

q5

λ5

q4 q5

λ4

q3

λ3

q2 q3

λ2

n1

λ1 ?

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-62
SLIDE 62

Sketch of Proof

Dyck words = Well-parenthesized words Are these words Dyck? ( [ ( ) ] ( ) ) ( [ ( ] ) ) ( [ ( ) ] ( ) ]

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-63
SLIDE 63

Sketch of Proof

Dyck words = Well-parenthesized words Are these words Dyck? ( [ ( ) ] ( ) ) ( [ ( ] ) ) ( [ ( ) ] ( ) ]

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-64
SLIDE 64

Sketch of Proof

Dyck words = Well-parenthesized words Are these words Dyck? ( [ ( ) ] ( ) ) ( [ ( ] ) ) ( [ ( ) ] ( ) ]

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-65
SLIDE 65

Sketch of Proof

Dyck words = Well-parenthesized words Are these words Dyck? ( [ ( ) ] ( ) ) ( [ ( ] ) ) ( [ ( ) ] ( ) ]

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-66
SLIDE 66

Sketch of Proof

Dyck words = Well-parenthesized words Are these words Dyck? ( [ ( ) ] ( ) ): ( [ ( ] ) ) ( [ ( ) ] ( ) ]

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-67
SLIDE 67

Sketch of Proof

Dyck words = Well-parenthesized words Are these words Dyck? ( [ ( ) ] ( ) ): ( [ ( ] ) ) ( [ ( ) ] ( ) ]

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-68
SLIDE 68

Sketch of Proof

Dyck words = Well-parenthesized words Are these words Dyck? ( [ ( ) ] ( ) ): ( [ ( ] ) ): ✗ ( [ ( ) ] ( ) ]

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-69
SLIDE 69

Sketch of Proof

Dyck words = Well-parenthesized words Are these words Dyck? ( [ ( ) ] ( ) ): ( [ ( ] ) ): ✗ ( [ ( ) ] ( ) ]

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-70
SLIDE 70

Sketch of Proof

Dyck words = Well-parenthesized words Are these words Dyck? ( [ ( ) ] ( ) ): ( [ ( ] ) ): ✗ ( [ ( ) ] ( ) ]

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-71
SLIDE 71

Sketch of Proof

Dyck words = Well-parenthesized words Are these words Dyck? ( [ ( ) ] ( ) ): ( [ ( ] ) ): ✗ ( [ ( ) ] ( ) ]

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-72
SLIDE 72

Sketch of Proof

Dyck words = Well-parenthesized words Are these words Dyck? ( [ ( ) ] ( ) ): ( [ ( ] ) ): ✗ ( [ ( ) ] ( ) ]: ✗

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-73
SLIDE 73

Sketch of Proof

Dyck words = Well-parenthesized words Are these words Dyck? ( [ ( ) ] ( ) ): ( [ ( ] ) ): ✗ ( [ ( ) ] ( ) ]: ✗ Dyck paths = Paths labeled with Dyck words v1 v2 v3 v4

) ( , [ [ ]

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-74
SLIDE 74

Sketch of Proof

Dyck words = Well-parenthesized words Are these words Dyck? ( [ ( ) ] ( ) ): ( [ ( ] ) ): ✗ ( [ ( ) ] ( ) ]: ✗ Dyck paths = Paths labeled with Dyck words v1 v2 v3 v4

0 , 1 1 1

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-75
SLIDE 75

Sketch of Proof

Dyck words = Well-parenthesized words Are these words Dyck? ( [ ( ) ] ( ) ): ( [ ( ] ) ): ✗ ( [ ( ) ] ( ) ]: ✗ Dyck paths = Paths labeled with Dyck words v1 v2 v3 v4

0 , 1 1 1

v4

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-76
SLIDE 76

Sketch of Proof

Dyck words = Well-parenthesized words Are these words Dyck? ( [ ( ) ] ( ) ): ( [ ( ] ) ): ✗ ( [ ( ) ] ( ) ]: ✗ Dyck paths = Paths labeled with Dyck words v1 v2 v3 v4

0 , 1 1 1

v3

1

Ý Ñ v4

1

Ý Ñ v2

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-77
SLIDE 77

Sketch of Proof

Dyck words = Well-parenthesized words Are these words Dyck? ( [ ( ) ] ( ) ): ( [ ( ] ) ): ✗ ( [ ( ) ] ( ) ]: ✗ Dyck paths = Paths labeled with Dyck words v1 v2 v3 v4

0 , 1 1 1

v2 Ý Ñ v3

1

Ý Ñ v4

1

Ý Ñ v2 Ý Ñ v1

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-78
SLIDE 78

Sketch of Proof

Dyck words = Well-parenthesized words Are these words Dyck? ( [ ( ) ] ( ) ): ( [ ( ] ) ): ✗ ( [ ( ) ] ( ) ]: ✗ Dyck paths = Paths labeled with Dyck words v1 v2 v3 v4

0 , 1 1 1

v3

1

Ý Ñ v4

1

Ý Ñ v2 Ý Ñ v3

1

Ý Ñ v4

1

Ý Ñ v2 Ý Ñ v1

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-79
SLIDE 79

Sketch of Proof

Dyck words = Well-parenthesized words Are these words Dyck? ( [ ( ) ] ( ) ): ( [ ( ] ) ): ✗ ( [ ( ) ] ( ) ]: ✗ Dyck paths = Paths labeled with Dyck words v1 v2 v3 v4

0 , 1 1 1

v3

1

Ý Ñ v4

1

Ý Ñ v2 Ý Ñ v3

1

Ý Ñ v4

1

Ý Ñ v2 Ý Ñ v1

Theorem (Weber & Schwentick 05 – Bouyer et al. 16)

Computing endpoints of Dyck paths in acyclic graphs is in DynFO and we can maintain such paths.

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-80
SLIDE 80

Sketch of Proof

Dyck words = Paths on a pushdown graph Memory update when reading the symbol ℓ1

m1 m2 m3 m1

1

m1

2

m1

3

  • ld

memory lnewl memory

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-81
SLIDE 81

Sketch of Proof

Dyck words = Paths on a pushdown graph Memory update when reading the symbol ℓ2

m1 m2 m3 m1

1

m1

2

m1

3

  • ld

memory lnewl memory

when reading ℓ1 m1 Ñ m1

2

m2 Ñ m1

1

m3 Ñ m1

2

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-82
SLIDE 82

Sketch of Proof

Dyck words = Paths on a pushdown graph Memory update when reading the symbol ℓ?

m1 m2 m3 m1

1

m1

2

m1

3

  • ld

memory lnewl memory

when reading ℓ1 m1 Ñ m1

2

m2 Ñ m1

1

m3 Ñ m1

2

when reading ℓ2 m1 Ñ m1

2

m2 Ñ m1

3

m3 Ñ m1

1

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-83
SLIDE 83

Sketch of Proof

Dyck words = Paths on a pushdown graph Memory update when reading the symbol ℓ1

m1 m2 m3 m1

1

m1

2

m1

3

  • ld

memory lnewl memory

m1 m2 m3

ℓ1 ℓ2

m2 m1,m3 m3 m1 m2

input symbol

when reading ℓ1 m1 Ñ m1

2

m2 Ñ m1

1

m3 Ñ m1

2

when reading ℓ2 m1 Ñ m1

2

m2 Ñ m1

3

m3 Ñ m1

1

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-84
SLIDE 84

Sketch of Proof

Dyck words = Paths on a pushdown graph Memory update when reading the symbol ℓ2

m1 m2 m3 m1

1

m1

2

m1

3

  • ld

memory lnewl memory

m1 m2 m3

ℓ1 ℓ2

m2 m1,m3 m3 m1 m2

input symbol

when reading ℓ1 m1 Ñ m1

2

m2 Ñ m1

1

m3 Ñ m1

2

when reading ℓ2 m1 Ñ m1

2

m2 Ñ m1

3

m3 Ñ m1

1

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-85
SLIDE 85

Future work

Some problems to investigate: Parity games with n priorities (« mean-payoff games) Nash equilibria with n players

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-86
SLIDE 86

Future work

Some problems to investigate: Parity games with n priorities (« mean-payoff games) Nash equilibria with n players Computing good path or tree decompositions in PTIME-DynFO

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-87
SLIDE 87

Future work

Some problems to investigate: Parity games with n priorities (« mean-payoff games) Nash equilibria with n players Computing good path or tree decompositions in PTIME-DynFO Model checking MSO in all graphs of tree width κ

(Datta et al. 17)

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic

slide-88
SLIDE 88

Future work

Some problems to investigate: Parity games with n priorities (« mean-payoff games) Nash equilibria with n players Computing good path or tree decompositions in PTIME-DynFO Model checking MSO in all graphs of tree width κ

(Datta et al. 17)

  • P. Bouyer-Decitre, V. Jugé & N. Markey

Courcelle’s Theorem Made Dynamic