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

timed pushdown automata and branching vector addition
SMART_READER_LITE
LIVE PREVIEW

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


slide-1
SLIDE 1

Sławomir Lasota

Timed pushdown automata and branching vector addition systems

joint work with Lorenzo Clemente, Filip Mazowiecki and Ranko Lazic University of Warsaw

AVERTS 2016, Chennai

1

slide-2
SLIDE 2

Definable sets

  • ffer a right setting for timed models of computation, like

timed automata, or timed pushdown automata.

2

slide-3
SLIDE 3

Definable sets

  • ffer a right setting for timed models of computation, like

timed automata, or timed pushdown automata.

2

Definable PDA

have decidable non-emptiness problem, by reduction to an extension of BVASS in dimension 1.

slide-4
SLIDE 4

Plan

3

  • Motivation
  • Definable NFA
  • Definable PDA
  • The core problem: equations over sets of integers
  • Branching vector addition systems in dimension 1
slide-5
SLIDE 5
  • reals
  • rationals
  • integers }

dense time discrete time

Time domain

any choice of time domain is fine

4

slide-6
SLIDE 6
  • reals
  • rationals
  • integers }

dense time discrete time

Time domain

any choice of time domain is fine

4

slide-7
SLIDE 7
  • reals
  • rationals
  • integers }

dense time discrete time

Time domain

any choice of time domain is fine No restriction to non-negative!

4

slide-8
SLIDE 8

Let input alphabet be reals

  • reals
  • rationals
  • integers }

dense time discrete time

Time domain

any choice of time domain is fine No restriction to non-negative!

4

slide-9
SLIDE 9

Let input alphabet be reals Timed automata assume monotonic input words :

  • reals
  • rationals
  • integers }

dense time discrete time

Time domain

any choice of time domain is fine No restriction to non-negative!

4

slide-10
SLIDE 10

Timed automata

with uninitialized clocks [Alur, Dill 1990]

5

slide-11
SLIDE 11

Timed automata

with uninitialized clocks [Alur, Dill 1990]

5

?

slide-12
SLIDE 12

Timed automata

with uninitialized clocks

input alphabet = reals

[Alur, Dill 1990]

5

slide-13
SLIDE 13

Timed automata

with uninitialized clocks

c₁ := 0 input alphabet = reals

[Alur, Dill 1990]

5

slide-14
SLIDE 14

Timed automata

with uninitialized clocks

c₁ := 0 0 < c₁ < 2 c₂ := 0 input alphabet = reals

[Alur, Dill 1990]

5

slide-15
SLIDE 15

Timed automata

with uninitialized clocks

c₁ := 0 0 < c₁ < 2 c₂ := 0 (2 < c₁ < 3) ∧ (c₂ = 1 ∨ c₂ = 2) input alphabet = reals

[Alur, Dill 1990]

5

slide-16
SLIDE 16

Timed automata

with uninitialized clocks

c₁ := 0 0 < c₁ < 2 c₂ := 0 (2 < c₁ < 3) ∧ (c₂ = 1 ∨ c₂ = 2) input alphabet = reals

the automaton accepts words t₁ t₂ t₃ ∈ R³ such that t₁ t₂ t₃ [Alur, Dill 1990]

5

slide-17
SLIDE 17

Timed automata

with uninitialized clocks

c₁ := 0 0 < c₁ < 2 c₂ := 0 (2 < c₁ < 3) ∧ (c₂ = 1 ∨ c₂ = 2) input alphabet = reals

the automaton accepts words t₁ t₂ t₃ ∈ R³ such that t₁ t₂ t₃

