a pumping lemma for pushdown graphs of any level pawe
play

A Pumping Lemma for Pushdown Graphs of Any Level Pawe Parys - PowerPoint PPT Presentation

A Pumping Lemma for Pushdown Graphs of Any Level Pawe Parys University of Warsaw Higher order pushdown systems/automata [Maslov 74, 76] A 1-stack is an ordinary stack. A 2-stack (resp. (n + 1)-stack) is a stack of 1-stacks (resp. n-stack).


  1. A Pumping Lemma for Pushdown Graphs of Any Level Paweł Parys University of Warsaw

  2. Higher order pushdown systems/automata [Maslov 74, 76] A 1-stack is an ordinary stack. A 2-stack (resp. (n + 1)-stack) is a stack of 1-stacks (resp. n-stack). Operations on 2-stacks: s i are 1-stacks. Top of stack is on right. push 2 : [s 1 ...s i-1 s i ] -> [s 1 ...s i-1 s i s i ] pop 2 : [s 1 ...s i-1 s i ] -> [s 1 ...s i-1 ] push 1 x : [s 1 ...s i-1 [a 1 ...a j-1 a j ]] -> [s 1 ...s i-1 [a 1 ...a j-1 a j x]] pop 1 : [s 1 ...s i-1 [a 1 ...a j-1 a j ]] -> [s 1 ...s i-1 [a 1 ...a j-1 ]] An order-n PDA has an order-n stack, and has push i and pop i for each 1 ≤ i ≤ n.

  3. Higher order pushdown systems Higher order pushdown systems can be used as: ● word language recognizers ● tree generators ● graph generators

  4. Higher order pushdown systems Higher order pushdown systems can be used as: ● word language recognizers ● tree generators ● graph generators We concentrate here on graph generators. ● The same results can be used for tree generators and deterministic word language recognizers, ● but NOT for (nondeterministic) word language recognizers.

  5. Higher order pushdown graphs How higher order pushdown systems generate graphs? We consider  -contractions of configuration graphs. a a a b initial a c ● drop unreachable configurations ● nodes = configurations after letter-edges ● edges = any number of epsilons, one letter

  6. Higher order pushdown graphs How higher order pushdown systems generate graphs? We consider  -contractions of configuration graphs. a a a b initial a c ● drop unreachable configurations ● nodes = configurations after letter-edges ● edges = any number of epsilons, one letter

  7. Higher order pushdown graphs How higher order pushdown systems generate graphs? We consider  -contractions of configuration graphs. a a a b b a b initial a c a c ● drop unreachable configurations ● nodes = configurations after letter-edges ● edges = any number of epsilons, one letter

  8. Higher order pushdown graphs Example: {a k b m : m ≤ 2 k } b a b b a b b b b a b b b b b b b b a ...

  9. b Higher order pushdown graphs a b b Example: {a k b m : m ≤ 2 k } a b b b b a b b b b b b b b ● level 2 a ... ● 3 stack symbols:  , x, # (?,q 1 ,a,push 1 (x),q 1 ) x x x  Input: a a a

  10. b Higher order pushdown graphs a b b Example: {a k b m : m ≤ 2 k } a b b b b a b b b b b b b b ● level 2 a ... ● 3 stack symbols:  , x, # (?,q 1 ,a,push 1 (x),q 1 ) # (?,q 1 ,  ,push 1 (#),q 2 ) x x (#,q 2 ,  ,push 2 , q 3 ) x x (#,q 3 ,  ,pop 1 , q 4 ) x x   Input: a a a

  11. b Higher order pushdown graphs a b b Example: {a k b m : m ≤ 2 k } a b b b b a b b b b b b b b ● level 2 a ... ● 3 stack symbols:  , x, # (?,q 1 ,a,push 1 (x),q 1 ) # (?,q 1 ,  ,push 1 (#),q 2 ) x (#,q 2 ,  ,push 2 , q 3 ) x x x (#,q 3 ,  ,pop 1 , q 4 ) x x x (x,q 4 ,  ,pop 1 , q 5 )    (?,q 5 ,  ,push 2 , q 4 ) Input: a a a

  12. b Higher order pushdown graphs a b b Example: {a k b m : m ≤ 2 k } a b b b b a b b b b b b b b ● level 2 a ... ● 3 stack symbols:  , x, # (?,q 1 ,a,push 1 (x),q 1 ) # (?,q 1 ,  ,push 1 (#),q 2 ) x (#,q 2 ,  ,push 2 , q 3 ) x x (#,q 3 ,  ,pop 1 , q 4 ) x x x x (x,q 4 ,  ,pop 1 , q 5 )     (?,q 5 ,  ,push 2 , q 4 ) Input: a a a

  13. b Higher order pushdown graphs a b b Example: {a k b m : m ≤ 2 k } a b b b b a b b b b b b b b ● level 2 a ... ● 3 stack symbols:  , x, # (?,q 1 ,a,push 1 (x),q 1 ) # (?,q 1 ,  ,push 1 (#),q 2 ) x (#,q 2 ,  ,push 2 , q 3 ) x x (#,q 3 ,  ,pop 1 , q 4 ) x x x (x,q 4 ,  ,pop 1 , q 5 )      (?,q 5 ,  ,push 2 , q 4 ) Input: a a a

  14. b Higher order pushdown graphs a b b Example: {a k b m : m ≤ 2 k } a b b b b a b b b b b b b b ● level 2 a ... ● 3 stack symbols:  , x, # (?,q 1 ,a,push 1 (x),q 1 ) # (?,q 1 ,  ,push 1 (#),q 2 ) x (#,q 2 ,  ,push 2 , q 3 ) x x (#,q 3 ,  ,pop 1 , q 4 ) x x x (x,q 4 ,  ,pop 1 , q 5 )     (?,q 5 ,  ,push 2 , q 4 ) Input: a a a b (  ,q 4 ,b,pop 2 , q 4 )

  15. b Higher order pushdown graphs a b b Example: {a k b m : m ≤ 2 k } a b b b b a b b b b b b b b ● level 2 a ... ● 3 stack symbols:  , x, # (?,q 1 ,a,push 1 (x),q 1 ) # (?,q 1 ,  ,push 1 (#),q 2 ) x (#,q 2 ,  ,push 2 , q 3 ) x x (#,q 3 ,  ,pop 1 , q 4 ) x x x (x,q 4 ,  ,pop 1 , q 5 )    (?,q 5 ,  ,push 2 , q 4 ) Input: a a a b b (  ,q 4 ,b,pop 2 , q 4 )

  16. b Higher order pushdown graphs a b b Example: {a k b m : m ≤ 2 k } a b b b b a b b b b b b b b ● level 2 a ... ● 3 stack symbols:  , x, # (?,q 1 ,a,push 1 (x),q 1 ) # (?,q 1 ,  ,push 1 (#),q 2 ) x (#,q 2 ,  ,push 2 , q 3 ) x (#,q 3 ,  ,pop 1 , q 4 ) x (x,q 4 ,  ,pop 1 , q 5 )  (?,q 5 ,  ,push 2 , q 4 ) Input: a a a b b b b b b b b (  ,q 4 ,b,pop 2 , q 4 ) stack with k letters x ⇒ 2 k letters b stack with 0 letters x ⇒ 2 0 letters b proof: stack with k letters x ⇒ 2 stacks with k-1 letters x

  17. Higher order pushdown graphs Example: {a k b m : m ≤ 2 k } - system of level 2 Similarly: 2 k {a k b m : m ≤ 2 } - system of level 3 2 k 2 {a k b m : m ≤ 2 } - system of level 4 ....

  18. Higher order pushdown systems Other characterizations: ● trees generated by safe recursion schemes of level n (Knapik, Niwiński, Urzyczyn 2002)

  19. Higher order pushdown systems Other characterizations: ● trees generated by safe recursion schemes of level n ● Caucal hierarchy: trees graphs level 0 unfolding finite graphs (lev 0) MSO-interpretation unfolding level 1 level 1 MSO-interpretation unfolding level 2 level 2 .... ....

  20. Higher order pushdown systems Other characterizations: ● trees generated by safe recursion schemes of level n ● Caucal hierarchy: trees graphs level 0 unfolding finite graphs (lev 0) MSO-interpretation unfolding level 1 level 1 MSO-interpretation unfolding level 2 level 2 .... .... ● they have decidable MSO theory (both trees and graphs)

  21. Higher order pushdown graphs But is a given graph generated by a level-n pushdown system? NO YES a pumping lemma give example system would be useful

  22. Higher order pushdown graphs But is a given graph generated by a level-n pushdown system? NO YES a pumping lemma give example system would be useful Known pumping lemmas for level 2: ● Hayashi (1973) – pumping lemma for word languages ● Gilman (1996) – shrinking lemma for word languages ● Kartzow (2011) – pumping lemma for (collapsible) graphs For arbitrary level: ● Blumensath (2008) – pumping lemma for graphs incorrect proof

  23. Higher order pushdown graphs Our pumping lemma: G – finitely-branching pushdown graph of level n Then there exists a constant C G such that: if c – configuration reachable by k edges from the initial one such that a path of length exp n-1 (k . C G ) starts in c then there exist arbitrary long paths starting in c n 2 x 2 ... exp n-1 (k . C G ) exp n (x) = 2 k initial c

  24. Higher order pushdown graphs Our pumping lemma: G – finitely-branching pushdown graph of level n Then there exists a constant C G such that: if c – configuration reachable by k edges from the initial one such that a path of length exp n-1 (k . C GL ) starts in c then there exist arbitrary long paths starting in c, ending in the same state n 2 x 2 ... exp n-1 (k . C G ) exp n (x) = 2 k q q initial c q q

  25. Higher order pushdown graphs Our pumping lemma: G – finitely-branching pushdown graph of level n L – regular language Then there exists a constant C GL such that: if c – configuration reachable by k edges from the initial one such that a path from L of length exp n-1 (k . C GL ) starts in c then there exist arbitrary long paths from L starting in c, ending in the same state n 2 x 2 ... exp n-1 (k . C G ) exp n (x) = 2 k q initial c L L q L q

  26. Higher order pushdown graphs Example: {a k b m : m ≤ exp n-1 (k)} - is a graph of level n {a k b m : m ≤ exp n-1 ( f(k). k)} - is NOT a graph of level n if f(k) unbounded

  27. Higher order pushdown graphs Example: {a k b m : m ≤ exp n-1 (k)} - is a graph of level n {a k b m : m ≤ exp n-1 ( f(k). k)} - is NOT a graph of level n if f(k) unbounded Proof: Choose k such that exp n-1 (f(k) . k)-1 ≥ exp n-1 ((k+1)C G ) exp n-1 ((k+1) . C G ) k initial a a a a b

  28. Higher order pushdown graphs Our pumping lemma – more insight: G – finitely-branching pushdown graph of level n part 1 c – configuration reachable by m edges from the initial one. Then the size of every k-stack of c is at most exp k-1 (m . C GL ) part 2 c – configuration such that the size of every k-stack of c is at most exp k-1 (m . C GL ), and a path of length exp n-1 (k . C G ) starts in c Then there exist arbitrary long paths starting in c.

Recommend


More recommend