Bounded Model Checking of MPL Systems via Predicate Abstractions - - PowerPoint PPT Presentation

bounded model checking of mpl systems via predicate
SMART_READER_LITE
LIVE PREVIEW

Bounded Model Checking of MPL Systems via Predicate Abstractions - - PowerPoint PPT Presentation

Bounded Model Checking of MPL Systems via Predicate Abstractions FORMATS 2019 Muhammad Syifaul Mufid 1 , 3 Dieky Adzkiya 2 Alessandro Abate 1 1 Department of Computer Science, University of Oxford, UK 2 Department of Mathematics, ITS Surabaya,


slide-1
SLIDE 1

Bounded Model Checking of MPL Systems via Predicate Abstractions

FORMATS 2019

Muhammad Syifa’ul Mufid1,3 Dieky Adzkiya2 Alessandro Abate1

1Department of Computer Science, University of Oxford, UK 2Department of Mathematics, ITS Surabaya, Indonesia 3Indonesia Endowment Fund for Education (LPDP)

Amsterdam, 27 August 2019

slide-2
SLIDE 2

Outline

Max-Plus-Linear (MPL) systems and time difference Predicate abstractions of MPL systems Bounded Model Checking of MPL systems Conclusion 2 of 20

slide-3
SLIDE 3

Max-Plus-Linear Systems

Based on max-plus algebra (Rmax,⊕,⊗) where Rmax := R∪{−∞}.

For all a,b ∈ Rmax a⊕b := max{a,b}, a⊗b := a+b

The operations can be applied to matrices. For A ∈ Rn×n

max,

A⊗r to denote A⊗...⊗A (r times)

Defined as x(k +1) = A⊗x(k), where A ∈ Rn×n

max and x(k) ∈ Rn.

Applications: transportations, scheduling, biological systems... 3 of 20

slide-4
SLIDE 4

Max-Plus-Linear Systems

The precedence graph of A, denoted by G (A), is a weighted directed graph

with vertices 1,2...,n and an edge from j to i with weight A(i,j) for each A(i,j) = −∞

The average weight of path p = i0i1 ...ik in G (A) is equal to

A(i1,i0)+...+A(ik,ik−1) k

A matrix A ∈ Rn×n

max is called irreducible if G (A) is strongly connected

If A is irreducible then there is only one eigenvalue

λ = the maximum average weight of circuits

4 of 20

slide-5
SLIDE 5

Max-Plus-Linear Systems

Transient Condition*

For an irreducible matrix A ∈ Rn×n

max and its corresponding eigenvalue λ,

there exist k0,c ∈ N such that A⊗k+c = λc⊗A⊗k for all k ≥ k0. The smallest such k0 and c are called the transient and the cyclicity of A, respectively.

* Baccelli, F., Cohen, G., Olsder, G.J., Quadrat, J.P.: Synchronization and Linear-

ity: An Algebra for Discrete Event Systems. Wiley, Chichester (1992)

5 of 20

slide-6
SLIDE 6

Max-Plus-Linear Systems

Transient Condition*

For an irreducible matrix A ∈ Rn×n

max and its corresponding eigenvalue λ,

there exist k0,c ∈ N such that A⊗k+c = λc⊗A⊗k for all k ≥ k0. The smallest such k0 and c are called the transient and the cyclicity of A, respectively. Given x(k +1) = A⊗x(k) and an initial x(0) x(0), x(1), x(2), ... is eventually periodic in max-plus algebraic sense. For all k ≥ k0, x(k +c) = λc⊗x(k)

* Baccelli, F., Cohen, G., Olsder, G.J., Quadrat, J.P.: Synchronization and Linear-

ity: An Algebra for Discrete Event Systems. Wiley, Chichester (1992)

5 of 20

slide-7
SLIDE 7

Max-Plus-Linear Systems

Transient Condition*

For an irreducible matrix A ∈ Rn×n

max and its corresponding eigenvalue λ,