{

0..2 [Alur, Dill 1990]

5

slide-18
SLIDE 18

Timed automata

with uninitialized clocks

c₁ := 0 0 < c₁ < 2 c₂ := 0 (2 < c₁ < 3) ∧ (c₂ = 1 ∨ c₂ = 2) input alphabet = reals

the automaton accepts words t₁ t₂ t₃ ∈ R³ such that t₁ t₂ t₃

{

0..2

{

2..3 [Alur, Dill 1990]

5

slide-19
SLIDE 19

Timed automata

with uninitialized clocks

c₁ := 0 0 < c₁ < 2 c₂ := 0 (2 < c₁ < 3) ∧ (c₂ = 1 ∨ c₂ = 2) input alphabet = reals

the automaton accepts words t₁ t₂ t₃ ∈ R³ such that t₁ t₂ t₃

{

1 or 2

{

0..2

{

2..3 [Alur, Dill 1990]

5

slide-20
SLIDE 20

Deterministic timed automata don’t minimize

t₁ t₂ t₃

{

1 or 2

{

0..2

{

2..3

c₁ := 0 0 < c₁ < 2 c₂ := 0 (2 < c₁ < 3) ∧ (c₂ = 1 ∨ c₂ = 2)

6

slide-21
SLIDE 21

Deterministic timed automata don’t minimize

⅓ 2⅓ 2⅓ 1⅓

t₁ t₂ t₃

{

1 or 2

{

0..2

{

2..3

c₁ := 0 0 < c₁ < 2 c₂ := 0 (2 < c₁ < 3) ∧ (c₂ = 1 ∨ c₂ = 2)

6

slide-22
SLIDE 22

Deterministic timed automata don’t minimize

⅓ 2⅓ 2⅓ 1⅓

t₁ t₂ t₃

{

1 or 2

{

0..2

{

2..3

c₁ := 0 0 < c₁ < 2 c₂ := 0 (2 < c₁ < 3) ∧ (c₂ = 1 ∨ c₂ = 2) (c₁=0, c₂=⅓) ≡ (c₁=0, c₂=1⅓)

6

slide-23
SLIDE 23

Towards timed pushdown automata

7

slide-24
SLIDE 24
  • timed automata [Alur, Dill 1990]

Towards timed pushdown automata

7

slide-25
SLIDE 25
  • timed automata [Alur, Dill 1990]
  • pushdown timed automata [Bouajjani, Echahed, Robbana 1994]

Towards timed pushdown automata

finite stack alphabet

7

slide-26
SLIDE 26
  • timed automata [Alur, Dill 1990]
  • pushdown timed automata [Bouajjani, Echahed, Robbana 1994]
  • dense-timed pushdown automata [Abdulla, Atig, Stenman 2012]

Towards timed pushdown automata

finite stack alphabet

  • clocks can be pushed onto stack
  • the emptiness problem EXPTIME-c

7

slide-27
SLIDE 27
  • timed automata [Alur, Dill 1990]
  • pushdown timed automata [Bouajjani, Echahed, Robbana 1994]
  • dense-timed pushdown automata [Abdulla, Atig, Stenman 2012]
  • recursive timed automata

[Trivedi, Wojtczak 2010], [Benerecetti, Minopoli, Peron 2010]

Towards timed pushdown automata

finite stack alphabet

  • clocks can be pushed onto stack
  • the emptiness problem EXPTIME-c

7

slide-28
SLIDE 28
  • timed automata [Alur, Dill 1990]
  • pushdown timed automata [Bouajjani, Echahed, Robbana 1994]
  • dense-timed pushdown automata [Abdulla, Atig, Stenman 2012]
  • recursive timed automata

[Trivedi, Wojtczak 2010], [Benerecetti, Minopoli, Peron 2010]

Towards timed pushdown automata

finite stack alphabet

  • clocks can be pushed onto stack
  • the emptiness problem EXPTIME-c

7

Theorem 1: [Clemente, L. 2015] Dense-timed pushdown automata are expressively equivalent to pushdown timed automata.

slide-29
SLIDE 29
  • timed automata [Alur, Dill 1990]
  • pushdown timed automata [Bouajjani, Echahed, Robbana 1994]
  • dense-timed pushdown automata [Abdulla, Atig, Stenman 2012]
  • recursive timed automata

[Trivedi, Wojtczak 2010], [Benerecetti, Minopoli, Peron 2010]

Towards timed pushdown automata

finite stack alphabet

  • clocks can be pushed onto stack
  • the emptiness problem EXPTIME-c

7

Theorem 1: [Clemente, L. 2015] Dense-timed pushdown automata are expressively equivalent to pushdown timed automata. An accidental combination of

  • stack discipline
  • monotonicity of time
  • syntactic restrictions
slide-30
SLIDE 30

8

slide-31
SLIDE 31
  • do not invent a new definition

8

slide-32
SLIDE 32
  • do not invent a new definition
  • re-interpret a classical definition in definable sets,

with finiteness relaxed to orbit-finiteness

8

slide-33
SLIDE 33
  • do not invent a new definition
  • re-interpret a classical definition in definable sets,

with finiteness relaxed to orbit-finiteness

8

  • alphabet A
  • states Q
  • transitions δ ⊆ Q × A × Q
  • I, F ⊆ Q
slide-34
SLIDE 34
  • do not invent a new definition
  • re-interpret a classical definition in definable sets,

with finiteness relaxed to orbit-finiteness

8

  • alphabet A
  • states Q
  • transitions δ ⊆ Q × A × Q
  • I, F ⊆ Q

}

definable

slide-35
SLIDE 35
  • do not invent a new definition
  • re-interpret a classical definition in definable sets,

with finiteness relaxed to orbit-finiteness

8

  • alphabet A
  • states Q
  • transitions δ ⊆ Q × A × Q
  • I, F ⊆ Q

}

  • rbit-finite}

definable

slide-36
SLIDE 36
  • Motivation
  • Definable NFA
  • Definable PDA
  • The core problem: equations over sets of integers
  • Branching vector addition systems in dimension 1

In search of lost definition

9

slide-37
SLIDE 37
  • Motivation
  • Definable NFA
  • Definable PDA
  • The core problem: equations over sets of integers
  • Branching vector addition systems in dimension 1

In search of lost definition

NFA re-interpreted in definable sets

9

slide-38
SLIDE 38

Timed automata are register automata

c₁ := 0 0 < c₁ < 2 c₂ := 0 (2 < c₁ < 3) ∧ (c₂ = 1 ∨ c₂ = 2)

[Bojańczyk, L. 2012]

10

with uninitialized clocks

slide-39
SLIDE 39

Timed automata are register automata

c₁ := t

t

c₁ := 0 0 < c₁ < 2 c₂ := 0 (2 < c₁ < 3) ∧ (c₂ = 1 ∨ c₂ = 2)

[Bojańczyk, L. 2012]

10

with uninitialized clocks

slide-40
SLIDE 40

Timed automata are register automata

c₁ := t

t

0 < t-c₁ < 2 c₂ := t

t

c₁ := 0 0 < c₁ < 2 c₂ := 0 (2 < c₁ < 3) ∧ (c₂ = 1 ∨ c₂ = 2)

[Bojańczyk, L. 2012]

10

with uninitialized clocks

slide-41
SLIDE 41

Timed automata are register automata

c₁ := t

t

0 < t-c₁ < 2 c₂ := t

t

(2 < t-c₁ < 3) ∧

t

c₁ := 0 0 < c₁ < 2 c₂ := 0 (2 < c₁ < 3) ∧ (c₂ = 1 ∨ c₂ = 2)

[Bojańczyk, L. 2012]

10

with uninitialized clocks

slide-42
SLIDE 42

Timed automata are register automata

c₁ := t

t

0 < t-c₁ < 2 c₂ := t

t

(2 < t-c₁ < 3) ∧ (t-c₂ = 1 ∨ t-c₂ = 2)

t

c₁ := 0 0 < c₁ < 2 c₂ := 0 (2 < c₁ < 3) ∧ (c₂ = 1 ∨ c₂ = 2)

[Bojańczyk, L. 2012]

10

with uninitialized clocks

slide-43
SLIDE 43

Timed automata are register automata

c₁ := t

t

0 < t-c₁ < 2 c₂ := t

t

(2 < t-c₁ < 3) ∧ (t-c₂ = 1 ∨ t-c₂ = 2)

t

c₁ := 0 0 < c₁ < 2 c₂ := 0 (2 < c₁ < 3) ∧ (c₂ = 1 ∨ c₂ = 2)

the guards use the structure (R, <, +1)

e.g. 0 < t-c₁ <2 iff c₁ < t < c₁+2

[Bojańczyk, L. 2012]

10

with uninitialized clocks

slide-44
SLIDE 44

Timed automata are register automata

c₁ := t

t

0 < t-c₁ < 2 c₂ := t

t

(2 < t-c₁ < 3) ∧ (t-c₂ = 1 ∨ t-c₂ = 2)

t

c₁ := 0 0 < c₁ < 2 c₂ := 0 (2 < c₁ < 3) ∧ (c₂ = 1 ∨ c₂ = 2)

c₁ 0 < c₂-c₁ < 2 the guards use the structure (R, <, +1)

e.g. 0 < t-c₁ <2 iff c₁ < t < c₁+2

[Bojańczyk, L. 2012]

10

with uninitialized clocks

slide-45
SLIDE 45

Timed automata are register automata

c₁ := t

t

0 < t-c₁ < 2 c₂ := t

t

(2 < t-c₁ < 3) ∧ (t-c₂ = 1 ∨ t-c₂ = 2)

t

c₁ := 0 0 < c₁ < 2 c₂ := 0 (2 < c₁ < 3) ∧ (c₂ = 1 ∨ c₂ = 2)

c₁ 0 < c₂-c₁ < 2 the guards use the structure (R, <, +1)

e.g. 0 < t-c₁ <2 iff c₁ < t < c₁+2

[Bojańczyk, L. 2012]

10

the only modifications of a clock: c:= t

with uninitialized clocks

slide-46
SLIDE 46

(<, +1)-definable sets

φ(x1, . . . , xn)

FO(<, +1) formula defines a subset of n-tuples of reals, for instance φ(x1, x2) ≡ ∃x3 (x1 < x3 ∧ x2 = x3 + 3)

dimension

11

slide-47
SLIDE 47

φ(x1, . . . , xn)

FO(<, +1) formula defines a subset of n-tuples of reals, for instance φ(x1, x2) ≡ ∃x3 (x1 < x3 ∧ x2 = x3 + 3)

dimension

11

definable sets

slide-48
SLIDE 48

φ(x1, . . . , xn)

FO(<, +1) formula defines a subset of n-tuples of reals, for instance FO(<, +1) = QF(<, +1) = φ(x1, x2) ≡ ∃x3 (x1 < x3 ∧ x2 = x3 + 3)

dimension

11

definable sets

slide-49
SLIDE 49

φ(x1, . . . , xn)

FO(<, +1) formula defines a subset of n-tuples of reals, for instance FO(<, +1) = QF(<, +1) =

_

finite

^

finite

xi − xj ∈ I | {z }

zone

φ(x1, x2) ≡ ∃x3 (x1 < x3 ∧ x2 = x3 + 3)

dimension

11

definable sets

ij

slide-50
SLIDE 50

φ(x1, . . . , xn)

FO(<, +1) formula defines a subset of n-tuples of reals, for instance FO(<, +1) = QF(<, +1) =

_

finite

^

finite

xi − xj ∈ I | {z }

zone

φ(x1, x2) ≡ ∃x3 (x1 < x3 ∧ x2 = x3 + 3) for instance: φ(x1, x2) ≡ x1 + 3 < x2 ≡ x2 − x1 ∈ (3, ∞)

dimension

11

definable sets

ij

slide-51
SLIDE 51

Orbit-finiteness

π π π

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

12

slide-52
SLIDE 52

Orbit-finiteness

π π π

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

12

For instance, (-1, ⅓) and (3, 4⅓) and (1⅓, 3) are in the same orbit.

slide-53
SLIDE 53

Orbit-finiteness

π π π

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

x1 + 3 < x2 ≡ x2 − x1 ∈ (3, ∞)

  • rbit-infinite

Example:

12

For instance, (-1, ⅓) and (3, 4⅓) and (1⅓, 3) are in the same orbit.

slide-54
SLIDE 54

Orbit-finiteness

π π π

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

x1 + 3 < x2 ≡ x2 − x1 ∈ (3, ∞)

x1 + 3 < x2 ≤ x1 + 7 ≡ x2 − x1 ∈ (3, 7]

  • rbit-infinite
  • rbit-finite

Example:

12

For instance, (-1, ⅓) and (3, 4⅓) and (1⅓, 3) are in the same orbit.

slide-55
SLIDE 55

Orbit-finiteness

π π π

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

x1 + 3 < x2 ≡ x2 − x1 ∈ (3, ∞)

x1 + 3 < x2 ≤ x1 + 7 ≡ x2 − x1 ∈ (3, 7] A definable set is orbit-finite iff it is defined using bounded intervals only

  • rbit-infinite
  • rbit-finite

Example:

12

For instance, (-1, ⅓) and (3, 4⅓) and (1⅓, 3) are in the same orbit.

slide-56
SLIDE 56

Definable NFA

  • alphabet A
  • states Q
  • transitions δ ⊆ Q × A × Q
  • I, F ⊆ Q

13

slide-57
SLIDE 57

Definable NFA

  • alphabet A
  • states Q
  • transitions δ ⊆ Q × A × Q
  • I, F ⊆ Q

}

(<, +1)-definable

13

slide-58
SLIDE 58

Definable NFA

  • alphabet A
  • states Q
  • transitions δ ⊆ Q × A × Q
  • I, F ⊆ Q

φA(x1, . . . , xn) φQ(x1, . . . , xm) φδ(x1, . . . , xm+n+m) φI(x1, . . . , xm), φF (x1, . . . , xm)

13

slide-59
SLIDE 59

Definable NFA

  • alphabet A
  • states Q
  • transitions δ ⊆ Q × A × Q
  • I, F ⊆ Q

φA(x1, . . . , xn) φQ(x1, . . . , xm) φδ(x1, . . . , xm+n+m) φI(x1, . . . , xm), φF (x1, . . . , xm)

}

(<, +1)-definable

13

slide-60
SLIDE 60

Definable NFA

  • alphabet A
  • states Q
  • transitions δ ⊆ Q × A × Q
  • I, F ⊆ Q

Runs, acceptance, language recognized, etc. are defined exactly as for classical NFA!

φA(x1, . . . , xn) φQ(x1, . . . , xm) φδ(x1, . . . , xm+n+m) φI(x1, . . . , xm), φF (x1, . . . , xm)

}

(<, +1)-definable

13

slide-61
SLIDE 61

Definable NFA

  • alphabet A
  • states Q
  • transitions δ ⊆ Q × A × Q
  • I, F ⊆ Q

}

  • rbit-finite

Runs, acceptance, language recognized, etc. are defined exactly as for classical NFA!

φA(x1, . . . , xn) φQ(x1, . . . , xm) φδ(x1, . . . , xm+n+m) φI(x1, . . . , xm), φF (x1, . . . , xm)

}

(<, +1)-definable

13

slide-62
SLIDE 62

c₁ := t

t

0 < t-c₁ < 2 c₂ := t

t

(2 < t-c₁ < 3) ∧ (t-c₂ = 1 ∨ t-c₂ = 2)

t

Register automata = definable NFA

14

⊥ c₁ 0 < c₂-c₁ < 2 ⊤

slide-63
SLIDE 63

states:

c₁ := t

t

0 < t-c₁ < 2 c₂ := t

t

(2 < t-c₁ < 3) ∧ (t-c₂ = 1 ∨ t-c₂ = 2)

t

Register automata = definable NFA

Q = {⊥} ∪ R ∪ { (c₁, c₂)∊R×R : 0 < c₂-c₁ < 2 } ∪ {⊤}

14

⊥ c₁ 0 < c₂-c₁ < 2 ⊤

slide-64
SLIDE 64

states:

c₁ := t

t

0 < t-c₁ < 2 c₂ := t

t

(2 < t-c₁ < 3) ∧ (t-c₂ = 1 ∨ t-c₂ = 2)

t

Register automata = definable NFA

Q = {⊥} ∪ R ∪ { (c₁, c₂)∊R×R : 0 < c₂-c₁ < 2 } ∪ {⊤} 𝜚Q(c0, c₁, c₂) ≡ c0 = c₁ = c₂ ∨ c0+1 = c₁ = c₂ ∨ c0+2 = c₁ < c₂ < c₁+2 ∨ c0+3 = c₁ = c₂

14

⊥ c₁ 0 < c₂-c₁ < 2 ⊤

slide-65
SLIDE 65

states:

c₁ := t

t

0 < t-c₁ < 2 c₂ := t

t

(2 < t-c₁ < 3) ∧ (t-c₂ = 1 ∨ t-c₂ = 2)

t

transitions: ⊥

Register automata = definable NFA

Q = {⊥} ∪ R ∪ { (c₁, c₂)∊R×R : 0 < c₂-c₁ < 2 } ∪ {⊤} 𝜀 = { (⊥, t, c₁’) : c₁’ = t } ∪ 𝜚Q(c0, c₁, c₂) ≡ c0 = c₁ = c₂ ∨ c0+1 = c₁ = c₂ ∨ c0+2 = c₁ < c₂ < c₁+2 ∨ c0+3 = c₁ = c₂

14

⊥ c₁ 0 < c₂-c₁ < 2 ⊤

slide-66
SLIDE 66

states:

c₁ := t

t

0 < t-c₁ < 2 c₂ := t

t

(2 < t-c₁ < 3) ∧ (t-c₂ = 1 ∨ t-c₂ = 2)

t

transitions: ⊥

Register automata = definable NFA

Q = {⊥} ∪ R ∪ { (c₁, c₂)∊R×R : 0 < c₂-c₁ < 2 } ∪ {⊤} 𝜀 = { (⊥, t, c₁’) : c₁’ = t } ∪ { (c₁, t, (c₁’, c₂’)) : 0 < t-c₁ < 2 ∧ c₁ = c₁’ ∧ c₂’ = t } ∪ 𝜚Q(c0, c₁, c₂) ≡ c0 = c₁ = c₂ ∨ c0+1 = c₁ = c₂ ∨ c0+2 = c₁ < c₂ < c₁+2 ∨ c0+3 = c₁ = c₂

14

⊥ c₁ 0 < c₂-c₁ < 2 ⊤

slide-67
SLIDE 67

states:

c₁ := t

t

0 < t-c₁ < 2 c₂ := t

t

(2 < t-c₁ < 3) ∧ (t-c₂ = 1 ∨ t-c₂ = 2)

t

transitions: ⊥

Register automata = definable NFA

Q = {⊥} ∪ R ∪ { (c₁, c₂)∊R×R : 0 < c₂-c₁ < 2 } ∪ {⊤} 𝜀 = { (⊥, 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) } 𝜚Q(c0, c₁, c₂) ≡ c0 = c₁ = c₂ ∨ c0+1 = c₁ = c₂ ∨ c0+2 = c₁ < c₂ < c₁+2 ∨ c0+3 = c₁ = c₂

14

⊥ c₁ 0 < c₂-c₁ < 2 ⊤

slide-68
SLIDE 68

states:

c₁ := t

t

0 < t-c₁ < 2 c₂ := t

t

(2 < t-c₁ < 3) ∧ (t-c₂ = 1 ∨ t-c₂ = 2)

t

transitions: ⊥

Register automata = definable NFA

Q = {⊥} ∪ R ∪ { (c₁, c₂)∊R×R : 0 < c₂-c₁ < 2 } ∪ {⊤} 𝜀 = { (⊥, 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) } 𝜚Q(c0, c₁, c₂) ≡ c0 = c₁ = c₂ ∨ c0+1 = c₁ = c₂ ∨ c0+2 = c₁ < c₂ < c₁+2 ∨ c0+3 = c₁ = c₂ 𝜚𝜀(c0, c₁, c₂, t, c0’, c₁’, c₂’) ≡ ...

14

⊥ c₁ 0 < c₂-c₁ < 2 ⊤

slide-69
SLIDE 69

Timed automata vs. definable NFA

Definable NFA are like updatable timed automata [Bouyer, Duford, Fleury 2000], but:

15

slide-70
SLIDE 70

Timed automata vs. definable NFA

  • in every location, clock valuations are restricted by an orbit-finite

constraint (invariant) Definable NFA are like updatable timed automata [Bouyer, Duford, Fleury 2000], but:

15

slide-71
SLIDE 71

Timed automata vs. definable NFA

  • in every location, clock valuations are restricted by an orbit-finite

constraint (invariant)

  • number of clocks may vary from one location to another

Definable NFA are like updatable timed automata [Bouyer, Duford, Fleury 2000], but:

15

slide-72
SLIDE 72

Timed automata vs. definable NFA

  • 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 Definable NFA are like updatable timed automata [Bouyer, Duford, Fleury 2000], but:

15

slide-73
SLIDE 73

Timed automata vs. definable NFA

  • 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

Definable NFA are like updatable timed automata [Bouyer, Duford, Fleury 2000], but:

15

slide-74
SLIDE 74

definable NFA timed automata

with uninitialized clocks

Timed automata vs. definable NFA

16

slide-75
SLIDE 75

definable NFA timed automata

with uninitialized clocks

Timed automata vs. definable NFA

deterministic deterministic

16

slide-76
SLIDE 76

definable NFA timed automata

with uninitialized clocks

Timed automata vs. definable NFA

{

integer deterministic deterministic

16

slide-77
SLIDE 77

definable NFA timed automata

with uninitialized clocks

Timed automata vs. definable NFA

{

integer

{

< 2

deterministic deterministic

16

slide-78
SLIDE 78

definable NFA timed automata

with uninitialized clocks

Timed automata vs. definable NFA

{

integer

{

< 2

{

< 2

deterministic deterministic

16

slide-79
SLIDE 79

definable NFA timed automata

with uninitialized clocks

Timed automata vs. definable NFA

{

integer

{

< 2

{

< 2

...

deterministic deterministic

16

slide-80
SLIDE 80

definable NFA timed automata

with uninitialized clocks

minimal automata for languages

  • f deterministic timed automata

with uninitialized clocks

Timed automata vs. definable NFA

{

integer

{

< 2

{

< 2

...

deterministic deterministic

16

slide-81
SLIDE 81

definable NFA timed automata

with uninitialized clocks

closed under minimization minimal automata for languages

  • f deterministic timed automata

with uninitialized clocks

Timed automata vs. definable NFA

{

integer

{

< 2

{

< 2

...

deterministic deterministic

16

slide-82
SLIDE 82

definable NFA timed automata

with uninitialized clocks

closed under minimization minimal automata for languages

  • f deterministic timed automata

with uninitialized clocks

Timed automata vs. definable NFA

{

integer

{

< 2

{

< 2

...

deterministic deterministic

16

Theorem: [Bojańczyk, L. 2012] Deterministic definable NFA do minimize.

slide-83
SLIDE 83

definable NFA timed automata

with uninitialized clocks

closed under minimization minimal automata for languages

  • f deterministic timed automata

with uninitialized clocks

Timed automata vs. definable NFA

{

integer

{

< 2

{

< 2

...

deterministic deterministic

16

Likewise, if FO(<, +1) is replaced by FO(<, +). Theorem: [Bojańczyk, L. 2012] Deterministic definable NFA do minimize.

slide-84
SLIDE 84
  • Motivation
  • Definable NFA
  • Definable PDA
  • The core problem: equations over sets of integers
  • Branching vector addition systems in dimension 1

17

In search of lost definition

slide-85
SLIDE 85
  • Motivation
  • Definable NFA
  • Definable PDA
  • The core problem: equations over sets of integers
  • Branching vector addition systems in dimension 1

PDA re-interpreted in definable sets

17

In search of lost definition

slide-86
SLIDE 86

Definable PDA

  • alphabet A
  • states Q
  • stack alphabet S
  • push ⊆ Q × A × Q × S
  • pop ⊆ Q × S × A × Q
  • I, F ⊆ Q }

(<, +1)definable

}

  • rbit-finite

18

slide-87
SLIDE 87

Definable PDA

  • alphabet A
  • states Q
  • stack alphabet S
  • push ⊆ Q × A × Q × S
  • pop ⊆ Q × S × A × Q
  • I, F ⊆ Q

}

  • rbit-finite

φA(x1, . . . , xn) φQ(x1, . . . , xm) φS(x1, . . . , xk) φpush(x1, . . . , xm+n+m+k) φpop(x1, . . . , xm+k+n+m) φI(x1, . . . , xm), φF (x1, . . . , xm)

18

slide-88
SLIDE 88

Definable PDA

  • alphabet A
  • states Q
  • stack alphabet S
  • push ⊆ Q × A × Q × S
  • pop ⊆ Q × S × A × Q
  • I, F ⊆ Q

}

  • rbit-finite

Acceptance defined as for classical PDA.

φA(x1, . . . , xn) φQ(x1, . . . , xm) φS(x1, . . . , xk) φpush(x1, . . . , xm+n+m+k) φpop(x1, . . . , xm+k+n+m) φI(x1, . . . , xm), φF (x1, . . . , xm)

}

(<, +1)-definable

18

slide-89
SLIDE 89

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

Example

19

slide-90
SLIDE 90

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

Example

19

slide-91
SLIDE 91

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

Example

19

slide-92
SLIDE 92

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

stack

Example

(init, ε, t, ⊥) (t, u, u, u) t < u (t, u, finish, u) t < u

19

slide-93
SLIDE 93

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

Example

(finish, t, t, finish) (finish, ⊥, ε, acc)

pop ⊆ Q × S × A × Q

(init, ε, t, ⊥) (t, u, u, u) t < u (t, u, finish, u) t < u

in state finish, pop a real t from stack, read the same t from input, and stay in the same state

19

slide-94
SLIDE 94

Definable prefix rewriting

  • alphabet A
  • states Q
  • stack alphabet S
  • ρ ⊆ Q × S* × A × Q × S*
  • I, F ⊆ Q

}

(<, +1)-definable

}

  • rbit-finite

20

slide-95
SLIDE 95

Definable prefix rewriting

  • alphabet A
  • states Q
  • stack alphabet S
  • ρ ⊆ Q × S* × A × Q × S*
  • I, F ⊆ Q

}

(<, +1)-definable

}

  • rbit-finite

≤n ≤m

20

slide-96
SLIDE 96

Definable prefix rewriting

  • alphabet A
  • states Q
  • stack alphabet S
  • ρ ⊆ Q × S* × A × Q × S*
  • I, F ⊆ Q

}

(<, +1)-definable

}

  • rbit-finite

Acceptance defined as for classical prefix rewriting.

≤n ≤m

20

slide-97
SLIDE 97
  • rbit-finite set of symbols S

Definable context-free grammars

  • nonterminal symbols S
  • terminal symbols A
  • an initial nonterminal symbol
  • ρ ⊆ S×(S⨄A)*

}

definable in FO(<, +1)

}

  • rbit-finite

21

slide-98
SLIDE 98
  • rbit-finite set of symbols S

Definable context-free grammars

  • nonterminal symbols S
  • terminal symbols A
  • an initial nonterminal symbol
  • ρ ⊆ S×(S⨄A)*

}

definable in FO(<, +1)

}

  • rbit-finite

Generated language defined as for classical PDA.

21

≤n

slide-99
SLIDE 99

prefix rewriting CFG

Expressiveness of definable models

dense-timed PDA

with uninitialized clocks

[Abdulla, Atig, Stenman 2012]

PDA with timeless stack (finite stack alphabet) PDA

22

[Clemente, L. 2015]

slide-100
SLIDE 100

prefix rewriting CFG

Expressiveness of definable models

palindromes

dense-timed PDA

with uninitialized clocks

[Abdulla, Atig, Stenman 2012]

PDA with timeless stack (finite stack alphabet) PDA

22

[Clemente, L. 2015]

slide-101
SLIDE 101

prefix rewriting CFG

Expressiveness of definable models

palindromes

dense-timed PDA

with uninitialized clocks

[Abdulla, Atig, Stenman 2012]

PDA with timeless stack (finite stack alphabet) PDA constrained PDA

22

[Clemente, L. 2015]

slide-102
SLIDE 102

prefix rewriting CFG

Expressiveness of definable models

palindromes

dense-timed PDA

with uninitialized clocks

[Abdulla, Atig, Stenman 2012]

PDA with timeless stack (finite stack alphabet) PDA constrained PDA

palindromes over {a,b}×reals with the same number of a’s and b’s

22

[Clemente, L. 2015]

slide-103
SLIDE 103

Constrained definable PDA

  • alphabet A
  • states Q
  • stack alphabet S
  • push ⊆ Q × A × Q × S
  • pop ⊆ Q × S × A × Q
  • I, F ⊆ Q

}

(<, +1)-definable

}

  • rbit-finite

23

slide-104
SLIDE 104

Constrained definable PDA

  • alphabet A
  • states Q
  • stack alphabet S
  • push ⊆ Q × A × Q × S
  • pop ⊆ Q × S × A × Q
  • I, F ⊆ Q

}

  • rbit-finite}
  • rbit-finite?

23

slide-105
SLIDE 105

Constrained definable PDA

  • alphabet A
  • states Q
  • stack alphabet S
  • push ⊆ Q × A × Q × S
  • pop ⊆ Q × S × A × Q
  • I, F ⊆ Q

}

  • rbit-finite}
  • rbit-finite?

Span of transitions is bounded. Too strong restriction!

23

slide-106
SLIDE 106

Constrained definable PDA

  • alphabet A
  • states Q
  • stack alphabet S
  • push ⊆ Q × A × Q × S
  • pop ⊆ Q × S × A × Q
  • I, F ⊆ Q

}

  • rbit-finite}
  • rbit-finite?

Span of transitions is bounded. Too strong restriction! For instance, such PDA do not recognize palindromes over reals.

23

slide-107
SLIDE 107

Constrained definable PDA

  • alphabet A
  • states Q
  • stack alphabet S
  • push ⊆ Q × A × Q × S
  • pop ⊆ Q × S × A × Q
  • I, F ⊆ Q

}

(<, +1)-definable

}

  • rbit-finite

24

slide-108
SLIDE 108

Constrained definable PDA

  • alphabet A
  • states Q
  • stack alphabet S
  • push ⊆ Q × A × Q × S
  • pop ⊆ Q × S × A × Q
  • I, F ⊆ Q

}

(<, +1)-definable

}

  • rbit-finite

}

  • rbit-finite

}

  • rbit-finite

