timed pushdown automata and branching vector addition
play

Timed pushdown automata and branching vector addition systems S - PowerPoint PPT Presentation

Timed pushdown automata and branching vector addition systems S awomir Lasota University of Warsaw joint work with Lorenzo Clemente, Filip Mazowiecki and Ranko Lazic AVERTS 2016, Chennai 1 Definable sets offer a right setting for timed


  1. Timed automata are register automata with uninitialized clocks [Boja ń czyk, L. 2012] c ₁ := 0 0 < c ₁ < 2 (2 < c ₁ < 3) ∧ c ₂ := 0 (c ₂ = 1 ∨ c ₂ = 2) the only modifications of a clock: c:= t 0 < c ₂ -c ₁ < 2 c ₁ t t t c ₁ := t (2 < t-c ₁ < 3) ∧ 0 < t-c ₁ < 2 c ₂ := t (t-c ₂ = 1 ∨ t-c ₂ = 2) the guards use the structure (R, <, +1) e.g. 0 < t-c ₁ <2 iff c ₁ < t < c ₁ +2 10

  2. (<, +1)-definable sets dimension FO(<, +1) formula defines a subset of φ ( x 1 , . . . , x n ) n-tuples of reals, for instance φ ( x 1 , x 2 ) ∃ x 3 ( x 1 < x 3 ∧ x 2 = x 3 + 3) ≡ 11

  3. definable sets dimension FO(<, +1) formula defines a subset of φ ( x 1 , . . . , x n ) n-tuples of reals, for instance φ ( x 1 , x 2 ) ∃ x 3 ( x 1 < x 3 ∧ x 2 = x 3 + 3) ≡ 11

  4. definable sets dimension FO(<, +1) formula defines a subset of φ ( x 1 , . . . , x n ) n-tuples of reals, for instance φ ( x 1 , x 2 ) ∃ x 3 ( x 1 < x 3 ∧ x 2 = x 3 + 3) ≡ FO(<, +1) = QF(<, +1) = 11

  5. definable sets dimension FO(<, +1) formula defines a subset of φ ( x 1 , . . . , x n ) n-tuples of reals, for instance φ ( x 1 , x 2 ) ∃ x 3 ( x 1 < x 3 ∧ x 2 = x 3 + 3) ≡ _ ^ x i − x j ∈ I FO(<, +1) = QF(<, +1) = ij finite finite | {z } zone 11

  6. definable sets dimension FO(<, +1) formula defines a subset of φ ( x 1 , . . . , x n ) n-tuples of reals, for instance φ ( x 1 , x 2 ) ∃ x 3 ( x 1 < x 3 ∧ x 2 = x 3 + 3) ≡ _ ^ x i − x j ∈ I FO(<, +1) = QF(<, +1) = ij finite finite | {z } zone for instance: φ ( x 1 , x 2 ) x 1 + 3 < x 2 x 2 − x 1 ∈ (3 , ∞ ) ≡ ≡ 11

  7. Orbit-finiteness Automorphisms π of (R, <, +1) act on a π π definable set thus splitting it into orbits. π 12

  8. Orbit-finiteness Automorphisms π of (R, <, +1) act on a π π definable set thus splitting it into orbits. π For instance, (-1, ⅓ ) and (3, 4 ⅓ ) and (1 ⅓ , 3) are in the same orbit. 12

  9. Orbit-finiteness Automorphisms π of (R, <, +1) act on a π π definable set thus splitting it into orbits. π For instance, (-1, ⅓ ) and (3, 4 ⅓ ) and (1 ⅓ , 3) are in the same orbit. Example: orbit-infinite x 1 + 3 < x 2 x 2 − x 1 ∈ (3 , ∞ ) ≡ 12

  10. Orbit-finiteness Automorphisms π of (R, <, +1) act on a π π definable set thus splitting it into orbits. π For instance, (-1, ⅓ ) and (3, 4 ⅓ ) and (1 ⅓ , 3) are in the same orbit. Example: orbit-infinite x 1 + 3 < x 2 x 2 − x 1 ∈ (3 , ∞ ) ≡ orbit-finite x 1 + 3 < x 2 ≤ x 1 + 7 x 2 − x 1 ∈ (3 , 7] ≡ 12

  11. Orbit-finiteness Automorphisms π of (R, <, +1) act on a π π definable set thus splitting it into orbits. π For instance, (-1, ⅓ ) and (3, 4 ⅓ ) and (1 ⅓ , 3) are in the same orbit. Example: orbit-infinite x 1 + 3 < x 2 x 2 − x 1 ∈ (3 , ∞ ) ≡ orbit-finite x 1 + 3 < x 2 ≤ x 1 + 7 x 2 − x 1 ∈ (3 , 7] ≡ A definable set is orbit-finite iff it is defined using bounded intervals only 12

  12. Definable NFA • alphabet A • states Q • transitions δ ⊆ Q × A × Q • I, F ⊆ Q 13

  13. Definable NFA } • alphabet A • states Q (<, +1)-definable • transitions δ ⊆ Q × A × Q • I, F ⊆ Q 13

  14. Definable NFA • alphabet A φ A ( x 1 , . . . , x n ) • states Q φ Q ( x 1 , . . . , x m ) φ δ ( x 1 , . . . , x m + n + m ) • transitions δ ⊆ Q × A × Q φ I ( x 1 , . . . , x m ) , φ F ( x 1 , . . . , x m ) • I, F ⊆ Q 13

  15. Definable NFA } • alphabet A • states Q (<, +1)-definable • transitions δ ⊆ Q × A × Q φ A ( x 1 , . . . , x n ) • I, F ⊆ Q φ Q ( x 1 , . . . , x m ) φ δ ( x 1 , . . . , x m + n + m ) φ I ( x 1 , . . . , x m ) , φ F ( x 1 , . . . , x m ) 13

  16. Definable NFA } • alphabet A • states Q (<, +1)-definable • transitions δ ⊆ Q × A × Q φ A ( x 1 , . . . , x n ) • I, F ⊆ Q φ Q ( x 1 , . . . , x m ) φ δ ( x 1 , . . . , x m + n + m ) φ I ( x 1 , . . . , x m ) , φ F ( x 1 , . . . , x m ) Runs, acceptance, language recognized, etc. are defined exactly as for classical NFA! 13

  17. Definable NFA } } • alphabet A orbit-finite • states Q (<, +1)-definable • transitions δ ⊆ Q × A × Q φ A ( x 1 , . . . , x n ) • I, F ⊆ Q φ Q ( x 1 , . . . , x m ) φ δ ( x 1 , . . . , x m + n + m ) φ I ( x 1 , . . . , x m ) , φ F ( x 1 , . . . , x m ) Runs, acceptance, language recognized, etc. are defined exactly as for classical NFA! 13

  18. Register automata = definable NFA 0 < c ₂ -c ₁ < 2 c ₁ ⊥ ⊤ t t t c ₁ := t 0 < t-c ₁ < 2 (2 < t-c ₁ < 3) ∧ c ₂ := t (t-c ₂ = 1 ∨ t-c ₂ = 2) 14 ⊥

  19. Register automata = definable NFA 0 < c ₂ -c ₁ < 2 c ₁ ⊥ ⊤ t t t c ₁ := t 0 < t-c ₁ < 2 (2 < t-c ₁ < 3) ∧ c ₂ := t (t-c ₂ = 1 ∨ t-c ₂ = 2) states: Q = { ⊥ } ∪ R ∪ { (c ₁ , c ₂ ) ∊ R × R : 0 < c ₂ -c ₁ < 2 } ∪ { ⊤ } 14 ⊥

  20. Register automata = definable NFA 0 < c ₂ -c ₁ < 2 c ₁ ⊥ ⊤ t t t c ₁ := t 0 < t-c ₁ < 2 (2 < t-c ₁ < 3) ∧ c ₂ := t (t-c ₂ = 1 ∨ t-c ₂ = 2) states: Q = { ⊥ } ∪ R ∪ { (c ₁ , c ₂ ) ∊ R × R : 0 < c ₂ -c ₁ < 2 } ∪ { ⊤ } 𝜚 Q (c 0, c ₁ , c ₂ ) ≡ c 0 = c ₁ = c ₂ ∨ c 0 +1 = c ₁ = c ₂ ∨ c 0 +2 = c ₁ < c ₂ < c ₁ +2 ∨ c 0 +3 = c ₁ = c ₂ 14 ⊥

  21. Register automata = definable NFA 0 < c ₂ -c ₁ < 2 c ₁ ⊥ ⊤ t t t c ₁ := t 0 < t-c ₁ < 2 (2 < t-c ₁ < 3) ∧ c ₂ := t (t-c ₂ = 1 ∨ t-c ₂ = 2) states: Q = { ⊥ } ∪ R ∪ { (c ₁ , c ₂ ) ∊ R × R : 0 < c ₂ -c ₁ < 2 } ∪ { ⊤ } 𝜚 Q (c 0, c ₁ , c ₂ ) ≡ c 0 = c ₁ = c ₂ ∨ c 0 +1 = c ₁ = c ₂ ∨ c 0 +2 = c ₁ < c ₂ < c ₁ +2 ∨ c 0 +3 = c ₁ = c ₂ transitions: 𝜀 = { ( ⊥ , t , c ₁ ’ ) : c ₁ ’ = t } ∪ 14 ⊥

  22. Register automata = definable NFA 0 < c ₂ -c ₁ < 2 c ₁ ⊥ ⊤ t t t c ₁ := t 0 < t-c ₁ < 2 (2 < t-c ₁ < 3) ∧ c ₂ := t (t-c ₂ = 1 ∨ t-c ₂ = 2) states: Q = { ⊥ } ∪ R ∪ { (c ₁ , c ₂ ) ∊ R × R : 0 < c ₂ -c ₁ < 2 } ∪ { ⊤ } 𝜚 Q (c 0, c ₁ , c ₂ ) ≡ c 0 = c ₁ = c ₂ ∨ c 0 +1 = c ₁ = c ₂ ∨ c 0 +2 = c ₁ < c ₂ < c ₁ +2 ∨ c 0 +3 = c ₁ = c ₂ transitions: 𝜀 = { ( ⊥ , t , c ₁ ’ ) : c ₁ ’ = t } ∪ { (c ₁ , t , (c ₁ ’ , c ₂ ’)) : 0 < t -c ₁ < 2 ∧ c ₁ = c ₁ ’ ∧ c ₂ ’ = t } ∪ 14 ⊥

  23. Register automata = definable NFA 0 < c ₂ -c ₁ < 2 c ₁ ⊥ ⊤ t t t c ₁ := t 0 < t-c ₁ < 2 (2 < t-c ₁ < 3) ∧ c ₂ := t (t-c ₂ = 1 ∨ t-c ₂ = 2) states: Q = { ⊥ } ∪ R ∪ { (c ₁ , c ₂ ) ∊ R × R : 0 < c ₂ -c ₁ < 2 } ∪ { ⊤ } 𝜚 Q (c 0, c ₁ , c ₂ ) ≡ c 0 = c ₁ = c ₂ ∨ c 0 +1 = c ₁ = c ₂ ∨ c 0 +2 = c ₁ < c ₂ < c ₁ +2 ∨ c 0 +3 = c ₁ = c ₂ transitions: 𝜀 = { ( ⊥ , t , c ₁ ’ ) : c ₁ ’ = t } ∪ { (c ₁ , t , (c ₁ ’ , c ₂ ’)) : 0 < t -c ₁ < 2 ∧ c ₁ = c ₁ ’ ∧ c ₂ ’ = t } ∪ { ((c ₁ , c ₂ ), t , ⊤ ) : (2 < t -c ₁ < 3) ∧ (t-c ₂ = 1 ∨ t-c ₂ = 2) } 14 ⊥

  24. Register automata = definable NFA 0 < c ₂ -c ₁ < 2 c ₁ ⊥ ⊤ t t t c ₁ := t 0 < t-c ₁ < 2 (2 < t-c ₁ < 3) ∧ c ₂ := t (t-c ₂ = 1 ∨ t-c ₂ = 2) states: Q = { ⊥ } ∪ R ∪ { (c ₁ , c ₂ ) ∊ R × R : 0 < c ₂ -c ₁ < 2 } ∪ { ⊤ } 𝜚 Q (c 0, c ₁ , c ₂ ) ≡ c 0 = c ₁ = c ₂ ∨ c 0 +1 = c ₁ = c ₂ ∨ c 0 +2 = c ₁ < c ₂ < c ₁ +2 ∨ c 0 +3 = c ₁ = c ₂ transitions: 𝜀 = { ( ⊥ , t , c ₁ ’ ) : c ₁ ’ = t } ∪ { (c ₁ , t , (c ₁ ’ , c ₂ ’)) : 0 < t -c ₁ < 2 ∧ c ₁ = c ₁ ’ ∧ c ₂ ’ = t } ∪ { ((c ₁ , c ₂ ), t , ⊤ ) : (2 < t -c ₁ < 3) ∧ (t-c ₂ = 1 ∨ t-c ₂ = 2) } 𝜚 𝜀 (c 0, c ₁ , c ₂ , t , c 0 ’, c ₁ ’, c ₂ ’) ≡ ... 14 ⊥

  25. Timed automata vs. definable NFA Definable NFA are like updatable timed automata [Bouyer, Duford, Fleury 2000], but: 15

  26. Timed automata vs. definable NFA Definable NFA are like updatable timed automata [Bouyer, Duford, Fleury 2000], but: • in every location, clock valuations are restricted by an orbit-finite constraint (invariant) 15

  27. Timed automata vs. definable NFA Definable NFA are like updatable timed automata [Bouyer, Duford, Fleury 2000], but: • in every location, clock valuations are restricted by an orbit-finite constraint (invariant) • number of clocks may vary from one location to another 15

  28. Timed automata vs. definable NFA Definable NFA are like updatable timed automata [Bouyer, Duford, Fleury 2000], but: • in every location, clock valuations are restricted by an orbit-finite constraint (invariant) • number of clocks may vary from one location to another • the input needs not be monotonic (but can be enforced to be) nor non-negative 15

  29. Timed automata vs. definable NFA Definable NFA are like updatable timed automata [Bouyer, Duford, Fleury 2000], but: • in every location, clock valuations are restricted by an orbit-finite constraint (invariant) • number of clocks may vary from one location to another • the input needs not be monotonic (but can be enforced to be) nor non-negative • alphabet letters may be tuples of timestamps 15

  30. Timed automata vs. definable NFA definable NFA timed automata with uninitialized clocks 16

  31. Timed automata vs. definable NFA definable NFA deterministic timed automata deterministic with uninitialized clocks 16

  32. Timed automata vs. definable NFA definable NFA deterministic timed automata deterministic with uninitialized clocks { integer 16

  33. Timed automata vs. definable NFA definable NFA deterministic timed automata deterministic with uninitialized clocks { integer { < 2 16

  34. Timed automata vs. definable NFA definable NFA deterministic timed automata deterministic with uninitialized clocks { integer { { < 2 < 2 16

  35. Timed automata vs. definable NFA definable NFA deterministic timed automata deterministic with uninitialized clocks { integer { { ... < 2 < 2 16

  36. Timed automata vs. definable NFA definable NFA deterministic timed automata deterministic with uninitialized clocks { integer minimal automata for languages of deterministic timed automata with uninitialized clocks { { ... < 2 < 2 16

  37. Timed automata vs. definable NFA closed under definable NFA deterministic minimization timed automata deterministic with uninitialized clocks { integer minimal automata for languages of deterministic timed automata with uninitialized clocks { { ... < 2 < 2 16

  38. Timed automata vs. definable NFA closed under definable NFA deterministic minimization timed automata deterministic with uninitialized clocks { integer minimal automata for languages of deterministic timed automata with uninitialized clocks { { ... < 2 < 2 Theorem: [Boja ń czyk, L. 2012] Deterministic definable NFA do minimize. 16

  39. Timed automata vs. definable NFA closed under definable NFA deterministic minimization timed automata deterministic with uninitialized clocks { integer minimal automata for languages of deterministic timed automata with uninitialized clocks { { ... < 2 < 2 Theorem: [Boja ń czyk, L. 2012] Deterministic definable NFA do minimize. Likewise, if FO(<, +1) is replaced by FO(<, +). 16

  40. In search of lost definition • Motivation • Definable NFA • Definable PDA • The core problem: equations over sets of integers • Branching vector addition systems in dimension 1 17

  41. In search of lost definition • Motivation • Definable NFA PDA re-interpreted in definable sets • Definable PDA • The core problem: equations over sets of integers • Branching vector addition systems in dimension 1 17

  42. Definable PDA • I, F ⊆ Q } } • alphabet A orbit-finite • states Q • stack alphabet S (<, +1)definable • push ⊆ Q × A × Q × S • pop ⊆ Q × S × A × Q 18

  43. Definable PDA } • alphabet A φ A ( x 1 , . . . , x n ) orbit-finite • states Q φ Q ( x 1 , . . . , x m ) • stack alphabet S φ S ( x 1 , . . . , x k ) • push ⊆ Q × A × Q × S φ push ( x 1 , . . . , x m + n + m + k ) φ pop ( x 1 , . . . , x m + k + n + m ) • pop ⊆ Q × S × A × Q φ I ( x 1 , . . . , x m ) , φ F ( x 1 , . . . , x m ) • I, F ⊆ Q 18

  44. Definable PDA } } • alphabet A orbit-finite • states Q • stack alphabet S (<, +1)-definable • push ⊆ Q × A × Q × S φ A ( x 1 , . . . , x n ) • pop ⊆ Q × S × A × Q φ Q ( x 1 , . . . , x m ) φ S ( x 1 , . . . , x k ) • I, F ⊆ Q φ push ( x 1 , . . . , x m + n + m + k ) φ pop ( x 1 , . . . , x m + k + n + m ) φ I ( x 1 , . . . , x m ) , φ F ( x 1 , . . . , x m ) Acceptance defined as for classical PDA. 18

  45. Example input alphabet: A = R ⨄ { ε } language: "ordered palindromes of even length over reals" states: stack alphabet: transitions: initial state: accepting state: 19

  46. Example input alphabet: A = R ⨄ { ε } language: "ordered palindromes of even length over reals" Q = R ⨄ {init, finish, acc} states: stack alphabet: transitions: initial state: init acc accepting state: 19

  47. Example input alphabet: A = R ⨄ { ε } language: "ordered palindromes of even length over reals" Q = R ⨄ {init, finish, acc} states: S = R ⨄ { ⊥ } stack alphabet: transitions: initial state: init acc accepting state: 19

  48. Example input alphabet: A = R ⨄ { ε } language: "ordered palindromes of even length over reals" Q = R ⨄ {init, finish, acc} states: S = R ⨄ { ⊥ } stack alphabet: transitions: push ⊆ Q × A × Q × S (init, ε , t, ⊥ ) in state init , without (t, u, u, u) t < u reading input, change (t, u, finish, u) t < u state to an arbitrary real t, and push ⊥ on stack initial state: init acc accepting state: 19

  49. Example input alphabet: A = R ⨄ { ε } language: "ordered palindromes of even length over reals" Q = R ⨄ {init, finish, acc} states: S = R ⨄ { ⊥ } stack alphabet: transitions: push ⊆ Q × A × Q × S (init, ε , t, ⊥ ) in state finish , pop a real (t, u, u, u) t < u t from stack, read the (t, u, finish, u) t < u same t from input, and stay in the same state pop ⊆ Q × S × A × Q (finish, t, t, finish) (finish, ⊥ , ε , acc ) initial state: init acc accepting state: 19

  50. Definable prefix rewriting } } • alphabet A orbit-finite • states Q (<, +1)-definable • stack alphabet S • ρ ⊆ Q × S* × A × Q × S* • I, F ⊆ Q 20

  51. Definable prefix rewriting } } • alphabet A orbit-finite • states Q (<, +1)-definable • stack alphabet S ≤ m ≤ n • ρ ⊆ Q × S* × A × Q × S* • I, F ⊆ Q 20

  52. Definable prefix rewriting } } • alphabet A orbit-finite • states Q (<, +1)-definable • stack alphabet S ≤ m ≤ n • ρ ⊆ Q × S* × A × Q × S* • I, F ⊆ Q Acceptance defined as for classical prefix rewriting. 20

  53. Definable context-free grammars } } • nonterminal symbols S orbit-finite • terminal symbols A definable in FO(<, +1) • an initial nonterminal symbol • ρ ⊆ S × (S ⨄ A)* 21 orbit-finite set of symbols S

  54. Definable context-free grammars } } • nonterminal symbols S orbit-finite • terminal symbols A definable in FO(<, +1) • an initial nonterminal symbol ≤ n • ρ ⊆ S × (S ⨄ A)* Generated language defined as for classical PDA. 21 orbit-finite set of symbols S

  55. Expressiveness of definable models [Clemente, L. 2015] prefix rewriting PDA CFG PDA with timeless stack (finite stack alphabet) dense-timed PDA with uninitialized clocks [Abdulla, Atig, Stenman 2012] 22

  56. Expressiveness of definable models [Clemente, L. 2015] prefix rewriting palindromes PDA CFG PDA with timeless stack (finite stack alphabet) dense-timed PDA with uninitialized clocks [Abdulla, Atig, Stenman 2012] 22

Recommend


More recommend