there exist k0,c ∈ N such that A⊗k+c = λc⊗A⊗k for all k ≥ k0. The smallest such k0 and c are called the transient and the cyclicity of A, respectively. Given x(k +1) = A⊗x(k) and an initial x(0) x(0), x(1), x(2), ... is eventually periodic in max-plus algebraic sense. For all k ≥ k0, x(k +c) = λc⊗x(k)    x1(k +c) . . . xn(k +c)    =    λc . . . λc   +    x1(k) . . . xn(k)   

* Baccelli, F., Cohen, G., Olsder, G.J., Quadrat, J.P.: Synchronization and Linear-

ity: An Algebra for Discrete Event Systems. Wiley, Chichester (1992)

5 of 20

slide-8
SLIDE 8

Max-Plus-Linear Systems

Time differences

xi(k)−xj(k) or xi(k +1)−xi(k)

6 of 20

slide-9
SLIDE 9

Max-Plus-Linear Systems

Time differences

xi −xj

  • r x′

i −xi

6 of 20

slide-10
SLIDE 10

Max-Plus-Linear Systems

Time differences

xi −xj

  • r x′

i −xi

Time difference propositions

xi′ −xi ∼ α ∼ ∈ {<,≤,≥,>} and α ∈ R

Time difference specifications

LTL formula over time difference propositions

(xi′ −xi ≥ 5) ≡ xi(2)−xi(1) ≥ 5 ♦(xi′ −xi ≤ 8) ≡ ∃k ≥ 0 s.t. ∀m ≥ k xi(m+1)−xi(m) ≤ 8 6 of 20

slide-11
SLIDE 11

Max-Plus-Linear Systems

x(k +1) = A ⊗ x(k) set of initial vectors I TD spec ϕ A,I | = ϕ?

6 of 20

slide-12
SLIDE 12

Max-Plus-Linear Systems

x(k +1) = A ⊗ x(k) set of initial vectors I TD spec ϕ A,I | = ϕ?

I = Rn For all x(0) ∈ I x(0), x(1), x(2),... satisfies ϕ

6 of 20

slide-13
SLIDE 13

Max-Plus-Linear Systems

x(k +1) = A ⊗ x(k) set of initial vectors I TD spec ϕ A,I | = ϕ?

I = Rn For all x(0) ∈ I x(0), x(1), x(2),... satisfies ϕ

Infinite and continuous state space The primed variables This problem is undecidable Solve the problem by applying predicate abstractions (PA) and

bounded model checking (BMC)

6 of 20

slide-14
SLIDE 14

PA of MPL Systems

Abstractions: techniques to generate a finite and smaller system from a large

  • r even infinite-space system

ˆ S | = ϕ → S | = ϕ

7 of 20

slide-15
SLIDE 15

PA of MPL Systems

Abstractions: techniques to generate a finite and smaller system from a large

  • r even infinite-space system

ˆ S | = ϕ → S | = ϕ

MPL systems → Piece-Wise Affine (PWA) System

Partitioning state space into several convex domains (PWA regions). Each region has corresponding affine dynamics

Given A ∈ Rn×n

max, the region w.r.t. g ∈ {1,...,n}n is

Rg =

n

  • i=1

n

  • j=1
  • x ∈ Rn|xgi −xj ≥ A(i,j)−A(i,gi)
  • Rg is a Difference-Bound Matrix (DBM)

If Rg = /

0 then the corresponding affine dynamics xi′ = xgi +A(i,gi), i = 1,...,n

7 of 20

slide-16
SLIDE 16

PA of MPL Systems

Predicate abstraction: using a set of predicates

P = {p1,...,pk}

Predicates are identified from the (concrete) system and specifications Abstract states are generated from all Boolean assignments w.r.t. P

|ˆ S| ≤ 2k

Predicates also serve as atomic propositions*

* Clarke, E., Grumberg, O., Talupur, M., Wang, D.: Making predicate abstraction

  • efficient. In: Hunt, W.A., Somenzi, F. (eds.) CAV 2003. LNCS, vol. 2725, pp.