24

slide-109
SLIDE 109

Constrained definable PDA

  • alphabet A
  • states Q
  • stack alphabet S
  • push ⊆ Q × A × Q × S
  • pop ⊆ Q × S × A × Q
  • I, F ⊆ Q

}

(<, +1)-definable

}

  • rbit-finite

}

  • rbit-finite

}

  • rbit-finite

Theorem 2: [Clemente, L. 2015] The non-emptiness problem is in NEXPTIME. For finite stack alphabet, EXPTIME-complete.

24

slide-110
SLIDE 110

Constrained definable PDA

  • alphabet A
  • states Q
  • stack alphabet S
  • push ⊆ Q × A × Q × S
  • pop ⊆ Q × S × A × Q
  • I, F ⊆ Q

}

(<, +1)-definable

}

  • rbit-finite

}

  • rbit-finite

}

  • rbit-finite

Theorem 2: [Clemente, L. 2015] The non-emptiness problem is in NEXPTIME. For finite stack alphabet, EXPTIME-complete. Fact: The model subsumes dense-timed PDA with uninitialized clocks.

24

slide-111
SLIDE 111

Decidability of non-emptiness

prefix rewriting CFG dense-timed PDA

with uninitialized clocks

[Abdulla, Atig, Stenman 2012]

PDA with finite stack alphabet PDA constrained PDA

