Checking Two Structural Properties of Vector Addition Systems with - - PowerPoint PPT Presentation

checking two structural properties of vector addition
SMART_READER_LITE
LIVE PREVIEW

Checking Two Structural Properties of Vector Addition Systems with - - PowerPoint PPT Presentation

Checking Two Structural Properties of Vector Addition Systems with States Florent Avellaneda & Rmi Morin Universit dAix Marseille 6 dcembre 2012 Florent Avellaneda MOVEP 2012 1 / 19 VASS Definition A vector addition system


slide-1
SLIDE 1

Checking Two Structural Properties of Vector Addition Systems with States

Florent Avellaneda & Rémi Morin

Université d’Aix Marseille

6 décembre 2012

Florent Avellaneda MOVEP 2012 1 / 19

slide-2
SLIDE 2

VASS

Definition

A vector addition system with state (VASS) is a directed graph G = (Q, A, i) with : Q a finite set of nodes. A ⊆ Q × Zd × Q a finite set of edges labeled by vectors. An initial state ∈ Q × Nd.

q1 q2 l1 l2 l3 l4 (-1, 1) (1, -1) (0, -1) (-1, 0) (5, 5)

Florent Avellaneda MOVEP 2012 2 / 19

slide-3
SLIDE 3

VASS

Definition

A vector addition system with state (VASS) is a directed graph G = (Q, A, i) with : Q a finite set of nodes. A ⊆ Q × Zd × Q a finite set of edges labeled by vectors. An initial state ∈ Q × Nd.

q1 q2 l1 l2 l3 l4 (-1, 1) (1, -1) (0, -1) (-1, 0) (5, 5)

Florent Avellaneda MOVEP 2012 2 / 19

slide-4
SLIDE 4

VASS

Definition

A vector addition system with state (VASS) is a directed graph G = (Q, A, i) with : Q a finite set of nodes. A ⊆ Q × Zd × Q a finite set of edges labeled by vectors. An initial state ∈ Q × Nd.

q1 q2 l1 l2 l3 l4 (-1, 1) (1, -1) (0, -1) (-1, 0) (5, 5)

Florent Avellaneda MOVEP 2012 2 / 19

slide-5
SLIDE 5

VASS

Definition

A vector addition system with state (VASS) is a directed graph G = (Q, A, i) with : Q a finite set of nodes. A ⊆ Q × Zd × Q a finite set of edges labeled by vectors. An initial state ∈ Q × Nd.

q1 q2 l1 l2 l3 l4 (-1, 1) (1, -1) (0, -1) (-1, 0) (5, 5)

Florent Avellaneda MOVEP 2012 2 / 19

slide-6
SLIDE 6

VASS

Definition

A vector addition system with state (VASS) is a directed graph G = (Q, A, i) with : Q a finite set of nodes. A ⊆ Q × Zd × Q a finite set of edges labeled by vectors. An initial state ∈ Q × Nd.

q1 q2 l1 l2 l3 l4 (-1, 1) (1, -1) (0, -1) (-1, 0) (5, 5)

Florent Avellaneda MOVEP 2012 2 / 19

slide-7
SLIDE 7

VASS

Definition

A vector addition system with state (VASS) is a directed graph G = (Q, A, i) with : Q a finite set of nodes. A ⊆ Q × Zd × Q a finite set of edges labeled by vectors. An initial state ∈ Q × Nd.

q1 q2 l1 l2 l3 l4 (-1, 1) (1, -1) (0, -1) (-1, 0) (5, 5)

Florent Avellaneda MOVEP 2012 2 / 19

slide-8
SLIDE 8

VASS

Definition

A vector addition system with state (VASS) is a directed graph G = (Q, A, i) with : Q a finite set of nodes. A ⊆ Q × Zd × Q a finite set of edges labeled by vectors. An initial state ∈ Q × Nd.

q1 q2 l1 l2 l3 l4 (-1, 1) (1, -1) (0, -1) (-1, 0) (5, 5)

Florent Avellaneda MOVEP 2012 2 / 19

slide-9
SLIDE 9

VASS

Definition

A vector addition system with state (VASS) is a directed graph G = (Q, A, i) with : Q a finite set of nodes. A ⊆ Q × Zd × Q a finite set of edges labeled by vectors. An initial state ∈ Q × Nd.

q1 q2 l1 l2 l3 l4 (-1, 1) (1, -1) (0, -1) (-1, 0) (5, 5)

Florent Avellaneda MOVEP 2012 2 / 19

slide-10
SLIDE 10

VASS

Definition

A vector addition system with state (VASS) is a directed graph G = (Q, A, i) with : Q a finite set of nodes. A ⊆ Q × Zd × Q a finite set of edges labeled by vectors. An initial state ∈ Q × Nd.

q1 q2 l1 l2 l3 l4 (-1, 1) (1, -1) (0, -1) (-1, 0) (5, 5)

