Toward Uniform Random Generation in 1-safe Petri Nets Yi-Ting Chen - - PowerPoint PPT Presentation

toward uniform random generation in 1 safe petri nets
SMART_READER_LITE
LIVE PREVIEW

Toward Uniform Random Generation in 1-safe Petri Nets Yi-Ting Chen - - PowerPoint PPT Presentation

Toward Uniform Random Generation in 1-safe Petri Nets Yi-Ting Chen (LIP6 / Sorbonne Universit) Advisor: Jean Mairesse, Samy Abbes 2019 Apr 23 - LIPN Introduction Uniform measure Uniform measure for actions Uniqueness of uniform measure


slide-1
SLIDE 1

Toward Uniform Random Generation in 1-safe Petri Nets

Yi-Ting Chen (LIP6 / Sorbonne Université)

Advisor: Jean Mairesse, Samy Abbes

2019 Apr 23 - LIPN

slide-2
SLIDE 2

Introduction Uniform measure Uniform measure for actions Uniqueness of uniform measure Ongoing directions

Motivation

  • Complexity and scale in software systems are increasing.
  • The crucial factor is related to concurrency.
slide-3
SLIDE 3

Introduction Uniform measure Uniform measure for actions Uniqueness of uniform measure Ongoing directions

Motivation

  • Complexity and scale in software systems are increasing.
  • The crucial factor is related to concurrency.
  • Difficulty : "Combinatorial explosion problems"
slide-4
SLIDE 4

Introduction Uniform measure Uniform measure for actions Uniqueness of uniform measure Ongoing directions

Motivation

  • Complexity and scale in software systems are increasing.
  • The crucial factor is related to concurrency.
  • Difficulty : "Combinatorial explosion problems"
  • Approach : Statistical model checking
slide-5
SLIDE 5

Introduction Uniform measure Uniform measure for actions Uniqueness of uniform measure Ongoing directions

Motivation

  • Complexity and scale in software systems are increasing.
  • The crucial factor is related to concurrency.
  • Difficulty : "Combinatorial explosion problems"
  • Approach : Statistical model checking

→ probabilistic framework in a trace monoid

slide-6
SLIDE 6

Introduction Uniform measure Uniform measure for actions Uniqueness of uniform measure Ongoing directions

Motivation

  • Complexity and scale in software systems are increasing.
  • The crucial factor is related to concurrency.
  • Difficulty : "Combinatorial explosion problems"
  • Approach : Statistical model checking

→ probabilistic framework in a trace monoid

  • Goal : Random generation for concurrent systems

→ 1-safe Petri nets

slide-7
SLIDE 7

Introduction Uniform measure Uniform measure for actions Uniqueness of uniform measure Ongoing directions

Concurrent models - 1-safe Petri nets

a b c

M0

M0 M1 c c a b

Reachability graph

slide-8
SLIDE 8

Introduction Uniform measure Uniform measure for actions Uniqueness of uniform measure Ongoing directions

Concurrent models - 1-safe Petri nets

a b c

M1

M0 M1 c c a b

Reachability graph

slide-9
SLIDE 9

Introduction Uniform measure Uniform measure for actions Uniqueness of uniform measure Ongoing directions

Concurrent models - 1-safe Petri nets

a b c

M0

M0 M1 c c a b

Reachability graph

  • Concurrency :
  • Casuality :
  • Conflit :
slide-10
SLIDE 10

Introduction Uniform measure Uniform measure for actions Uniqueness of uniform measure Ongoing directions

Concurrent models - 1-safe Petri nets

a b c

M0

M0 M1 c c a b

Reachability graph

  • Concurrency : a, c
  • Casuality :
  • Conflit :
slide-11
SLIDE 11

Introduction Uniform measure Uniform measure for actions Uniqueness of uniform measure Ongoing directions

Concurrent models - 1-safe Petri nets

a b c

M0

M0 M1 c c a b

Reachability graph

  • Concurrency : a, c
  • Casuality : a, b
  • Conflit :
slide-12
SLIDE 12

Introduction Uniform measure Uniform measure for actions Uniqueness of uniform measure Ongoing directions

Concurrent models - 1-safe Petri nets

a b c

M0

M0 M1 c c a b

Reachability graph

  • Concurrency : a, c
  • Casuality : a, b
  • Conflit :

b, c

slide-13
SLIDE 13

Introduction Uniform measure Uniform measure for actions Uniqueness of uniform measure Ongoing directions

Concurrent models - 1-safe Petri nets

a b c

M0

M0 M1 c c a b

Reachability graph

  • From M0, abacb is a valid firing sequence.
slide-14
SLIDE 14

Introduction Uniform measure Uniform measure for actions Uniqueness of uniform measure Ongoing directions

Concurrent models - 1-safe Petri nets

a b c

M0

M0 M1 c c a b

Reachability graph

  • From M0, abacb is a valid firing sequence.
  • We lost the feature of concurrency by viewing the firing

sequences as the sequential executions. ex : abacb = abcab

slide-15
SLIDE 15

Introduction Uniform measure Uniform measure for actions Uniqueness of uniform measure Ongoing directions

Concurrent models - trace monoids

Trace monoid M

  • Alphabet : Σ = {a, b, c}
  • Independent relation :

I = {(a, c)} Heap of pieces

  • Pieces:

a b c

slide-16
SLIDE 16

Introduction Uniform measure Uniform measure for actions Uniqueness of uniform measure Ongoing directions

Concurrent models - trace monoids

Trace monoid M

  • Alphabet : Σ = {a, b, c}
  • Independent relation :

I = {(a, c)} Heap of pieces

  • Pieces:

a b c

  • Example of heap :

a b a c b abacb = abcab

slide-17
SLIDE 17

Introduction Uniform measure Uniform measure for actions Uniqueness of uniform measure Ongoing directions

Concurrent models - trace monoids

Trace monoid M

  • Alphabet : Σ = {a, b, c}
  • Independent relation :

I = {(a, c)}

  • Canonical normal form :

abacb = a · b · ac · b Heap of pieces

  • Pieces:

a b c

  • Example of heap :

a b a c b abacb = abcab

slide-18
SLIDE 18

Introduction Uniform measure Uniform measure for actions Uniqueness of uniform measure Ongoing directions

Concurrent models - trace monoids

Trace monoid M

  • Alphabet : Σ = {a, b, c}
  • Independent relation :

I = {(a, c)}

  • Canonical normal form :

abacb = a · b · ac · b

a c b ac

Heap of pieces

  • Pieces:

a b c

  • Example of heap :

a b a c b abacb = abcab

slide-19
SLIDE 19

Introduction Uniform measure Uniform measure for actions Uniqueness of uniform measure Ongoing directions

Framework- random sampling from a Markov chain

  • Take account of "concurrency" and "states"

a c b ac

traces in a trace monoid

M0 M1 c c a b

words in an automaton

slide-20
SLIDE 20

Introduction Uniform measure Uniform measure for actions Uniqueness of uniform measure Ongoing directions

Framework- random sampling from a Markov chain

  • Take account of "concurrency" and "states"

a c b ac

traces in a trace monoid

M0 M1 c c a b

words in an automaton

M0, a M1, b M1, c M0, ac M0, c

traces in an automaton

slide-21
SLIDE 21

Introduction Uniform measure Uniform measure for actions Uniqueness of uniform measure Ongoing directions

Framework- random sampling from a Markov chain

  • Take account of "concurrency" and "states"
  • The executions of 1-safe Petri nets are understood up to

traces.

a c b ac

traces in a trace monoid

M0 M1 c c a b

words in an automaton

M0, a M1, b M1, c M0, ac M0, c

traces in an automaton

slide-22
SLIDE 22

Introduction Uniform measure Uniform measure for actions Uniqueness of uniform measure Ongoing directions

Uniform measure on trace monoids

Trace monoid : M = a, b, c | a · c = c · a

  • set of cliques C : ε, a, b, c, ac
  • Möbius polynomial µ(x) =

c∈C

(−1)|c|x|c| = 1 − 3x + x2

  • Möbius inversion formula : G(x) =

u∈M

x|u| =

1 µ(x)

slide-23
SLIDE 23

Introduction Uniform measure Uniform measure for actions Uniqueness of uniform measure Ongoing directions

Uniform measure on trace monoids

Trace monoid : M = a, b, c | a · c = c · a

  • set of cliques C : ε, a, b, c, ac
  • Möbius polynomial µ(x) =

c∈C

(−1)|c|x|c| = 1 − 3x + x2

  • Möbius inversion formula : G(x) =

u∈M

x|u| =

1 µ(x)

Theorem (Abbes, Mairesse 2015)

There exists a unique uniform measure ν on ∂M, satisfying: ∀u ∈ M, ν(↑ u) = p|u| p0 : the root of smallest modulus of µ(x).

slide-24
SLIDE 24

Introduction Uniform measure Uniform measure for actions Uniqueness of uniform measure Ongoing directions

Uniform measure on trace monoids

Theorem (Abbes, Mairesse 2015)

Let ν be the uniform measure on ∂M. Then the canonical normal decomposition of a trace is a realization of the Markov chain with initial probability measure h which is the Möbius transform of ν.

a c b ac

slide-25
SLIDE 25

Introduction Uniform measure Uniform measure for actions Uniqueness of uniform measure Ongoing directions

Uniform measure on trace monoids

Theorem (Abbes, Mairesse 2015)

Let ν be the uniform measure on ∂M. Then the canonical normal decomposition of a trace is a realization of the Markov chain with initial probability measure h which is the Möbius transform of ν.

  • # paths with length k in the

automaton = # traces with height k in a trace monoid

a c b ac

slide-26
SLIDE 26

Introduction Uniform measure Uniform measure for actions Uniqueness of uniform measure Ongoing directions

Uniform measure for actions on trace monoids

Theorem (Abbes 2015)

Let X × M → X be an irreducible partial action. Then there exists a uniform Markov measure, satisfying : ∀α ∈ X ∀x ∈ Mα, να(↑ x) = p|x|

0 Γ(α, α · x).

a b c

  • Gα(x) =
  • u∈Mα

x|u|

  • Γ(α, β) = lim

x→p0 Gβ(x) Gα(x)

  • µα,β(x) =
  • γ∈Cα,β

(−1)|γ|x|γ|

  • Möbius matrix:

µ(x) = (µα,β)(x)

slide-27
SLIDE 27

Introduction Uniform measure Uniform measure for actions Uniqueness of uniform measure Ongoing directions

Properties of Γ function

  • Define Γ(α, β) = lim

x→p0 Gβ(x) Gα(x)

slide-28
SLIDE 28

Introduction Uniform measure Uniform measure for actions Uniqueness of uniform measure Ongoing directions

Properties of Γ function

  • Define Γ(α, β) = lim

x→p0 Gβ(x) Gα(x)

  • cocycle relation: Γ(α, γ) = Γ(α, β)Γ(β, γ)

Γ(α, α) = 1

slide-29
SLIDE 29

Introduction Uniform measure Uniform measure for actions Uniqueness of uniform measure Ongoing directions

Properties of Γ function

  • Define Γ(α, β) = lim

x→p0 Gβ(x) Gα(x)

  • cocycle relation: Γ(α, γ) = Γ(α, β)Γ(β, γ)

Γ(α, α) = 1

  • Fix a state α0,

(Γ(α0, β))β ∈ ker µ(p0)

slide-30
SLIDE 30

Introduction Uniform measure Uniform measure for actions Uniqueness of uniform measure Ongoing directions

Calculation of Γ function

a b c

M0 → M0 : ε, c, M0 → M1 : a, ac, M1 → M0 : b, M1 → M1 : ε, c.

slide-31
SLIDE 31

Introduction Uniform measure Uniform measure for actions Uniqueness of uniform measure Ongoing directions

Calculation of Γ function

a b c

M0 → M0 : ε, c, M0 → M1 : a, ac, M1 → M0 : b, M1 → M1 : ε, c. µ(x) = M0 M1 1 − x −x + x2 −x 1 − x

  • .

p0 =

√ 5+1 2

slide-32
SLIDE 32

Introduction Uniform measure Uniform measure for actions Uniqueness of uniform measure Ongoing directions

Calculation of Γ function

a b c

M0 → M0 : ε, c, M0 → M1 : a, ac, M1 → M0 : b, M1 → M1 : ε, c. µ(x) = M0 M1 1 − x −x + x2 −x 1 − x

  • .

p0 =

√ 5+1 2

Let

  • Γ(M0, M0)

Γ(M0, M1) T =

  • 1

λ T ∈ ker µ(p0)

slide-33
SLIDE 33

Introduction Uniform measure Uniform measure for actions Uniqueness of uniform measure Ongoing directions

Calculation of Γ function

a b c

M0 → M0 : ε, c, M0 → M1 : a, ac, M1 → M0 : b, M1 → M1 : ε, c. µ(x) = M0 M1 1 − x −x + x2 −x 1 − x

  • .

p0 =

√ 5+1 2

Let

  • Γ(M0, M0)

Γ(M0, M1) T =

  • 1

λ T ∈ ker µ(p0) −p0 + (1 − p0) · λ = 0

slide-34
SLIDE 34

Introduction Uniform measure Uniform measure for actions Uniqueness of uniform measure Ongoing directions

Calculation of Γ function

a b c

M0 → M0 : ε, c, M0 → M1 : a, ac, M1 → M0 : b, M1 → M1 : ε, c. µ(x) = M0 M1 1 − x −x + x2 −x 1 − x

  • .

p0 =

√ 5+1 2

Let

  • Γ(M0, M0)

Γ(M0, M1) T =

  • 1

λ T ∈ ker µ(p0) −p0 + (1 − p0) · λ = 0 = ⇒ λ = p0 1 − p0 = 1 p0 = √ 5 − 1 2 .

slide-35
SLIDE 35

Introduction Uniform measure Uniform measure for actions Uniqueness of uniform measure Ongoing directions

Uniqueness of uniform measure on trace monoids

New proof from the linear algebra point of view

  • Construct the expanded automaton of cliques

M = a, b, c | a · c = c · a

a b c ac1 ac2

slide-36
SLIDE 36

Introduction Uniform measure Uniform measure for actions Uniqueness of uniform measure Ongoing directions

Uniqueness of uniform measure on trace monoids

New proof from the linear algebra point of view

  • Construct the expanded automaton of cliques

M = a, b, c | a · c = c · a

a b c ac1 ac2

(a, 1) (b, 1) (c, 1) (ac, 1) (ac, 2)       1 1 1 1 1 1 1 1 1 1 1 1 1      

slide-37
SLIDE 37

Introduction Uniform measure Uniform measure for actions Uniqueness of uniform measure Ongoing directions

Uniqueness of uniform measure on trace monoids

New proof from the linear algebra point of view

  • Construct the expanded automaton of cliques

M = a, b, c | a · c = c · a

a b c ac1 ac2

(a, 1) (b, 1) (c, 1) (ac, 1) (ac, 2)       1 1 1 1 1 1 1 1 1 1 1 1 1      

  • Find the Perron eigenvector of the incidence matrix of

this automaton

slide-38
SLIDE 38

Introduction Uniform measure Uniform measure for actions Uniqueness of uniform measure Ongoing directions

Uniqueness of uniform measure on trace monoids

  • Find the Perron eigenvector of the incidence matrix of

this automaton (a, 1) (b, 1) (c, 1) (ac, 1) (ac, 2)       1 1 1 1 1 1 1 1 1 1 1 1 1       v(c,i) = 1 pi−1h(c).

slide-39
SLIDE 39

Introduction Uniform measure Uniform measure for actions Uniqueness of uniform measure Ongoing directions

Uniqueness of uniform measure on trace monoids

  • Find the Perron eigenvector of the incidence matrix of

this automaton (a, 1) (b, 1) (c, 1) (ac, 1) (ac, 2)       1 1 1 1 1 1 1 1 1 1 1 1 1       v(c,i) = 1 pi−1h(c). v =       h(a) h(b) h(c) h(ac)

1 ph(ac)

     

slide-40
SLIDE 40

Introduction Uniform measure Uniform measure for actions Uniqueness of uniform measure Ongoing directions

Uniqueness of uniform measure on trace monoids

  • Find the Perron eigenvector of the incidence matrix of

this automaton (a, 1) (b, 1) (c, 1) (ac, 1) (ac, 2)       1 1 1 1 1 1 1 1 1 1 1 1 1       v(c,i) = 1 pi−1h(c). v =       h(a) h(b) h(c) h(ac)