25

[Clemente, L. 2015]

slide-112
SLIDE 112

Decidability of non-emptiness

prefix rewriting CFG dense-timed PDA

with uninitialized clocks

[Abdulla, Atig, Stenman 2012]

PDA with finite stack alphabet PDA constrained PDA

in NEXPTIME

25

[Clemente, L. 2015]

slide-113
SLIDE 113

Decidability of non-emptiness

prefix rewriting CFG dense-timed PDA

with uninitialized clocks

[Abdulla, Atig, Stenman 2012]

PDA with finite stack alphabet PDA constrained PDA

EXPTIME-c. in NEXPTIME

25

[Clemente, L. 2015]

slide-114
SLIDE 114

u n d e c i d a b l e

Decidability of non-emptiness

prefix rewriting CFG dense-timed PDA

with uninitialized clocks

[Abdulla, Atig, Stenman 2012]

PDA with finite stack alphabet PDA constrained PDA

EXPTIME-c. in NEXPTIME

25

[Clemente, L. 2015]

slide-115
SLIDE 115

u n d e c i d a b l e

Decidability of non-emptiness

prefix rewriting CFG dense-timed PDA

with uninitialized clocks

[Abdulla, Atig, Stenman 2012]

PDA with finite stack alphabet PDA constrained PDA