126-140. Springer, Heidelberg (2003).

8 of 20

slide-17
SLIDE 17

PA of MPL Systems

Predicates from MPL systems? 9 of 20

slide-18
SLIDE 18

PA of MPL Systems

Predicates from MPL systems?

Rg =

n

  • i=1

n

  • j=1
  • x ∈ Rn|xgi −xj ≥ A(i,j)−A(i,gi)
  • 9 of 20
slide-19
SLIDE 19

PA of MPL Systems

Predicates from MPL systems?

Rg =

n

  • i=1

n

  • j=1
  • x ∈ Rn|xgi −xj ≥ A(i,j)−A(i,gi)
  • Predicates are in the form of

xk −xj ∼ A(i,j)−A(i,k), i = 1,...,n, k < j ∈ fini where fini = {j|A(i,j) = −∞} WLOG ∼ ∈ {>,≥}

9 of 20

slide-20
SLIDE 20

PA of MPL Systems

Predicates from specifications?

xi′ −xi ∼ α max

j∈fini

{xj +A(i,j)}−xi ∼ α

10 of 20

slide-21
SLIDE 21

PA of MPL Systems

Predicates from specifications?

xi′ −xi ∼ α max

j∈fini

{xj +A(i,j)}−xi ∼ α Predicates are in the form of xj −xi ∼ α −A(i,j) for all j ∈ fini

If i ∈ fini i.e. A(i,i) = −∞, we can ignore xi −xi ∼ α −A(i,i) 10 of 20

slide-22
SLIDE 22

PA of MPL Systems

Example: x′ = A⊗x = 2 5 3 3

x1 x2

  • and t ≡ x′

1 −x1 ≤ 5

11 of 20

slide-23
SLIDE 23

PA of MPL Systems

Example: x′ = A⊗x = 2 5 3 3

x1 x2

  • and t ≡ x′

1 −x1 ≤ 5

Predicates from MPL system xk −xj ∼ A(i,j)−A(i,k) Predicates from TD proposition xj −xi ∼ α −A(i,j)

11 of 20

slide-24
SLIDE 24

PA of MPL Systems

Example: x′ = A⊗x = 2 5 3 3

x1 x2

  • and t ≡ x′

1 −x1 ≤ 5

Predicates from MPL system xk −xj ∼ A(i,j)−A(i,k) x1 −x2 ≥ 3 x1 −x2 ≥ 0 Predicates from TD proposition xj −xi ∼ α −A(i,j) x2 −x1 ≤ 0

11 of 20

slide-25
SLIDE 25

PA of MPL Systems

Example: x′ = A⊗x = 2 5 3 3

x1 x2

  • and t ≡ x′

1 −x1 ≤ 5

Predicates from MPL system xk −xj ∼ A(i,j)−A(i,k) x1 −x2 ≥ 3 x1 −x2 ≥ 0 Predicates from TD proposition xj −xi ∼ α −A(i,j) x2 −x1 ≤ 0 There are two predicates, P = Pmat ∪Ptime = {p1,p2} where p1 ≡ x1 −x2 ≥ 3 p2 ≡ x1 −x2 ≥ 0

11 of 20

slide-26
SLIDE 26

PA of MPL Systems

Example: There are four possible Boolean assignments ¬p1¬p2 ≡ (x1 −x2 < 3)∧(x1 −x2 < 0) ¬p1p2 ≡ (x1 −x2 < 3)∧(x1 −x2 ≥ 0) p1¬p2 ≡ (x1 −x2 ≥ 3)∧(x1 −x2 < 0) empty set p1p2 ≡ (x1 −x2 ≥ 3)∧(x1 −x2 ≥ 0) but only three abstracts states: ˆ s0 ≡ ¬p1¬p2 DBM(ˆ s0) = {x ∈ R2 | x1 −x2 < 0} ˆ s1 ≡ ¬p1p2 DBM(ˆ s1) = {x ∈ R2 | 0 ≤ x1 −x2 < 3} ˆ s2 ≡ p1p2 DBM(ˆ s2) = {x ∈ R2 | x1 −x2 ≥ 3}