Florent Avellaneda MOVEP 2012 2 / 19

slide-11
SLIDE 11

VASS

Definition

A vector addition system with state (VASS) is a directed graph G = (Q, A, i) with : Q a finite set of nodes. A ⊆ Q × Zd × Q a finite set of edges labeled by vectors. An initial state ∈ Q × Nd.

q1 q2 l1 l2 l3 l4 (-1, 1) (1, -1) (0, -1) (-1, 0) (5, 5)

Florent Avellaneda MOVEP 2012 2 / 19

slide-12
SLIDE 12

Petri net

VASS are very close to Petri nets : A VASS can be simulated by a Petri net.

a b q1 q2

q1 q2 l1 l2 l3 l4 b→a b→∅ a→∅ a→b ∅→4a 3b

Florent Avellaneda MOVEP 2012 3 / 19

slide-13
SLIDE 13

Petri net

VASS are very close to Petri nets : A VASS can be simulated by a Petri net. A Petri net is a VASS with one state.

3c→a 2b 3a→4b 5c a b→2c b 3c→2a

Florent Avellaneda MOVEP 2012 3 / 19

slide-14
SLIDE 14

MSG

MSG (Message Sequence Graph)

Automaton where each node is labeled by an MSC.

a b c a b c a b c a b c b c

MSGs are a special case of VASSs. VASSs are exponentially more concise than MSGs.

Florent Avellaneda MOVEP 2012 4 / 19

slide-15
SLIDE 15

Example : simplified sliding window protocol

j m→b j i j n.w i b→i w i w→i b j b→j m

i j i j i j i j i j i j

... ... n

Florent Avellaneda MOVEP 2012 5 / 19

slide-16
SLIDE 16

Termination

Carstensen 87

Termination of a given VASS is EXPSPACE-hard.

Florent Avellaneda MOVEP 2012 6 / 19

slide-17
SLIDE 17

Termination

Carstensen 87

Termination of a given VASS is EXPSPACE-hard. But, structural termination is polynomial problem.

Florent Avellaneda MOVEP 2012 6 / 19

slide-18
SLIDE 18

Property

A VASS is structurally terminating if and only if there exists no closed path whose cost is ≥ 0.

Florent Avellaneda MOVEP 2012 7 / 19

slide-19
SLIDE 19

Property

A VASS is structurally terminating if and only if there exists no closed path whose cost is ≥ 0. Problem solvable in polynomial time by linear programming.

Florent Avellaneda MOVEP 2012 7 / 19

slide-20
SLIDE 20

Minimum length of a closed path solution is potentially exponential.

(n, -n) (-1, 1) l1 l2

  • l1. . . l2l2l2l2 . . .
  • n times

⇒ l1 + n · l2 The counter example is a multiset of edges.

Florent Avellaneda MOVEP 2012 8 / 19

slide-21
SLIDE 21

Challenge

The counter example as multiset of edge is too complex.

Goal

Find a simple representation of counter examples.

Solution

Use a set of lassos.

Florent Avellaneda MOVEP 2012 9 / 19

slide-22
SLIDE 22

Definition

Let Y0 be a circuit starting from node n. Let Y1 be a simple path from qin to n and Y2 be a simple path from n to qin. The closed path Y1 · (Y0)k · Y2 is called a lasso with valuation k starting from qin. qin

n

k times

Florent Avellaneda MOVEP 2012 10 / 19

slide-23
SLIDE 23

Result

Theorem

Let H be a closed path given as a multiset of edges. We can compute in polynomial time a finite multiset of lassos S starting from b ∈ VH such that cost(S) = m × cost(H) with m ∈ N∗.

(-1, -1) a1 a3 (-1, -1) a2 (-1, -1) l1 l2 (3, -1) (-1, 2) q0 q1 q2 Florent Avellaneda MOVEP 2012 11 / 19

slide-24
SLIDE 24

Example

Theorem

Let H be a closed path given as a multiset of edges. We can compute in polynomial time a finite multiset of lassos S starting from b ∈ VH such that cost(S) = m × cost(H) with m ∈ N∗.

(-1, -1) a1 a3 (-1, -1) a2 (-1, -1) l1 l2 (3, -1) (-1, 2) q0 q1 q2 x1 x1 x3 x5 x1

H = a1 + 5l1 + a2 + 3l2 + a3 S1 = a1 + 10l1 + a2 + a3 S2 = a1 + a2 + 6l2 + a3 S = S1 + S2 = 2 × cost(H)

Florent Avellaneda MOVEP 2012 12 / 19

slide-25
SLIDE 25

Example

Theorem

Let H be a closed path given as a multiset of edges. We can compute in polynomial time a finite multiset of lassos S starting from b ∈ VH such that cost(S) = m × cost(H) with m ∈ N∗.