EXPTIME-c. in NEXPTIME EXPTIME-c.

25

[Clemente, L. 2015]

slide-116
SLIDE 116

u n d e c i d a b l e

Decidability of non-emptiness

prefix rewriting CFG dense-timed PDA

with uninitialized clocks

[Abdulla, Atig, Stenman 2012]

PDA with finite stack alphabet PDA constrained PDA

EXPTIME-c. in NEXPTIME EXPTIME-c.

25

[Clemente, L. 2015]

in 2-EXPTIME

slide-117
SLIDE 117

26

u n d e c i d a b l e

prefix rewriting CFG dense-timed PDA

with uninitialized clocks

[Abdulla, Atig, Stenman 2012]

PDA with finite stack alphabet PDA constrained PDA

EXPTIME-c. in NEXPTIME EXPTIME-c. in 2-EXPTIME

slide-118
SLIDE 118

26

u n d e c i d a b l e

prefix rewriting CFG dense-timed PDA

with uninitialized clocks

[Abdulla, Atig, Stenman 2012]

PDA with finite stack alphabet PDA constrained PDA

EXPTIME-c. in NEXPTIME EXPTIME-c. in 2-EXPTIME

Theorem 3: The non-emptiness problem of definable PDA is in 2-EXPTIME.

slide-119
SLIDE 119