11 of 20

slide-27
SLIDE 27

PA of MPL Systems

Example: There are four possible Boolean assignments ¬p1¬p2 ≡ (x1 −x2 < 3)∧(x1 −x2 < 0) ¬p1p2 ≡ (x1 −x2 < 3)∧(x1 −x2 ≥ 0) p1¬p2 ≡ (x1 −x2 ≥ 3)∧(x1 −x2 < 0) empty set p1p2 ≡ (x1 −x2 ≥ 3)∧(x1 −x2 ≥ 0) but only three abstracts states: ˆ s0 ≡ ¬p1¬p2 DBM(ˆ s0) = {x ∈ R2 | x1 −x2 < 0} ˆ s1 ≡ ¬p1p2 DBM(ˆ s1) = {x ∈ R2 | 0 ≤ x1 −x2 < 3} ˆ s2 ≡ p1p2 DBM(ˆ s2) = {x ∈ R2 | x1 −x2 ≥ 3} Next step: generate the abstract transition system

11 of 20

slide-28
SLIDE 28

PA of MPL Systems

Concrete transition systems

Definition (Trans. sys. associated with MPL system)

A transition system for an MPL system is a tuple TS = (S,T,I,AP,L) where

  • the set of states S is Rn,
  • (x,x′) ∈ T if x′ = A⊗x,
  • I ⊆ Rn is a set of initial conditions, (we use I = Rn)
  • AP is a set of time-difference propositions,
  • the labelling function L : S → 2AP is defined as follows: a state x ∈ S is

labelled by ‘xi′ −xi ∼ α’ if [A⊗x−x]i ∼ α, where ∼ ∈ {>,≥,<,≤}.

12 of 20

slide-29
SLIDE 29

PA of MPL Systems

Concrete transition systems

Definition (Trans. sys. associated with MPL system)

A transition system for an MPL system is a tuple TS = (S,T,I,AP,L) where

  • the set of states S is Rn,
  • (x,x′) ∈ T if x′ = A⊗x,
  • I ⊆ Rn is a set of initial conditions, (we use I = Rn)
  • AP is a set of time-difference propositions,
  • the labelling function L : S → 2AP is defined as follows: a state x ∈ S is

labelled by ‘xi′ −xi ∼ α’ if [A⊗x−x]i ∼ α, where ∼ ∈ {>,≥,<,≤}.

The (abstract) transition system for MPL system is ˆ

TS = (ˆ S, ˆ T,ˆ I,Pmat ∪Ptime, ˆ L)

12 of 20

slide-30
SLIDE 30

PA of MPL Systems

Concrete transition systems

Definition (Trans. sys. associated with MPL system)

A transition system for an MPL system is a tuple TS = (S,T,I,AP,L) where

  • the set of states S is Rn,
  • (x,x′) ∈ T if x′ = A⊗x,
  • I ⊆ Rn is a set of initial conditions, (we use I = Rn)
  • AP is a set of time-difference propositions,
  • the labelling function L : S → 2AP is defined as follows: a state x ∈ S is

labelled by ‘xi′ −xi ∼ α’ if [A⊗x−x]i ∼ α, where ∼ ∈ {>,≥,<,≤}.

The (abstract) transition system for MPL system is ˆ

TS = (ˆ S, ˆ T,ˆ I,Pmat ∪Ptime, ˆ L) ∀ˆ s ∈ ˆ S, p ∈ ˆ L(ˆ s) iff p is true in ˆ s

12 of 20

slide-31
SLIDE 31

PA of MPL Systems

Concrete transition systems

Definition (Trans. sys. associated with MPL system)

A transition system for an MPL system is a tuple TS = (S,T,I,AP,L) where

  • the set of states S is Rn,
  • (x,x′) ∈ T if x′ = A⊗x,
  • I ⊆ Rn is a set of initial conditions, (we use I = Rn)
  • AP is a set of time-difference propositions,
  • the labelling function L : S → 2AP is defined as follows: a state x ∈ S is