1 ph(ac)

     

  • Since the incidence matrix is irreducible and aperiodic
  • Apply Perron-FrobeniusTheorem
slide-41
SLIDE 41

Introduction Uniform measure Uniform measure for actions Uniqueness of uniform measure Ongoing directions

Uniqueness of uniform measure on trace monoids

  • Find the Perron eigenvector of the incidence matrix of

this automaton (a, 1) (b, 1) (c, 1) (ac, 1) (ac, 2)       1 1 1 1 1 1 1 1 1 1 1 1 1       v(c,i) = 1 pi−1h(c). v =       h(a) h(b) h(c) h(ac)

1 ph(ac)

     

  • Since the incidence matrix is irreducible and aperiodic
  • Apply Perron-FrobeniusTheorem
  • Get the uniqueness of the uniform measure
slide-42
SLIDE 42

Introduction Uniform measure Uniform measure for actions Uniqueness of uniform measure Ongoing directions

Uniqueness of uniform measure on actions

Example for 1-safe petri net

a b c

M0, a M1, b M1, c M0, ac M0, c

νM0(C1 = c) = νM0(↑ c) − νM0(↑ (ac))

slide-43
SLIDE 43

Introduction Uniform measure Uniform measure for actions Uniqueness of uniform measure Ongoing directions

Uniqueness of uniform measure on actions

Example for 1-safe petri net

a b c

M0, a M1, b M1, c M0, ac M0, c

νM0(C1 = c) = νM0(↑ c) − νM0(↑ (ac)) = p0 · Γ(M0, M0) − p2

0 · Γ(M0, M1)

slide-44
SLIDE 44

Introduction Uniform measure Uniform measure for actions Uniqueness of uniform measure Ongoing directions

Uniqueness of uniform measure on actions

Example for 1-safe petri net

a b c

M0, a M1, b M1, c M0, ac M0, c

νM0(C1 = c) = νM0(↑ c) − νM0(↑ (ac)) = p0 · Γ(M0, M0) − p2

0 · Γ(M0, M1)

= p0 · 1 − p2

0 · 1

p0 = 0

slide-45
SLIDE 45

Introduction Uniform measure Uniform measure for actions Uniqueness of uniform measure Ongoing directions

Uniqueness of uniform measure on actions

Example for 1-safe petri net

a b c

M0, a M1, b M1, c M0, ac M0, c

  • The automaton is NOT strongly connected

→ can not apply Perron-Frobenius Theorem

slide-46
SLIDE 46

Introduction Uniform measure Uniform measure for actions Uniqueness of uniform measure Ongoing directions

Uniqueness of uniform measure on actions

Example for 1-safe petri net

a b c

M0, a M1, b M1, c M0, ac M0, c

  • The automaton is NOT strongly connected

→ can not apply Perron-Frobenius Theorem

  • Some state never go through under νM0
slide-47
SLIDE 47

Introduction Uniform measure Uniform measure for actions Uniqueness of uniform measure Ongoing directions

Ongoing directions

  • A systematic way to calculate Γ function
slide-48
SLIDE 48

Introduction Uniform measure Uniform measure for actions Uniqueness of uniform measure Ongoing directions

Ongoing directions

  • A systematic way to calculate Γ function
  • Complete the proof of the uniqueness of uniform measure
  • n actions in a trace monoid
slide-49
SLIDE 49

Introduction Uniform measure Uniform measure for actions Uniqueness of uniform measure Ongoing directions

Ongoing directions

  • A systematic way to calculate Γ function
  • Complete the proof of the uniqueness of uniform measure
  • n actions in a trace monoid
  • Random generation for actions on a trace monoid
slide-50
SLIDE 50

Introduction Uniform measure Uniform measure for actions Uniqueness of uniform measure Ongoing directions

Ongoing directions

  • A systematic way to calculate Γ function
  • Complete the proof of the uniqueness of uniform measure
  • n actions in a trace monoid
  • Random generation for actions on a trace monoid
  • For the purpose of model checking (application of this

theory)

slide-51
SLIDE 51

Introduction Uniform measure Uniform measure for actions Uniqueness of uniform measure Ongoing directions

Thank you!