theoretical foundations of the uml
play

Theoretical Foundations of the UML 2) HMM ( Lecture 15+16: A - PowerPoint PPT Presentation

Theoretical Foundations of the UML 2) HMM ( Lecture 15+16: A Logic for MSCs Part Joost-Pieter Katoen Lehrstuhl fr Informatik 2 Software Modeling and Verification Group moves.rwth-aachen.de/teaching/ss-20/fuml/ June 15, 2020 Head


  1. Theoretical Foundations of the UML 2) HMM ( Lecture 15+16: A Logic for MSCs Part Joost-Pieter Katoen Lehrstuhl für Informatik 2 Software Modeling and Verification Group moves.rwth-aachen.de/teaching/ss-20/fuml/ June 15, 2020 Head Joost-Pieter Katoen Theoretical Foundations of the UML 1/41

  2. Outline Introduction Propositional 1 ) c Local Formulas and Path Expressions 2 Syntax Formal Semantics PDL Formulas 3 OI Verification problems for PDL formula 4 M PDL MSC - Model checking MSCs - ? MEE Model checking CFMs Model checking MSGs \ OI formula g PDL MSG Satisfiability - ? COI ? Leg ) MKE tf Frisch MKOI ME . . Joost-Pieter Katoen Theoretical Foundations of the UML 2/41

  3. Overview Introduction 1 Local Formulas and Path Expressions 2 Syntax Formal Semantics PDL Formulas 3 Verification problems for PDL 4 Model checking MSCs Model checking CFMs Model checking MSGs Satisfiability Joost-Pieter Katoen Theoretical Foundations of the UML 20/41

  4. Local formulas Definition (Syntax of local formulas) For communication action σ ∈ Act and path expression α , the grammar of local formulas is given by: ! 4,2 ? C 2 , a) forward , # ϕ ::= true | σ | ¬ ϕ | ϕ ∨ ϕ | � α � ϕ | � α � − 1 ϕ ✓ backward The syntax of path expressions α will be defined later on. Definition (Derived operators) regular false := ¬ true 2 is a G) e expressions ϕ 1 ∧ ϕ 2 := ¬ ( ¬ ϕ 1 ∨ ¬ ϕ 2 ) describes the ϕ 1 → ϕ 2 := ¬ ϕ 1 ∨ ϕ 2 admitted possible to navigate [ α ] ϕ := ¬ � α � ¬ ϕ ways ¬ � α � − 1 ¬ ϕ through MSC [ α ] − 1 ϕ a := Joost-Pieter Katoen Theoretical Foundations of the UML 10/41

  5. Path expressions A Definition (Syntax of local formulas) For communication action σ ∈ Act and path expression α , the grammar of local formulas is given by: ϕ ::= true | σ | ¬ ϕ | ϕ ∨ ϕ | � α � ϕ | � α � − 1 ϕ Definition (Syntax of path expressions) For local formula ϕ , the grammar of path expressions is given by: α ::= { ϕ } | proc | msg | α ; α | α + α | α ∗ 4 I T horizontally local I 2 right vertically left s msg ) formula ( ileft downwards proc ) ' cmsgj right backwards C ^ - pros > Joost-Pieter Katoen Theoretical Foundations of the UML 12/41

  6. PDL formulas if satisfying event contain does the MSC an " $ " & " ° " " " " " ( ! & " eh " Definition (Syntax of PDL formulas) For local formula ϕ , the grammar of PDL formulas is given by: v Φ ::= ∃ ϕ | ∀ ϕ | Φ ∧ Φ | Φ ∨ Φ Negation Negation is absent. As existential and universal quantification, as well as - conjunction and disjunction are present, PDF-formulas are closed under negation. Joost-Pieter Katoen Theoretical Foundations of the UML 21/41

  7. Intuitive meaning of PDL formulas O MSC M satisfies ∃ ϕ if M has some event e satisfying ϕ O MSC M satisfies ∃� α � ϕ if from some event e in M , there exists an α -labelled path from e to an event e ′ , say, satisfying ϕ O MSC M satisfies ∃ [ α ] ϕ if from some event e in M , every event that can be reached via an α -labelled path satisfies ϕ ( ask > t = - Joost-Pieter Katoen Theoretical Foundations of the UML 22/41

  8. Semantics of PDL formulas Definition (Semantics of PDL formulas) Let M = ( P , E, C , l, m, < ) ∈ M be an MSC. ( M, Φ ) ∈ | = i ff PDL formula Φ holds in MSC M . M | = ∃ ϕ i ff ∃ e ∈ E. M, e | = ϕ • M | = ∀ ϕ i ff ∀ e ∈ E. M, e | = ϕ • - M | = Φ 1 ∧ Φ 2 i ff M | = Φ 1 and M | = Φ 2 • - - M | = Φ 1 ∨ Φ 2 i ff M | = Φ 1 or M | = Φ 2 • - - Joost-Pieter Katoen Theoretical Foundations of the UML 23/41

  9. Example (1) f • o o ? an e ; , a) t The (unique) maximal event of M is labeled by ?(2 , 1 , a ) Yes. No. - - Joost-Pieter Katoen Theoretical Foundations of the UML 24/41

  10. Example (1) y = § a . . The (unique) maximal event of M is labeled by ?(2 , 1 , a ) Yes. No. - - - ∀ ( � ( proc + msg ) ∗ � ([ proc ] false ∧ ?(2 , 1 , a ))) Yes. No. - Joost-Pieter Katoen Theoretical Foundations of the UML 24/41

  11. p proc = ms 8 ma ) ) m - ptm )* > ( Ep ] C ( tf ? ( 2. false F M n - = T te ) of ( formulas semantics PPL iff * ya ) ) ) . ( 's ) ( Ep ] ? ( 2. V-e f fcptm false EE ) e n T - - setof events in M t ) formulas of local semantics Ck iff " ( Xp ( tm ) > ? Can V-e.EE IN Fn et falser Ep ] E . . . event for there intuitive the MSG exists in every : , event ' that an e such and ' Ep ] ? ( 2in a ) false f- e r , - ' ,a§ " ) has Successors C no " ' ( F and Ep e 7 e e ( * ) it . its at and process ' ) ele a ) ?( wits ? Can labeled a , is =

  12. Heft OI holds : ↳ Lcptm )t > ( Ep ] ? fan ,aD f falser I 's take eo e in Mcneff Ck ) V-ec-E.es?eoe-g K and eo , n=z ) ( sp > Sp > f eo e , for all events other and similar M FOI . Thus left , . za ) ? G. eo 't false M CPT i n right event the only in and is Mright formula satisfying this Teo V-ec-En.ge ' e . ' ' St hold this not does as eg eo . M # OI Thus right .

  13. Example (2) • co The maximal event on process 2 is labeled by ?(2 , 1 , a ) Yes. Yes. Joost-Pieter Katoen Theoretical Foundations of the UML 25/41

  14. ma ) ) ( ? ( Ep ] K F false M ? n a ) ) ( 2C ? Ep ) false f iff FEEE n e a. . ( a ) ) ? ( iff FEEE Ep ] f false and et G. e I false ) ( F Tff FEEE ' e' ' EE espe t r e . ? Cana ) ) ) and ele = ' ) ( FEEE ( Nele ?kmaD iff FLEE ecope and 7 . ? ( ? ma ) tteok M I since # left has and successors eo no its at process KOI similar Msight using in a way 0 e Eo -

  15. Example (2) The maximal event on process 2 is labeled by ?(2 , 1 , a ) Yes. Yes. ∃ ([ proc ] false ∧ ?(2 , 1 , a )) Yes. Yes. Joost-Pieter Katoen Theoretical Foundations of the UML 25/41

  16. Example (3) • O O ⑨ No two consecutive events are labeled with ?(2 , 3 , c ) No. Yes. - t : : : ∀ ([ { ?(2 , 3 , c ) } ; proc ; { ?(2 , 3 , c ) } ] false ) No. Yes. - - - + Joost-Pieter Katoen Theoretical Foundations of the UML 26/41

  17. ? Case ) ) ) [ { ? ( c ) } f tf false M f ; ; as p , . ] Tff He f- [ false EE e . - . . I ) Ex ] Ct 752377 iff that y use = ( ) false f He EE e 7 n . - . . . - time true ) ( . > IEEE ( iff not f e . . . . line ) 7133,0 } > ( s { c ) } > He ( L ? C 2,3 not Iff et sp ) EE , . the ) ( 7133 , c) If e) feet iff not > s Fsp . ) n e = . . V-ec-E.net/lCe)=?C43,c ) iff and - ? Case ) ) 1- e.) F l( e' ' EE ec.pe and = . # et M take = ez OI and e left e = , formula the and violate above ez q ' ' FOI Mnnght two e and e e cases ez = = , ' ) I ' ape 76,3 llg ' but e , , , ' Ep ' ) I but ? Cas =/ lleo ' ez eo ,

  18. Example (4) • o co • The number of send events at process 3 is odd. No. No. - Joost-Pieter Katoen Theoretical Foundations of the UML 27/41

  19. ) ( auxiliary formulas Abbreviations at send acton ! G. j V a ) I . = " ' d to , process r aec - local j process g formula u message contents at send action V I ° top process 1 PEP ? G. j V a ) some receive ?mj = , from j AEC message at process 1 ! a£Y÷ , ;) ( tsjv ¥p,* ? % = . - - Tff at Py 1 f process e e occurs

  20. 2 Path that certain asserting expression a j at process some - event of times happens number even an ( ↳ 4,6 O 2 , , , - - - ) 4 formula ( local * ) ( 243 43 a - - - event event event no no no satisfying satisfying 4 4 satisfying Y occurs proc )* proc )* ( Ent ) ; ; ( Int ) ; ; proc

  21. Example (4) The number of send events at process 3 is odd. No. No. formula for similar for PDL property See next slide a a - . Joost-Pieter Katoen Theoretical Foundations of the UML 27/41

  22. Example MSC M has an even number of messages sent from process 1 to 2: . � [ proc ] − 1 false ∧ P 1 � I as ∀ → � α � [ proc ] false - � �� � � �� - � minimal event on process 1 maximal event on process - - where P 1 = � j ∈ P ,j � =1 (! 1 ,j ∨ ? 1 ,j ) with ! 1 ,j = � a ∈ C !(1 , j, a ) and ? 1 ,j is defined in a similar way, i.e., e | = P 1 i ff e occurs at process 1 . Path expression α is defined by: I α = (( {¬ ! 1 } ; proc ) ∗ ; { ! 1 } ; proc ; ( {¬ ! 1 } ; proc ) ∗ ; { ! 1 } ; proc ; ( {¬ ! 1 } ; proc ) ∗ ) ∗ C- - - - - and where ! 1 abbreviates � ← a ∈ C !(1 , 2 , a ) ! event occurs - no ← = , Joost-Pieter Katoen Theoretical Foundations of the UML 28/41

  23. Let it j sing ;pw Cfp > Pj ) ) ( tf ; msg → ; spree " " i that j reach can expresses process process ( using intermediate two by exactly messages processes ) Pi ⇐ Pj • Ii . -4.1-1 t → I Epi .

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