labelled by ‘xi′ −xi ∼ α’ if [A⊗x−x]i ∼ α, where ∼ ∈ {>,≥,<,≤}.

The (abstract) transition system for MPL system is ˆ

TS = (ˆ S, ˆ T,ˆ I,Pmat ∪Ptime, ˆ L) (ˆ si,ˆ sj) ∈ ˆ T if Im(DBM(ˆ si))∩DBM(ˆ sj) = / where Im(DBM(ˆ si)) = {A⊗x | x ∈ DBM(ˆ si)} (by DBM manipulation)

12 of 20

slide-32
SLIDE 32

PA of MPL Systems

ˆ s0 ˆ s1 ˆ s2

/ {p2} {p1,p2}

ˆ TS

13 of 20

slide-33
SLIDE 33

PA of MPL Systems

ˆ s0 ˆ s1 ˆ s2

/ {p2} {p1,p2}

ˆ TS (x′

1 −x1 ≤ 5) ⇔ p2 13 of 20

slide-34
SLIDE 34

PA of MPL Systems

ˆ s0 ˆ s1 ˆ s2

/ {p2} {p1,p2}

ˆ TS (x′

1 −x1 ≤ 5) ⇔ p2

Specs: ♦(x′

1 −x1 ≤ 5) ≡ ♦p2 13 of 20

slide-35
SLIDE 35

PA of MPL Systems

ˆ s0 ˆ s1 ˆ s2

/ {p2} {p1,p2}

ˆ TS (x′

1 −x1 ≤ 5) ⇔ p2

Specs: ♦(x′

1 −x1 ≤ 5) ≡ ♦p2 One TD proposition may correspond to more than one predicates

Proposition

Suppose p1,...,pk are the predicates corresponding to a TD proposition t ≡ x′

i −xi ∼ α.

  • i. For ∼ {>,≥}, t ⇔ (p1 ∨...∨pk)
  • ii. For ∼ {<,≤}, t ⇔ (p1 ∧...∧pk)

13 of 20

slide-36
SLIDE 36

PA of MPL Systems

ˆ s0 ˆ s1 ˆ s2

/ {p2} {p1,p2}

ˆ TS (x′

1 −x1 ≤ 5) ⇔ p2

Specs: ♦(x′

1 −x1 ≤ 5) ≡ ♦p2

ˆ TS | = ♦p2 → TS | = ♦(x′

1 −x1 ≤ 5)?

dont know yet

13 of 20

slide-37
SLIDE 37

PA of MPL Systems

x(k +1) = A ⊗ x(k) set of initial vectors I TD spec ϕ A,I | = ϕ?

14 of 20

slide-38
SLIDE 38

PA of MPL Systems

x(k +1) = A ⊗ x(k) set of initial vectors I TD spec ϕ A,I | = ϕ?

  • Pred. Abs.

ˆ TS | = ˆ ϕ?

Infinite and continuous state space The primed variables This problem is undecidable 14 of 20

slide-39
SLIDE 39

BMC of MPL Systems

Find a counterexample with length k Increase the length until a pre-known completeness threshold is reached or

the problem becomes intractable

To find completeness threshold is at least as hard as solving the original

model-checking problem

15 of 20

slide-40
SLIDE 40

BMC of MPL Systems

Find a counterexample with length k Increase the length until a pre-known completeness threshold is reached or

the problem becomes intractable

To find completeness threshold is at least as hard as solving the original

model-checking problem

Two types of k-length bounded counterexample π = ˆ

s0 ...ˆ sk

ˆ s0 ˆ s1 ... ˆ sk ˆ s0 ˆ s1 ... ˆ sl ... ˆ sk

no-loop path lasso-shaped path

15 of 20

slide-41
SLIDE 41

BMC of MPL Systems

Find a counterexample with length k Increase the length until a pre-known completeness threshold is reached or

the problem becomes intractable

To find completeness threshold is at least as hard as solving the original

