logics for petri nets with propagating failures
play

Logics for Petri nets with propagating failures Leandro Gomes, - PowerPoint PPT Presentation

Logics for Petri nets with propagating failures Leandro Gomes, Alexandre Madeira and Mario Benevides 8 th IPM International Conference on Fundamentals of Software Engineering, 2 nd May 2019 Outline Background and motivations Petri nets with A


  1. Logics for Petri nets with propagating failures Leandro Gomes, Alexandre Madeira and Mario Benevides 8 th IPM International Conference on Fundamentals of Software Engineering, 2 nd May 2019

  2. Outline Background and motivations Petri nets with A -failures Dynamic logics for Petri nets with A -failures: GP ( A ) Conclusions

  3. Outline Background and motivations Petri nets with A -failures Dynamic logics for Petri nets with A -failures: GP ( A ) Conclusions

  4. Propositional dynamic logic (in a rush) Signatures Are pairs ( Prop , Π) where Prop and Π are disjoint sets of propositions , and atomic programs

  5. Propositional dynamic logic (in a rush) Signatures Are pairs ( Prop , Π) where Prop and Π are disjoint sets of propositions , and atomic programs Sentences ϕ ::= p | � π � ϕ | [ π ] ϕ | ¬ ϕ | ϕ ∨ ϕ | ϕ ∧ ϕ π ::= π 0 | π + π | π ; π | π ∗ | ? ϕ and p ∈ Prop

  6. Propositional dynamic logic (in a rush) Signatures Are pairs ( Prop , Π) where Prop and Π are disjoint sets of propositions , and atomic programs Sentences ϕ ::= p | � π � ϕ | [ π ] ϕ | ¬ ϕ | ϕ ∨ ϕ | ϕ ∧ ϕ π ::= π 0 | π + π | π ; π | π ∗ | ? ϕ and p ∈ Prop � � Models Models are Kripke structures, i.e. tuples W , V , R W is a set V : Prop → P ( W ) is a function R = ( R π ⊆ W × W ) π ∈ Π is an Π-family of binary relations

  7. Propositional dynamic logic (in a rush) Satisfaction M , w | = p iff w ∈ V ( p ) = ϕ ∧ ϕ ′ iff M , w | = ϕ ′ M , w | = ϕ and M , w | = ϕ ∨ ϕ ′ iff M , w | = ϕ ′ M , w | = ϕ or M , w | M , w | = ¬ ϕ iff it is false that M , w | = ϕ

  8. Propositional dynamic logic (in a rush) Satisfaction M , w | = p iff w ∈ V ( p ) = ϕ ∧ ϕ ′ iff M , w | = ϕ ′ M , w | = ϕ and M , w | = ϕ ∨ ϕ ′ iff M , w | = ϕ ′ M , w | = ϕ or M , w | M , w | = ¬ ϕ iff it is false that M , w | = ϕ = � π � ϕ iff there is a w ′ ∈ W such that ( w , w ′ ) ∈ R a M , w | and M , w ′ | = ϕ ; = [ π ] ϕ iff for any w ′ ∈ W such that ( w , w ′ ) ∈ R a we M , w | have M , w ′ | = ϕ ;

  9. Petri Nets - It is a tuple of the form ( P , T , w, m 0 ) where: - P represents a finite set of places ; - T represents a finite set of transitions ; - w : ( P × T ) ∪ ( T × P ) → N 0 attributes to each arc a non-negative integer, representing its multiplicity. - m 0 : P → N 0 defines an Initial Marking

  10. Example y ℓ t 1 t 2 t 3 x m c Figure: Example of a Petri net

  11. Proposition dynamic logic for Petri nets: Petri-PDL ⋆ (Bruno Lopes, 2014) and (Mario Benevides, 2016)

  12. Proposition dynamic logic for Petri nets: Petri-PDL ⋆ (Bruno Lopes, 2014) and (Mario Benevides, 2016) Basic programs Π 0 ( P ) : π ::= at 1 b | abt 2 c | at 3 bc where t i is of type T i , i = 1 , 2 , 3 and a , b , c ∈ P

  13. Proposition dynamic logic for Petri nets: Petri-PDL ⋆ (Bruno Lopes, 2014) and (Mario Benevides, 2016) Basic programs Π 0 ( P ) : π ::= at 1 b | abt 2 c | at 3 bc where t i is of type T i , i = 1 , 2 , 3 and a , b , c ∈ P Petri net Programs Π( P ) : η ::= π | π ⊙ η | η ⋆ for π ∈ Π 0 ( P )

  14. Proposition dynamic logic for Petri nets: Petri-PDL ⋆ (Bruno Lopes, 2014) and (Mario Benevides, 2016) Basic programs Π 0 ( P ) : π ::= at 1 b | abt 2 c | at 3 bc where t i is of type T i , i = 1 , 2 , 3 and a , b , c ∈ P Petri net Programs Π( P ) : η ::= π | π ⊙ η | η ⋆ for π ∈ Π 0 ( P ) Formulas Fm Petri − PDL ⋆ ( Prop ) : ρ ::= p | ⊤ | ¬ ρ | ρ ∧ ρ | � s , η � ρ where p ∈ Prop .

  15. Petri-PDL ⋆ dynamics – firing function f : S × Π 0 → S � s 2 | c ∈ s 2 , � if a , b ∈ s f ( s , abt 2 c ) = ǫ, if a / ∈ s or b / ∈ s y ℓ t 1 t 2 t 3 x m c

  16. Petri-PDL ⋆ dynamics – firing function f : S × Π 0 → S � s 2 | c ∈ s 2 , � if a , b ∈ s f ( s , abt 2 c ) = ǫ, if a / ∈ s or b / ∈ s y y ℓ ℓ t 1 t 1 − → t 2 t 3 t 2 t 3 x x m c m c Figure: Dynamics for transitions of type abt 2 c

  17. Models: � ( W , R π , M ) , V � - W is a non-empty set of states, M : W → S , R π is a binary relation over W . - V is a valuation function V : Prop → 2 W .

  18. Models: � ( W , R π , M ) , V � - W is a non-empty set of states, M : W → S , R π is a binary relation over W . - V is a valuation function V : Prop → 2 W . Satisfaction: V : Prop → 2 W - M , w | = p iff w ∈ V ( p ); - M , w | = ⊤ always; - M , w | = ¬ ρ iff M , w �| = ρ ; = ρ ∧ ρ ′ iff M , w | = ρ ′ ; - M , w | = ρ and M , w | = � s , η � ρ if there exists w ′ ∈ W , wR η w ′ , s � M ( w ) - M , w | and M , w ′ | = ρ .

  19. Example y ℓ t 1 t 2 t 3 x m c

  20. Example y y ℓ ℓ t 1 t 1 → − t 2 t 3 t 2 t 3 x x m c m c

  21. Example y y y ℓ ℓ ℓ t 1 t 1 t 1 − → → − t 2 t 3 t 2 t 3 t 2 t 3 x x x m c m c m c Figure: Execution of the program ℓ mt 2 x ; xt 3 yc in a chocolate vending machine M , ℓ m | = � ℓ mt 2 x ; xt 3 yc �⊤ = ⊤

  22. Failures in machines After putting a coin in a vending machine, the desired chocolate gets stuck behind of the glass

  23. Failures in machines After putting a coin in a vending machine, the desired chocolate gets stuck behind of the glass How to model these phenomena?

  24. Outline Background and motivations Petri nets with A -failures Dynamic logics for Petri nets with A -failures: GP ( A ) Conclusions

  25. Construction parameter Klenne Algebra Residuated Lattice Action Lattice Generic model for Generic truth computations space

  26. Construction parameter Klenne Algebra Residuated Lattice Action Lattice Generic model for Generic truth computations space Action lattice (Pratt 90, Kozen 91) A = ( A , + , ; , 0 , 1 , ∗ , → , · ) ( A , + , ; , 0 , 1 , ∗ ) is a Kleene algebra ; → is a residue wrt ; ( A , + , . ) is a lattice wrt relation a ≤ b ≡ a + b = b

  27. Examples: 2 - linear two-values lattice. 2 = ( {⊤ , ⊥} , ∨ , ∧ , ⊥ , ⊤ , ∗ , → , ∧ ) ∨ ⊥ ⊤ ∧ ⊥ ⊤ → ⊥ ⊤ ∗ ⊥ ⊥ ⊤ ⊥ ⊥ ⊥ ⊥ ⊤ ⊤ ⊥ ⊤ ⊤ ⊤ ⊤ ⊤ ⊥ ⊤ ⊤ ⊥ ⊤ ⊤ ⊤

  28. Examples: W k finite Wajsberg hoops For a fixed natural k > 0 and a generator a , W k = ( W k , + , ; , 0 , 1 , ∗ , → , · ) where - W k = { a 0 , a 1 , · · · , a k } , 1 = a 0 and 0 = a k , - For any m , n ≤ k : a m + a n = a min { m , n } , a m ; a n = a min { m + n , k } , ( a m ) ∗ = a 0 , a m → a n = a max { n − m , 0 } , a m · a n = a max { m , n }

  29. Examples: � L - the � Lukasiewicz arithmetic lattice � L = ([0 , 1] , max , ⊙ , 0 , 1 , ∗ , → , min) where x ⊙ y = max { 0 , y + x − 1 } , x → y = min { 1 , 1 − x + y } and ∗ maps each point of [0 , 1] to 1.

  30. Petri net with A -failures � � P = P , S , Π 0 , I , M 0 P is a set of places, S ⊆ P is the set of (admissible) markings , Π 0 ⊆ Π( P ) is the set of atomic programs , I : Π 0 → A is the atomic programs reliability degree and M 0 ∈ S is the initial marking .

  31. Dynamics of Petri nets with A -failures - firing function f I ( π ) : S × S → A π α, if a , b ∈ s and c ∈ s ′     abt 2 c ( s , s ′ ) = α → 0 , if a , b ∈ s and a , b ∈ s ′ f α 0 if a , b / ∈ s   y ℓ t 1 t 2 t 3 x m c

  32. Dynamics of Petri nets with A -failures - firing function f I ( π ) : S × S → A π α, if a , b ∈ s and c ∈ s ′     abt 2 c ( s , s ′ ) = α → 0 , if a , b ∈ s and a , b ∈ s ′ f α 0 if a , b / ∈ s   y y ℓ ℓ t 1 t 1 α − → t 2 t 3 t 2 t 3 x x m c m c Figure: Dynamics of transition of type abt 2 c

  33. Interpretation of Petri net programs The algebra of A-firing functions F = ( F , ∪ , ◦ , ∅ , χ, ∗ ) where: F is the universe of all the α -firing functions, for all α ∈ A

  34. Interpretation of Petri net programs The algebra of A-firing functions F = ( F , ∪ , ◦ , ∅ , χ, ∗ ) where: F is the universe of all the α -firing functions, for all α ∈ A Theorem F is a Kleene Algebra Proof. See (Gomes, 2017).

  35. Interpretation of Petri net programs The algebra of A-firing functions F = ( F , ∪ , ◦ , ∅ , χ, ∗ ) where: F is the universe of all the α -firing functions, for all α ∈ A Theorem F is a Kleene Algebra Proof. See (Gomes, 2017). A-interpretations of programs - for any atomic program π ∈ Π 0 , � π � ( s , s ′ ) = f F ( π ) ( s , s ′ ) π - � π 1 ; π 2 � ( s , s ′ ) = ( � π 1 � ◦ � π 2 � )( s , s ′ ) - � η ∗ � ( s , s ′ ) = � η � ∗ ( s , s ′ ), for � η � ∗ ( s , s ′ ) = � i ≥ 0 � η � i ( s , s ′ ) where � η � 0 ( s , s ′ ) = χ ( s , s ′ ) and � η � i ◦ � η � for any i ≥ 0, � η � i +1 ( s , s ′ ) = ( s , s ′ ) � �

  36. Outline Background and motivations Petri nets with A -failures Dynamic logics for Petri nets with A -failures: GP ( A ) Conclusions

  37. PDL for Petri Nets with A -failures – GP ( A ) The method is based on the one introduced in [Madeira, 2016].

Recommend


More recommend