26

u n d e c i d a b l e

prefix rewriting CFG dense-timed PDA

with uninitialized clocks

[Abdulla, Atig, Stenman 2012]

PDA with finite stack alphabet PDA constrained PDA

EXPTIME-c. in NEXPTIME EXPTIME-c. in 2-EXPTIME

Theorem 3: The non-emptiness problem of definable PDA is in 2-EXPTIME. Complexity gap: EXPTIME … 2-EXPTIME

slide-120
SLIDE 120

27

Towards decision procedure

slide-121
SLIDE 121

27

Notation: q ⤑ p — there is a run from state p to state q that starts and ends with the empty stack

Towards decision procedure

slide-122
SLIDE 122

27

Notation: q ⤑ p — there is a run from state p to state q that starts and ends with the empty stack x ⤑ x (base)

Towards decision procedure

slide-123
SLIDE 123

27

Notation: q ⤑ p — there is a run from state p to state q that starts and ends with the empty stack x ⤑ x (base) x ⤑ y y ⤑ z x ⤑ z (transitivity)

Towards decision procedure

slide-124
SLIDE 124

27

Notation: q ⤑ p — there is a run from state p to state q that starts and ends with the empty stack x ⤑ x (base) x ⤑ y y ⤑ z x ⤑ z (transitivity) x ⤑ y x’ ⤑ y’ (push-pop) if push(x’, x, s) and pop(y, s, y’) for some stack symbol s

Towards decision procedure

slide-125
SLIDE 125

27

Notation: q ⤑ p — there is a run from state p to state q that starts and ends with the empty stack x ⤑ x (base) x ⤑ y y ⤑ z x ⤑ z (transitivity) x ⤑ y x’ ⤑ y’ (push-pop) if push(x’, x, s) and pop(y, s, y’) for some stack symbol s

Towards decision procedure

Problem: how to make this work for orbit-finite state space?

slide-126
SLIDE 126

27

Notation: q ⤑ p — there is a run from state p to state q that starts and ends with the empty stack x ⤑ x (base) x ⤑ y y ⤑ z x ⤑ z (transitivity) x ⤑ y x’ ⤑ y’ (push-pop) if push(x’, x, s) and pop(y, s, y’) for some stack symbol s

Towards decision procedure

Problem: how to make this work for orbit-finite state space? Guideline: think like state = an integer

slide-127
SLIDE 127

27

Notation: q ⤑ p — there is a run from state p to state q that starts and ends with the empty stack x ⤑ x (base) x ⤑ y y ⤑ z x ⤑ z (transitivity) x ⤑ y x’ ⤑ y’ (push-pop) if push(x’, x, s) and pop(y, s, y’) for some stack symbol s

Towards decision procedure

Problem: how to make this work for orbit-finite state space? Guideline: think like state = an integer capture all differences y - x, for x ⤑ y

slide-128
SLIDE 128

Towards decision procedure

28

  • Motivation
  • Definable NFA
  • Definable PDA
  • The core problem: equations over sets of integers
  • Branching vector addition systems in dimension 1
slide-129
SLIDE 129
  • rbit-finite set of symbols S

The core problem: non-emptiness

Given a systems of equations