model-checking problem

Two types of k-length bounded counterexample π = ˆ

s0 ...ˆ sk

ˆ s0 ˆ s1 ... ˆ sk ˆ s0 ˆ s1 ... ˆ sl ... ˆ sk

no-loop path lasso-shaped path

lasso-shaped: π = πstem(πloop)ω where πstem = ˆ s0 ...ˆ sl−1 and πloop = ˆ sl ...ˆ sk

15 of 20

slide-42
SLIDE 42

BMC of MPL Systems

The framework

x(k + 1) = A ⊗ x(k) set of initial vectors I TD spec ϕ A,I | = ϕ?

  • Pred. Abs.

ˆ TS | = ˆ ϕ? BMC ( ˆ TS, ˆ ϕ,k) k < CT

not found yes k ← k +1

ˆ TS | = ˆ ϕ A,I | = ϕ

no

spuriousness checking

found

ˆ TS | = ˆ ϕ A,I | = ϕ

no

refinement procedure

yes ˆ TS ← ˆ TSref 16 of 20

slide-43
SLIDE 43

BMC of MPL Systems

The framework

x(k + 1) = A ⊗ x(k) set of initial vectors I TD spec ϕ A,I | = ϕ?

  • Pred. Abs.

ˆ TS | = ˆ ϕ? BMC ( ˆ TS, ˆ ϕ,k) k < CT

not found yes k ← k +1

ˆ TS | = ˆ ϕ A,I | = ϕ

no

spuriousness checking

found

ˆ TS | = ˆ ϕ A,I | = ϕ

no

refinement procedure

yes ˆ TS ← ˆ TSref BMC by NuSMV 2.6 16 of 20

slide-44
SLIDE 44

BMC of MPL Systems

Spuriousness checking

Algorithms via forward-reachability analysis. Completeness:

For no-loop paths For lasso-shaped paths (irreducible MPL systems only) 17 of 20

slide-45
SLIDE 45

BMC of MPL Systems

Spuriousness checking

Algorithms via forward-reachability analysis. Completeness:

For no-loop paths For lasso-shaped paths (irreducible MPL systems only) Refinement procedure Lazy abstraction*: find pivot state, a state in which the spuriousness starts

* Henzinger, T.A., Jhala, R., Majumdar, R., Sutre, G.: Lazy abstraction. In: Pro-

ceedings of the ACM Symposium on Principles of Programming Languages (POPL 2002), pp. 58-70 (2002).

17 of 20

slide-46
SLIDE 46

BMC of MPL Systems

Spuriousness checking

Algorithms via forward-reachability analysis. Completeness:

For no-loop paths For lasso-shaped paths (irreducible MPL systems only) Refinement procedure Lazy abstraction: find pivot state, a state in which the spuriousness starts Splitting procedure in VeriSiMPL 2*

splitting a state with more than one outgoing transitions

* Adzkiya, D., Zhang, Y., Abate, A.: VeriSiMPL 2: an open-source software for

the verification of max-plus-linear systems. Discrete Event Dyn. Syst. 26(1), 109-145 (2016).

17 of 20

slide-47
SLIDE 47

BMC of MPL Systems

Spuriousness checking

Algorithms via forward-reachability analysis. Completeness:

For no-loop paths For lasso-shaped paths (irreducible MPL systems only) Refinement procedure

ˆ s0 ˆ s1 ˆ s2

/ {p2} {p1,p2}

ˆ TS ˆ TS | = ♦(p2) π = (ˆ s1)( ˆ s0ˆ s1)ω π is spurious pivot state is ˆ s1

17 of 20

slide-48
SLIDE 48

BMC of MPL Systems

Spuriousness checking

Algorithms via forward-reachability analysis. Completeness:

For no-loop paths For lasso-shaped paths (irreducible MPL systems only) Refinement procedure

ˆ s0 ˆ s1 ˆ s2

/ {p2} {p1,p2}

