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 Ongoing directions Motivation • Complexity and scale in software systems are increasing. • The crucial factor is related to concurrency.
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"
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
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
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
Introduction Uniform measure Uniform measure for actions Uniqueness of uniform measure Ongoing directions Concurrent models - 1-safe Petri nets M 0 c a a b M 1 c c b Reachability graph M 0
Introduction Uniform measure Uniform measure for actions Uniqueness of uniform measure Ongoing directions Concurrent models - 1-safe Petri nets M 0 c a a b M 1 c c b Reachability graph M 1
Introduction Uniform measure Uniform measure for actions Uniqueness of uniform measure Ongoing directions Concurrent models - 1-safe Petri nets M 0 c a a b M 1 c c b Reachability graph M 0 • Concurrency : • Casuality : • Conflit :
Introduction Uniform measure Uniform measure for actions Uniqueness of uniform measure Ongoing directions Concurrent models - 1-safe Petri nets M 0 c a a b M 1 c c b Reachability graph M 0 • Concurrency : a, c • Casuality : • Conflit :
Introduction Uniform measure Uniform measure for actions Uniqueness of uniform measure Ongoing directions Concurrent models - 1-safe Petri nets M 0 c a a b M 1 c c b Reachability graph M 0 • Concurrency : a, c • Casuality : a, b • Conflit :
Introduction Uniform measure Uniform measure for actions Uniqueness of uniform measure Ongoing directions Concurrent models - 1-safe Petri nets M 0 c a a b M 1 c c b Reachability graph M 0 • Concurrency : a, c • Casuality : a, b • Conflit : b, c
Introduction Uniform measure Uniform measure for actions Uniqueness of uniform measure Ongoing directions Concurrent models - 1-safe Petri nets M 0 c a a b M 1 c c b Reachability graph M 0 • From M 0 , abacb is a valid firing sequence.
Introduction Uniform measure Uniform measure for actions Uniqueness of uniform measure Ongoing directions Concurrent models - 1-safe Petri nets M 0 c a a b M 1 c c b Reachability graph M 0 • From M 0 , abacb is a valid firing sequence. • We lost the feature of concurrency by viewing the firing sequences as the sequential executions. ex : abacb = abcab
Introduction Uniform measure Uniform measure for actions Uniqueness of uniform measure Ongoing directions Concurrent models - trace monoids Trace monoid M Heap of pieces • Alphabet : Σ = { a , b , c } • Pieces: • Independent relation : a c b I = { ( a , c ) }
Introduction Uniform measure Uniform measure for actions Uniqueness of uniform measure Ongoing directions Concurrent models - trace monoids Trace monoid M Heap of pieces • Alphabet : Σ = { a , b , c } • Pieces: • Independent relation : a c b I = { ( a , c ) } • Example of heap : b a c b a abacb = abcab
Introduction Uniform measure Uniform measure for actions Uniqueness of uniform measure Ongoing directions Concurrent models - trace monoids Trace monoid M Heap of pieces • Alphabet : Σ = { a , b , c } • Pieces: • Independent relation : a c b I = { ( a , c ) } • Example of heap : • Canonical normal form : abacb = a · b · ac · b b a c b a abacb = abcab
Introduction Uniform measure Uniform measure for actions Uniqueness of uniform measure Ongoing directions Concurrent models - trace monoids Trace monoid M Heap of pieces • Alphabet : Σ = { a , b , c } • Pieces: • Independent relation : a c b I = { ( a , c ) } • Example of heap : • Canonical normal form : abacb = a · b · ac · b b a c a c b a abacb = abcab ac b
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" M 0 c a c a b ac b c M 1 words in an traces in a trace automaton monoid
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" M 0 c a c M 0 , a a b M 0 , c M 1 , b M 1 , c ac b c M 1 M 0 , ac words in an traces in a trace traces in an automaton automaton monoid
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. M 0 c a c M 0 , a a b M 0 , c M 1 , b M 1 , c ac b c M 1 M 0 , ac words in an traces in a trace traces in an automaton automaton monoid
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 ( − 1 ) | c | x | c | = 1 − 3 x + x 2 • Möbius polynomial µ ( x ) = � c ∈ C x | u | = • Möbius inversion formula : G ( x ) = � 1 µ ( x ) u ∈M
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 ( − 1 ) | c | x | c | = 1 − 3 x + x 2 • Möbius polynomial µ ( x ) = � c ∈ C x | u | = • Möbius inversion formula : G ( x ) = � 1 µ ( x ) u ∈M Theorem (Abbes, Mairesse 2015) There exists a unique uniform measure ν on ∂ M , satisfying: ν ( ↑ u ) = p | u | ∀ u ∈ M , 0 p 0 : the root of smallest modulus of µ ( x ) .
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 ac b
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 • # paths with length k in the automaton = # traces with height k in a trace monoid ac b
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 ) = p | x | ∀ α ∈ X ∀ x ∈ M α , 0 Γ( α, α · x ) . x | u | • G α ( x ) = � u ∈M α G β ( x ) • Γ( α, β ) = lim G α ( x ) x → p 0 a • µ α,β ( x ) = � ( − 1 ) | γ | x | γ | γ ∈ C α,β • Möbius matrix: c b µ ( x ) = ( µ α,β )( x )
Introduction Uniform measure Uniform measure for actions Uniqueness of uniform measure Ongoing directions Properties of Γ function G β ( x ) • Define Γ( α, β ) = lim G α ( x ) x → p 0
Introduction Uniform measure Uniform measure for actions Uniqueness of uniform measure Ongoing directions Properties of Γ function G β ( x ) • Define Γ( α, β ) = lim G α ( x ) x → p 0 • cocycle relation: Γ( α, γ ) = Γ( α, β )Γ( β, γ ) Γ( α, α ) = 1
Recommend
More recommend