{

x1 = t1 x2 = t2 . . . xn = tn

29

slide-130
SLIDE 130
  • rbit-finite set of symbols S

The core problem: non-emptiness

Given a systems of equations

{

x1 = t1 x2 = t2 . . . xn = tn

29

where right-hand sides use:

slide-131
SLIDE 131
  • rbit-finite set of symbols S

The core problem: non-emptiness

Given a systems of equations

{

x1 = t1 x2 = t2 . . . xn = tn

  • constants {-1}, {0}, {1}

29

where right-hand sides use:

slide-132
SLIDE 132
  • rbit-finite set of symbols S

The core problem: non-emptiness

Given a systems of equations

{

x1 = t1 x2 = t2 . . . xn = tn

  • constants {-1}, {0}, {1}
  • set union ∪

29

where right-hand sides use:

slide-133
SLIDE 133
  • rbit-finite set of symbols S

The core problem: non-emptiness

Given a systems of equations

{

x1 = t1 x2 = t2 . . . xn = tn

  • constants {-1}, {0}, {1}
  • set union ∪
  • point-wise addition +

29

where right-hand sides use:

slide-134
SLIDE 134
  • rbit-finite set of symbols S

The core problem: non-emptiness

Given a systems of equations

{

x1 = t1 x2 = t2 . . . xn = tn

  • constants {-1}, {0}, {1}
  • set union ∪
  • point-wise addition +
  • limited intersection ∩

29

where right-hand sides use:

slide-135
SLIDE 135
  • rbit-finite set of symbols S

The core problem: non-emptiness

Given a systems of equations decide, whether its least solution assigns a non-empty set to ? x1

{

x1 = t1 x2 = t2 . . . xn = tn

  • constants {-1}, {0}, {1}
  • set union ∪
  • point-wise addition +
  • limited intersection ∩

29

where right-hand sides use:

slide-136
SLIDE 136
  • rbit-finite set of symbols S

The core problem: non-emptiness

Given a systems of equations decide, whether its least solution assigns a non-empty set to ? x1

{

x1 = t1 x2 = t2 . . . xn = tn

  • constants {-1}, {0}, {1}
  • set union ∪
  • point-wise addition +
  • limited intersection ∩

29

where right-hand sides use:

for instance: x1 = {0} ∪ x2 + {1} ∪ x2 + {−1} x2 = x1 + {1} ∪ x1 + {−1}

{

slide-137
SLIDE 137
  • rbit-finite set of symbols S

The core problem: non-emptiness

Given a systems of equations decide, whether its least solution assigns a non-empty set to ? x1

{

x1 = t1 x2 = t2 . . . xn = tn

  • constants {-1}, {0}, {1}
  • set union ∪
  • point-wise addition +
  • limited intersection ∩

29

where right-hand sides use:

for instance: x1 = {0} ∪ x2 + {1} ∪ x2 + {−1} x2 = x1 + {1} ∪ x1 + {−1}

{

What is the least solution with respect to inclusion?

slide-138
SLIDE 138

30

exponential blowup

definable PDA systems of equations

  • ver sets of integers
slide-139
SLIDE 139

30

x ⤑ x (base) x ⤑ y y ⤑ z x ⤑ z (transitivity) x ⤑ y x’ ⤑ y’ (push-pop)

exponential blowup

definable PDA systems of equations

  • ver sets of integers
slide-140
SLIDE 140

30

x ⤑ x (base) x ⤑ y y ⤑ z x ⤑ z (transitivity) x ⤑ y x’ ⤑ y’ (push-pop)

exponential blowup

definable PDA systems of equations

  • ver sets of integers

Guideline: think like state = an integer, capture all differences y - x, for x ⤑ y

slide-141
SLIDE 141

30

x ⤑ x (base) x ⤑ y y ⤑ z x ⤑ z (transitivity) x ⤑ y x’ ⤑ y’ (push-pop)

exponential blowup

definable PDA systems of equations

  • ver sets of integers

Xpp ⊇ {0} Guideline: think like state = an integer, capture all differences y - x, for x ⤑ y

slide-142
SLIDE 142

30

x ⤑ x (base) x ⤑ y y ⤑ z x ⤑ z (transitivity) x ⤑ y x’ ⤑ y’ (push-pop)

exponential blowup

definable PDA systems of equations

  • ver sets of integers

Xpp ⊇ {0} Xpr ⊇ Xpq + Xqr Guideline: think like state = an integer, capture all differences y - x, for x ⤑ y

slide-143
SLIDE 143

30

x ⤑ x (base) x ⤑ y y ⤑ z x ⤑ z (transitivity) x ⤑ y x’ ⤑ y’ (push-pop)

exponential blowup

definable PDA systems of equations

  • ver sets of integers

Xpp ⊇ {0} Xpr ⊇ Xpq + Xqr Xpq ⊇ (I + (Xrs ∩ (J+N)) + L) ∩ -(M+K) Guideline: think like state = an integer, capture all differences y - x, for x ⤑ y

slide-144
SLIDE 144
  • rbit-finite set of symbols S

The core problem - no intersections

Given a systems of equations decide, whether its least solution assigns a non-empty set to ? x1

{

x1 = t1 x2 = t2 . . . xn = tn

  • constants {-1}, {0}, {1}
  • set union ∪
  • point-wise addition +
  • limited intersection ∩

31

slide-145
SLIDE 145
  • rbit-finite set of symbols S

The core problem - no intersections

Given a systems of equations decide, whether its least solution assigns a non-empty set to ? x1

{

x1 = t1 x2 = t2 . . . xn = tn

  • constants {-1}, {0}, {1}
  • set union ∪
  • point-wise addition +
  • limited intersection ∩

How to solve the problem in absence of intersections?

31

slide-146
SLIDE 146
  • rbit-finite set of symbols S

The core problem - no intersections

Given a systems of equations decide, whether its least solution assigns a non-empty set to ? x1

{

x1 = t1 x2 = t2 . . . xn = tn

  • constants {-1}, {0}, {1}
  • set union ∪
  • point-wise addition +
  • limited intersection ∩

How to solve the problem in absence of intersections? x1 = {0} ∪ x2 + {1} ∪ x2 + {−1} x2 = x1 + {1} ∪ x1 + {−1}

{

31

slide-147
SLIDE 147
  • rbit-finite set of symbols S

The core problem - no intersections

Given a systems of equations decide, whether its least solution assigns a non-empty set to ? x1

{

x1 = t1 x2 = t2 . . . xn = tn

  • constants {-1}, {0}, {1}
  • set union ∪
  • point-wise addition +
  • limited intersection ∩

How to solve the problem in absence of intersections? x1 = {0} ∪ x2 + {1} ∪ x2 + {−1} x2 = x1 + {1} ∪ x1 + {−1}

{

Decidable in P

31

slide-148
SLIDE 148
  • rbit-finite set of symbols S

The core problem - intersections

Given a systems of equations decide, whether its least solution assigns a non-empty set to ? x1

{

x1 = t1 x2 = t2 . . . xn = tn

  • constants {-1}, {0}, {1}
  • set union ∪
  • point-wise addition +
  • limited intersection ∩

32

slide-149
SLIDE 149
  • rbit-finite set of symbols S

The core problem - intersections

Given a systems of equations decide, whether its least solution assigns a non-empty set to ? x1

{

x1 = t1 x2 = t2 . . . xn = tn

The problem is undecidable for unlimited intersections. [Jeż, Okhotin 2010]

  • constants {-1}, {0}, {1}
  • set union ∪
  • point-wise addition +
  • limited intersection ∩

32

slide-150
SLIDE 150
  • rbit-finite set of symbols S

The core problem - limited intersection

Given a systems of equations decide, whether its least solution assigns a non-empty set to ? x1

{

x1 = t1 x2 = t2 . . . xn = tn

  • constants {-1}, {0}, {1}
  • set union ∪
  • point-wise addition +
  • limited intersection ∩

33

slide-151
SLIDE 151
  • rbit-finite set of symbols S

The core problem - limited intersection

Given a systems of equations decide, whether its least solution assigns a non-empty set to ? x1

{

x1 = t1 x2 = t2 . . . xn = tn

What about limited intersections: _ ∩ I, for I a finite interval?

  • constants {-1}, {0}, {1}
  • set union ∪
  • point-wise addition +
  • limited intersection ∩

33

slide-152
SLIDE 152
  • rbit-finite set of symbols S

The core problem - limited intersection

Given a systems of equations decide, whether its least solution assigns a non-empty set to ? x1

{

x1 = t1 x2 = t2 . . . xn = tn

What about limited intersections: _ ∩ I, for I a finite interval?

{

x1 = {0} ∪ x2 + {1} ∪ x2 + {−1} x2 = (x1 + {1} ∪ x1 + {−1}) ∩ {1}

  • constants {-1}, {0}, {1}
  • set union ∪
  • point-wise addition +
  • limited intersection ∩

33

slide-153
SLIDE 153
  • rbit-finite set of symbols S

The core problem - limited intersection

Given a systems of equations decide, whether its least solution assigns a non-empty set to ? x1

{

x1 = t1 x2 = t2 . . . xn = tn

What about limited intersections: _ ∩ I, for I a finite interval?

{

x1 = {0} ∪ x2 + {1} ∪ x2 + {−1} x2 = x1 + {1} ∪ x1 + {−1}

  • constants {-1}, {0}, {1}
  • set union ∪
  • point-wise addition +
  • limited intersection ∩

membership problem

33

slide-154
SLIDE 154
  • rbit-finite set of symbols S

The core problem - limited intersection

Given a systems of equations decide, whether its least solution assigns a non-empty set to ? x1

{

x1 = t1 x2 = t2 . . . xn = tn

What about limited intersections: _ ∩ I, for I a finite interval?

{

x1 = {0} ∪ x2 + {1} ∪ x2 + {−1} x2 = {1}

  • constants {-1}, {0}, {1}
  • set union ∪
  • point-wise addition +
  • limited intersection ∩

33

slide-155
SLIDE 155
  • rbit-finite set of symbols S

Given a systems of equations decide, whether its least solution assigns a non-empty set to ? x1

{

x1 = t1 x2 = t2 . . . xn = tn

What about limited intersections: _ ∩ I, for I a finite interval?

  • constants {-1}, {0}, {1}
  • set union ∪
  • point-wise addition +
  • limited intersection ∩

The core problem - limited intersection

34

slide-156
SLIDE 156
  • rbit-finite set of symbols S

Given a systems of equations decide, whether its least solution assigns a non-empty set to ? x1

{

x1 = t1 x2 = t2 . . . xn = tn

What about limited intersections: _ ∩ I, for I a finite interval?

  • NP-complete
  • constants {-1}, {0}, {1}
  • set union ∪
  • point-wise addition +
  • limited intersection ∩

The core problem - limited intersection

34

slide-157
SLIDE 157
  • rbit-finite set of symbols S

Given a systems of equations decide, whether its least solution assigns a non-empty set to ? x1

{

x1 = t1 x2 = t2 . . . xn = tn

What about limited intersections: _ ∩ I, for I a finite interval?

  • NP-complete
  • non-emptiness of constrained definable PDA reduces to

the core problem (with exponential blow-up)

  • constants {-1}, {0}, {1}
  • set union ∪
  • point-wise addition +
  • limited intersection ∩

The core problem - limited intersection

34

slide-158
SLIDE 158
  • rbit-finite set of symbols S

Given a systems of equations decide, whether its least solution assigns a non-empty set to ? x1

{

x1 = t1 x2 = t2 . . . xn = tn

  • constants {-1}, {0}, {1}
  • set union ∪
  • point-wise addition +
  • limited intersection ∩

The core problem - limited intersection

35

slide-159
SLIDE 159
  • rbit-finite set of symbols S

Given a systems of equations decide, whether its least solution assigns a non-empty set to ? x1

{

x1 = t1 x2 = t2 . . . xn = tn

What about _ ∩ I, for I an arbitrary interval?

  • constants {-1}, {0}, {1}
  • set union ∪
  • point-wise addition +
  • limited intersection ∩

The core problem - limited intersection

35

slide-160
SLIDE 160
  • rbit-finite set of symbols S

Given a systems of equations decide, whether its least solution assigns a non-empty set to ? x1

{

x1 = t1 x2 = t2 . . . xn = tn

What about _ ∩ I, for I an arbitrary interval?

  • in EXPTIME, by reduction to 1-BVASS(+ -)
  • constants {-1}, {0}, {1}
  • set union ∪
  • point-wise addition +
  • limited intersection ∩

The core problem - limited intersection

35

slide-161
SLIDE 161
  • rbit-finite set of symbols S

Given a systems of equations decide, whether its least solution assigns a non-empty set to ? x1

{

x1 = t1 x2 = t2 . . . xn = tn

What about _ ∩ I, for I an arbitrary interval?

  • in EXPTIME, by reduction to 1-BVASS(+ -)
  • non-emptiness of definable PDA reduces to the core problem

(with exponential blow-up)

  • constants {-1}, {0}, {1}
  • set union ∪
  • point-wise addition +
  • limited intersection ∩

The core problem - limited intersection

35

slide-162
SLIDE 162

36

definable PDA systems of equations

  • ver sets of integers

Decision procedure

slide-163
SLIDE 163

exponential blowup

36

definable PDA systems of equations

  • ver sets of integers

Decision procedure

slide-164
SLIDE 164

exponential blowup

36

definable PDA

poly

systems of equations

  • ver sets of integers

Decision procedure

slide-165
SLIDE 165

exponential blowup

36

definable PDA

poly

systems of equations

  • ver sets of integers

poly

1-BVASS(+ -)

Decision procedure

slide-166
SLIDE 166

exponential blowup

36

definable PDA

poly

systems of equations

  • ver sets of integers

poly

1-BVASS(+ -)

Decision procedure

effective

slide-167
SLIDE 167

exponential blowup

36

definable PDA

poly

systems of equations

  • ver sets of integers

poly

1-BVASS(+ -)

Decision procedure

effective non-emptiness in EXPTIME

slide-168
SLIDE 168

Decision procedure

  • Motivation
  • Definable NFA
  • Definable PDA
  • The core problem: equations over sets of integers
  • Branching vector addition systems in dimension 1

37

slide-169
SLIDE 169

38

1-BVASS(+ -)

slide-170
SLIDE 170
  • automaton with 1 non-negative counter

38

1-BVASS(+ -)

slide-171
SLIDE 171
  • automaton with 1 non-negative counter
  • run is a tree

38

1-BVASS(+ -)

slide-172
SLIDE 172
  • automaton with 1 non-negative counter
  • run is a tree
  • in leaves: initial state with counter=1

38

1-BVASS(+ -)

slide-173
SLIDE 173
  • automaton with 1 non-negative counter
  • run is a tree
  • in leaves: initial state with counter=1
  • transition rules:

38

1-BVASS(+ -)

q l r

+

q l r

slide-174
SLIDE 174
  • automaton with 1 non-negative counter
  • run is a tree
  • in leaves: initial state with counter=1
  • transition rules:
  • non-emptiness problem: is there a run

with a final state in the root?

38

1-BVASS(+ -)

q l r

+

q l r

slide-175
SLIDE 175

39

Non-emptiness of 1-BVASS(+ -)

slide-176
SLIDE 176

39

Non-emptiness of 1-BVASS(+ -)

Theorem 4: The non-emptiness problem of 1-BVASS(+ -) is in EXPTIME.

slide-177
SLIDE 177

39

Non-emptiness of 1-BVASS(+ -)

Theorem 4: The non-emptiness problem of 1-BVASS(+ -) is in EXPTIME. Proof idea: Exponentially bounded witness.

slide-178
SLIDE 178

39

Non-emptiness of 1-BVASS(+ -)

Theorem 4: The non-emptiness problem of 1-BVASS(+ -) is in EXPTIME. Proof idea: Exponentially bounded witness. Complexity gap: PSPACE … EXPTIME

slide-179
SLIDE 179

39

Non-emptiness of 1-BVASS(+ -)

Theorem 4: The non-emptiness problem of 1-BVASS(+ -) is in EXPTIME. Theorem: [Goeller, Haase, Lazic, Totzke 2016] The non-emptiness problem of 1-BVASS(+) is in P (unary encoding). Proof idea: Exponentially bounded witness. Complexity gap: PSPACE … EXPTIME

slide-180
SLIDE 180

Definable sets

  • ffer a right setting for timed models of computation, like

timed automata, or timed pushdown automata.

40

Definable PDA

have decidable non-emptiness problem, by reduction to an extension of BVASS in dimension 1.

slide-181
SLIDE 181

Definable sets

  • ffer a right setting for timed models of computation, like

timed automata, or timed pushdown automata.

40

Definable PDA

have decidable non-emptiness problem, by reduction to an extension of BVASS in dimension 1.

thank you!