ˆ TS ˆ TS | = ♦(p2) π = (ˆ s1)( ˆ s0ˆ s1)ω π is spurious pivot state is ˆ s1

DBM(ˆ s0) = {x ∈ R2 | x1 −x2 < 0} DBM(ˆ s1) = {x ∈ R2 | 0 ≤ x1 −x2 < 3} DBM(ˆ s2) = {x ∈ R2 | x1 −x2 ≥ 3}

17 of 20

slide-49
SLIDE 49

BMC of MPL Systems

Spuriousness checking

Algorithms via forward-reachability analysis. Completeness:

For no-loop paths For lasso-shaped paths (irreducible MPL systems only) Refinement procedure

ˆ s0 ˆ s1 ˆ s2

/ {p2} {p1,p2}

ˆ TS

ˆ s0 ˆ s1a ˆ s2 ˆ s1b

/ {p2} {p2} {p1,p2}

ˆ TSref

DBM(ˆ s0) = {x ∈ R2 | x1 −x2 < 0} DBM(ˆ s1) = {x ∈ R2 | 0 ≤ x1 −x2 < 3} DBM(ˆ s2) = {x ∈ R2 | x1 −x2 ≥ 3} Partition of DBM(ˆ s1) is DBM(ˆ s1a) = {x ∈ R2 | 0 ≤ x1 −x2 ≤ 2} and DBM(ˆ s1b) = {x ∈ R2 | 2 ≤ x1 −x2 < 3}

17 of 20

slide-50
SLIDE 50

BMC of MPL Systems

Spuriousness checking

Algorithms via forward-reachability analysis. Completeness:

For no-loop paths For lasso-shaped paths (irreducible MPL systems only) Refinement procedure Lazy abstraction: find pivot state, a state in which the spuriousness starts Splitting procedure in VeriSiMPL 2

splitting a state with more than one outgoing transitions

Upper bound of completeness thresholds

Lemma

Consider an irreducible A ∈ Rn×n

max with transient k0 and cyclicity c and the

resulting abstract transition system ˆ TS = (ˆ S, ˆ T,ˆ I,Pmat ∪Ptime, ˆ L). The completeness threshold for ˆ TS and for any LTL formula ˆ ϕ over Pmat ∪Ptime is bounded by k0 +c.

17 of 20

slide-51
SLIDE 51

BMC of MPL Systems

BMC ( ˆ TS, ˆ ϕ,k) k < CT

not found yes k ← k +1

ˆ TS | = ˆ ϕ

no

spuriousness checking

found

ˆ TS | = ˆ ϕ

no

refinement procedure

yes ˆ TS ← ˆ TSref 18 of 20

slide-52
SLIDE 52

BMC of MPL Systems

BMC ( ˆ TS, ˆ ϕ,k) k < k0 +c

not found yes k ← k +1

ˆ TS | = ˆ ϕ

no

spuriousness checking

found

ˆ TS | = ˆ ϕ

no

refinement procedure

yes ˆ TS ← ˆ TSref

BMC for irreducible MPL systems is complete

18 of 20

slide-53
SLIDE 53

BMC of MPL Systems

x(k +1) = A ⊗ x(k) set of initial vectors I TD spec ϕ A,I | = ϕ

  • Pred. Abs.

ˆ TS | = ˆ ϕ?

Infinite and continuous state space The primed variables This problem is undecidable 18 of 20

slide-54
SLIDE 54

BMC of MPL Systems

x(k +1) = A ⊗ x(k) set of initial vectors I TD spec ϕ A,I | = ϕ

  • Pred. Abs.

ˆ TS | = ˆ ϕ?

BMC ( ˆ TS, ˆ ϕ,k)

Infinite and continuous state space The primed variables This problem is decidable for irreducible MPL systems 18 of 20

slide-55
SLIDE 55

Conclusions

New abstraction technique of MPL systems

via a set of predicates.

BMC of MPL systems w.r.t. TD specifications is decidable

for irreducible ones.

The completeness thresholds are related to the transient

and cyclicity of MPL systems

19 of 20