(-1, -1) a1 a3 (-1, -1) a2 (-1, -1) l1 l2 (3, -1) (-1, 2) q0 q1 q2 x1 x1 x1 x10

H = a1 + 5l1 + a2 + 3l2 + a3 S1 = a1 + 10l1 + a2 + a3 S2 = a1 + a2 + 6l2 + a3 S = S1 + S2 = 2 × cost(H)

Florent Avellaneda MOVEP 2012 13 / 19

slide-26
SLIDE 26

Example

Theorem

Let H be a closed path given as a multiset of edges. We can compute in polynomial time a finite multiset of lassos S starting from b ∈ VH such that cost(S) = m × cost(H) with m ∈ N∗.

(-1, -1) a1 a3 (-1, -1) a2 (-1, -1) l1 l2 (3, -1) (-1, 2) q0 q1 q2 x1 x1 x6 x1

H = a1 + 5l1 + a2 + 3l2 + a3 S1 = a1 + 10l1 + a2 + a3 S2 = a1 + a2 + 6l2 + a3 S = S1 + S2 = 2 × cost(H)

Florent Avellaneda MOVEP 2012 14 / 19

slide-27
SLIDE 27

Example

Theorem

Let H be a closed path given as a multiset of edges. We can compute in polynomial time a finite multiset of lassos S starting from b ∈ VH such that cost(S) = m × cost(H) with m ∈ N∗.

(-1, -1) a1 a3 (-1, -1) a2 (-1, -1) l1 l2 (3, -1) (-1, 2) q0 q1 q2

H = a1 + 5l1 + a2 + 3l2 + a3 S1 = a1 + 10l1 + a2 + a3 S2 = a1 + a2 + 6l2 + a3 S = S1 + S2 cost(S) = 2 × cost(H)

Florent Avellaneda MOVEP 2012 15 / 19

slide-28
SLIDE 28

Theorem

Let H be a closed path given as a multiset of edges. We can compute in polynomial time a finite multiset of lassos S starting from b ∈ VH such that cost(S) = m × cost(H) with m ∈ N∗. Idea :

b H

Florent Avellaneda MOVEP 2012 16 / 19

slide-29
SLIDE 29

Theorem

Let H be a closed path given as a multiset of edges. We can compute in polynomial time a finite multiset of lassos S starting from b ∈ VH such that cost(S) = m × cost(H) with m ∈ N∗. Idea :

b H L

Florent Avellaneda MOVEP 2012 16 / 19

slide-30
SLIDE 30

Theorem

Let H be a closed path given as a multiset of edges. We can compute in polynomial time a finite multiset of lassos S starting from b ∈ VH such that cost(S) = m × cost(H) with m ∈ N∗. Idea :

b H L b'

Florent Avellaneda MOVEP 2012 16 / 19

slide-31
SLIDE 31

Theorem

Let H be a closed path given as a multiset of edges. We can compute in polynomial time a finite multiset of lassos S starting from b ∈ VH such that cost(S) = m × cost(H) with m ∈ N∗. Idea :

b H L b' L'

Florent Avellaneda MOVEP 2012 16 / 19

slide-32
SLIDE 32

Theorem

Let H be a closed path given as a multiset of edges. We can compute in polynomial time a finite multiset of lassos S starting from b ∈ VH such that cost(S) = m × cost(H) with m ∈ N∗. Idea :

b H L'

Florent Avellaneda MOVEP 2012 16 / 19

slide-33
SLIDE 33

Theorem

Let H be a closed path given as a multiset of edges. We can compute in polynomial time a finite multiset of lassos S starting from b ∈ VH such that cost(S) = m × cost(H) with m ∈ N∗. Idea :

b H L'

Florent Avellaneda MOVEP 2012 16 / 19

slide-34
SLIDE 34

Theorem

Let H be a closed path given as a multiset of edges. We can compute in polynomial time a finite multiset of lassos S starting from b ∈ VH such that cost(S) = m × cost(H) with m ∈ N∗. Idea :

b 3H L'

Florent Avellaneda MOVEP 2012 16 / 19

slide-35
SLIDE 35

Corollary

Let H be a closed path with b ∈ VH. Then there exist a closed path H′ with almost d lassos starting from b such that cost(H) = m × cost(H′). Idea : x1 · cost(S1) + x2 · cost(S2) + ... + x|A| · cost(S|A|) ≥ By linear programming, we can find d lassos such that xi1 · cost(Si1) + xi2 · cost(Si2) + ... + xid · cost(Sid) ≥

Florent Avellaneda MOVEP 2012 17 / 19

slide-36
SLIDE 36

Conclusion

Structural termination of VASS is equivalent to search a positive closed path. Linear programming solve this problem in polynomial time, but with complex counter example. Polynomial algorithm to represent a counter example by d lassos.

Florent Avellaneda MOVEP 2012 18 / 19

slide-37
SLIDE 37

Thanks.

Florent Avellaneda MOVEP 2012 19 / 19