theoretical foundations of the uml
play

Theoretical Foundations of the UML Lecture 7: Communicating - PowerPoint PPT Presentation

Theoretical Foundations of the UML Lecture 7: Communicating Finite-State Machines Joost-Pieter Katoen Lehrstuhl fr Informatik 2 Software Modeling and Verification Group moves.rwth-aachen.de/teaching/ss-20/fuml/ May 11, 2020 Joost-Pieter


  1. Theoretical Foundations of the UML Lecture 7: Communicating Finite-State Machines Joost-Pieter Katoen Lehrstuhl für Informatik 2 Software Modeling and Verification Group moves.rwth-aachen.de/teaching/ss-20/fuml/ May 11, 2020 Joost-Pieter Katoen Theoretical Foundations of the UML 1/21

  2. Outline 1 Introduction 2 Communicating Finite-State Machines 3 Semantics of Communicating Finite-State Machines 4 Emptiness Problem for CFMs Joost-Pieter Katoen Theoretical Foundations of the UML 2/21

  3. Overview 1 Introduction 2 Communicating Finite-State Machines 3 Semantics of Communicating Finite-State Machines 4 Emptiness Problem for CFMs Joost-Pieter Katoen Theoretical Foundations of the UML 3/21

  4. Specification to implementation (c) Specification of complete system consider MSGS . s as • a . of L ( g) set possible of scenarios set Mscs MSG g ← = . , - - infinite finite countably ( for the CMSG e.g . kakis Hanna ) example " obtain " question system realisation Central a can we i - - - L (g) possible that all in exhibits scenarios like ? " " look how do realisation such system First question , : of by behavior the each model a process - ) " automaton blood automaton finite C communicate unbounded Fifo via can processes - channels Joost-Pieter Katoen Theoretical Foundations of the UML 4/21

  5. Specification to implementation Consider an MSGs as complete system specifications they describe a full set of possible system scenarios L ( G ) set of all possible scenarios = Joost-Pieter Katoen Theoretical Foundations of the UML 4/21

  6. Specification to implementation Consider an MSGs as complete system specifications they describe a full set of possible system scenarios Can we obtain “realisations“ that exhibit precisely these scenarios? - lectures central question the next 3-4 in Joost-Pieter Katoen Theoretical Foundations of the UML 4/21

  7. Specification to implementation Consider an MSGs as complete system specifications they describe a full set of possible system scenarios Can we obtain “realisations“ that exhibit precisely these scenarios? " k Map MSGs, i.e., scenarios onto an executable model p→q model each process by a finite-state automaton that communicate via unbounded directed FIFO channels - - - finite-state communicating (c) 1-7 MSG ) ( machine CFM a ,b a → p→ Joost-Pieter Katoen Theoretical Foundations of the UML 4/21

  8. Specification to implementation Consider an MSGs as complete system specifications they describe a full set of possible system scenarios Can we obtain “realisations“ that exhibit precisely these scenarios? Map MSGs, i.e., scenarios onto an executable model model each process by a finite-state automaton that communicate via unbounded directed FIFO channels & Brand ⇒ This yields Communicating Finite-state Machines Zafiropou lov Joost-Pieter Katoen Theoretical Foundations of the UML 4/21

  9. Intuition " " realisation I process process p Example a - a ) ! Cpi e. AOD ?Cqp,a ) → → " " of automaton " " local automaton p local of I A ) ( n stele initial global = , A ) } I CMSC { ( States final a global = a -→ 9- p - CFM if ← behavior accepts possible - of the CFM channels : all → a ① empty are -31 p a O e a . in ② we are g- → p A ) G. state not used M o - - Joost-Pieter Katoen Theoretical Foundations of the UML 5/21

  10. Eixample process I process p ③ ② I → tb ?a . A ) ( global state initial n = , ( 2,13 ) } { Arial states global = -07 p I p - ae LE . . - . b a . L 8. • - a c " accepted " by > is the example CFM MSC Yannakakis ( ) example

  11. The need for synchronisation messages want to realise Suppose we :-p I # µ I p find states c ) ) { ( 2. B) ( 3. I I D apgcessqcE7ieh@oToatoE.o A Process p Cfm : Otto y o A C 7 B 3 2 Joost-Pieter Katoen Theoretical Foundations of the UML 6/21

  12. ⇐ 9- I p p n left ← → b b " " left to informs whether Process go q process p " right " or , ( 0,0 ) ) { ( 0,0 ) Fe for Automaton process p : owe ⇐ do ⇐ For I process L the like deadlock in A cannot example previous Occur

  13. Overview 1 Introduction 2 Communicating Finite-State Machines 3 Semantics of Communicating Finite-State Machines 4 Emptiness Problem for CFMs Joost-Pieter Katoen Theoretical Foundations of the UML 7/21

  14. Preliminaries Definition Let be a finite set of at least two (sequential) processes P be a finite set of message contents C ( a. b. a Joost-Pieter Katoen Theoretical Foundations of the UML 8/21

  15. Preliminaries Definition Let be a finite set of at least two (sequential) processes P be a finite set of message contents C Definition (communication actions, channels) Act ! p := { !( p, q, a ) | q ∈ P \ { p } , a ∈ C} the set of send actions by process p Joost-Pieter Katoen Theoretical Foundations of the UML 8/21

  16. Preliminaries Definition Let be a finite set of at least two (sequential) processes P be a finite set of message contents C Definition (communication actions, channels) Act ! p := { !( p, q, a ) | q ∈ P \ { p } , a ∈ C} the set of send actions by process p Act ? p := { ?( p, q, a ) | q ∈ P \ { p } , a ∈ C} the set of receive actions by process p Joost-Pieter Katoen Theoretical Foundations of the UML 8/21

  17. Preliminaries Definition Let be a finite set of at least two (sequential) processes P be a finite set of message contents C Definition (communication actions, channels) Act ! p := { !( p, q, a ) | q ∈ P \ { p } , a ∈ C} the set of send actions by process p Act ? p := { ?( p, q, a ) | q ∈ P \ { p } , a ∈ C} the set of receive actions by process p Act p := Act ! p ∪ Act ? p Joost-Pieter Katoen Theoretical Foundations of the UML 8/21

  18. Preliminaries Definition Let be a finite set of at least two (sequential) processes P be a finite set of message contents C Definition (communication actions, channels) Act ! p := { !( p, q, a ) | q ∈ P \ { p } , a ∈ C} the set of send actions by process p Act ? p := { ?( p, q, a ) | q ∈ P \ { p } , a ∈ C} the set of receive actions by process p Act p := Act ! p ∪ Act ? p Act := � p ∈ P Act p Joost-Pieter Katoen Theoretical Foundations of the UML 8/21

  19. Preliminaries Definition Let be a finite set of at least two (sequential) processes P be a finite set of message contents C Definition (communication actions, channels) Act ! p := { !( p, q, a ) | q ∈ P \ { p } , a ∈ C} the set of send actions by process p Act ? p := { ?( p, q, a ) | q ∈ P \ { p } , a ∈ C} the set of receive actions by process p Act p := Act ! p ∪ Act ? I ) ( P . p ordered Act := � p ∈ P Act p - , p ) ( a Ch := { ( p, q ) | p, q ∈ P , p � = q } “channels“ Joost-Pieter Katoen Theoretical Foundations of the UML 8/21

  20. Communicating finite-state machines Definition A communicating finite-state machine (CFM) over P and C is a Sef of structure Anil global → steles A = ((( S p , ∆ p )) p ∈ P , D , s init , F ) " ( - ↳ where " " local initial global automaton state £719 synchronisation messages right ) ( e.g left , . Joost-Pieter Katoen Theoretical Foundations of the UML 9/21

  21. Communicating finite-state machines Definition A communicating finite-state machine (CFM) over P and C is a structure A = ((( S p , ∆ p )) p ∈ P , D , s init , F ) e- g . where left , right - D is a nonempty finite set of synchronization messages (or data) → p s ′ instead of ( s, σ , m, s ′ ) ∈ ∆ p σ ,m We often write s − Joost-Pieter Katoen Theoretical Foundations of the UML 9/21

  22. Communicating finite-state machines Definition A communicating finite-state machine (CFM) over P and C is a structure A = ((( S p , ∆ p )) p ∈ P , D , s init , F ) where D is a nonempty finite set of synchronization messages (or data) for each p ∈ P : S p is a non-empty finite set of local states (the S p are disjoint) ∆ p ⊆ S p × Act p × D × S p is a set of local transitions - ' ) a ) ( ' d Dp . Cp s e Og s . e. , , , E Aatp - → p s ′ instead of ( s, σ , m, s ′ ) ∈ ∆ p σ ,m We often write s − - Joost-Pieter Katoen Theoretical Foundations of the UML 9/21

  23. Communicating finite-state machines Definition A communicating finite-state machine (CFM) over P and C is a structure A = ((( S p , ∆ p )) p ∈ P , D , s init , F ) where D is a nonempty finite set of synchronization messages (or data) for each p ∈ P : S p is a non-empty finite set of local states (the S p are disjoint) ∆ p ⊆ S p × Act p × D × S p is a set of local transitions s init ∈ S A is the global initial state P , I r , where S A := � p ∈ P S p is the set of global states of A ( p r ) I , , → p s ′ instead of ( s, σ , m, s ′ ) ∈ ∆ p σ ,m We often write s − Joost-Pieter Katoen Theoretical Foundations of the UML 9/21

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend