calculating confluence compositionally
play

Calculating - Confluence Compositionally Gordon J. Pace - PowerPoint PPT Presentation

Calculating - Confluence Compositionally Gordon J. Pace University of Malta, Malta Frdric Lang, Radu Mateescu INRIA Rhne-Alpes, France 1 CAV - Boulder, Colorado - July 12th, 2003 Context Explicit state model-checking, state


  1. Calculating τ - Confluence Compositionally Gordon J. Pace University of Malta, Malta Frédéric Lang, Radu Mateescu INRIA Rhône-Alpes, France 1 CAV - Boulder, Colorado - July 12th, 2003

  2. Context • Explicit state model-checking, state explosion… • Compositional & on the fly verification – Intermediate model representation as network of LTSs ( composition expression ) – Local generation of LTS guided by verification needs • Usually interested in properties up to branching bisimulation – Not all interleavings involving silent ( τ ) transitions are relevant 2 CAV - Boulder, Colorado - July 12th, 2003

  3. This talk • Reduction techniques to eliminate irrelevant interleavings involving τ transitions – Based on strong τ - confluence (Groote & Selink 1996) and τ - prioritisation (Groote & van de Pol 2000) – On the fly – Using analysis of the composition expression architecture to eliminate τ transitions efficiently – Implemented in the CADP toolbox • Techniques related to "partial order" reduction … but preserving branching bisimulation 3 CAV - Boulder, Colorado - July 12th, 2003

  4. Strong τ - Confluence Intuition A set of τ transitions T is τ -confluent if the system has the same behaviour after firing any transition in T as it had before 4 CAV - Boulder, Colorado - July 12th, 2003

  5. Strong τ - Confluence Definition Blue arcs: for all a Red arcs: there exists τ ∈ T or a τ ∈ T a τ τ ∈ T or τ ∈ T a τ ∈ T 5 CAV - Boulder, Colorado - July 12th, 2003

  6. τ - Prioritisation Intuition By removing any transition in choice with a τ - confluent transition the LTS remains unchanged modulo branching bisimulation 6 CAV - Boulder, Colorado - July 12th, 2003

  7. τ - Prioritisation Example a b a τ τ b 7 CAV - Boulder, Colorado - July 12th, 2003

  8. τ - Prioritisation Example a b a τ τ b 8 CAV - Boulder, Colorado - July 12th, 2003

  9. τ - Prioritisation Example a τ b 9 CAV - Boulder, Colorado - July 12th, 2003

  10. τ -Prioritisation and τ -Circuits Exception: Circuit of τ -confluent transitions τ * τ * ≠ a Circuits of τ -confluent transitions shall be eliminated on the fly τ * = a a 10 CAV - Boulder, Colorado - July 12th, 2003

  11. Finding τ - Confluence • Groote & van de Pol, MFCS 2000 Global algorithm with complexity O(m x fanout τ 3 ) where – m is the total number of transitions in the LTS – fanout τ is the maximal number of τ transitions in choice • Blom & van de Pol, CAV 2002 Automated theorem prover used to deduce confluence from a symbolic intermediate level description 11 CAV - Boulder, Colorado - July 12th, 2003

  12. Our Contribution • Finding τ -confluence on the fly using Boolean Equation Systems • Deducing τ -confluence in a system from that found in its (parallel) components 12 CAV - Boulder, Colorado - July 12th, 2003

  13. Boolean Equation Systems Boolean Equation Systems (BESs) are made of • A set of variables V • For each variable v, an equation of the form v = v 1 ∨ … ∨ v n or v = v 1 ∧ … ∧ v n The least and greatest solution of a BES can be efficiently found with an on the fly algorithm ( CAESAR_SOLVE library in CADP) 13 CAV - Boulder, Colorado - July 12th, 2003

  14. τ - Confluence Using BESs q c q,r = d q,r,s,a ∧ … ∧ d q,r,z,g τ g a b … r s t z The three states q , r The silent and s can be closed transition between in a τ -confluence diamond q and r is confluent 14 CAV - Boulder, Colorado - July 12th, 2003

  15. Finding τ - Confluence Using BESs q d q,r,s,a = c s,t1 ∨ … ∨ c s,tn a τ s r a τ τ a … t 1 t n 15 CAV - Boulder, Colorado - July 12th, 2003

  16. Finding τ -Confluence Using BESs • Resolution procedure permits to find all τ - confluent transitions • With complexity O(m τ x fanout τ x fanout) where – m τ is the number of τ transitions in the LTS – fanout τ is the maximal number of τ transitions simultaneously fireable – fanout is the maximal number of transitions simultaneously fireable 16 CAV - Boulder, Colorado - July 12th, 2003

  17. Composition Expressions Composition expressions are networks of LTSs built upon LOTOS parallel composition and hiding hide R_T1, R_T2, R1, R2 in CRASH_TRANSMITTER |[R_T1, R_T2]| ( (RECEIVER_THREAD1 || FAIL_RECEIVER1) |[R1, R2]| (RECEIVER_THREAD2 || FAIL_RECEIVER2) ) 17 CAV - Boulder, Colorado - July 12th, 2003

  18. Finding τ -Confluence in Composition Expressions Theorem 1: τ -confluent transitions in an LTS appearing in a composition expression generate only τ -confluent transitions By calculating τ -confluent transitions of (small) components, some τ -confluence in the resulting compound LTS can be identified 18 CAV - Boulder, Colorado - July 12th, 2003

  19. τ -Confluence & Composition Particular case of Theorem 1 τ τ |[G]| G'\G G' … … τ τ G'\G … N o o t h e r t r a n s i t i o n i n c h o i c e 19 CAV - Boulder, Colorado - July 12th, 2003

  20. τ -Confluence & Composition Particular case of Theorem 1 τ τ |[G]| G' … G'\G … F o r i n s t a n c e S t a y o b t a i n e d b y p r i o r i t i s e d τ - p r i o r i t i s a t i o n 20 CAV - Boulder, Colorado - July 12th, 2003

  21. τ -Confluence & Composition There are also locally visible transitions that may lead to τ -confluent transitions A can be prioritised if (1) A is hidden in the context of the expression (2) A is not synchronised in the context (3) there is no other transition locally in choice with A 21 CAV - Boulder, Colorado - July 12th, 2003

  22. Finding τ - Confluence in Composition Expressions Theorem 2: A conservative set of transitions P can be identified such that only the transitions generated by P have a chance to be confluent By calculating P, we can assume that any transitions not generated by P are not τ -confluent in the resulting compound LTS 22 CAV - Boulder, Colorado - July 12th, 2003

  23. Finding τ - Confluence in Composition Expressions • Theorems 1 & 2 can be used to partially deduce τ -confluence without the need to apply the BES algorithm globally • Tools implemented in CADP – τ -CONFLUENCE: BES based algorithm – EXP.OPEN 2.0: Compositional τ -confluence deduction (Theorem 1) 23 CAV - Boulder, Colorado - July 12th, 2003

  24. Experiment: rel/REL Reliable atomic multicast protocol between one transmitter and several receivers hide R_T1, R_T2, R1, R2 in CRASH_TRANSMITTER |[R_T1, R_T2]| ( (RECEIVER_THREAD1 || FAIL_RECEIVER1) |[R1, R2]| (RECEIVER_THREAD2 || FAIL_RECEIVER2) ) 24 CAV - Boulder, Colorado - July 12th, 2003

  25. Experiment: rel/REL Normal generation versus on the fly τ -prioritisation of processes Normal τ -prioritised Difference % states transitions states transitions states transitions CRASH_TRANSMITTER 85 108 73 84 14% 22% RECEIVER_THREAD n 16 260 167 829 16 260 115 697 0% 31% FAIL_RECEIVER n 130 1 059 130 1 059 0% 0% 25 CAV - Boulder, Colorado - July 12th, 2003

  26. Experiment: rel/REL Cost and effect of τ -prioritisation in composition expression Normal τ -prioritised Difference % Number of states 249 357 114 621 54% Number of transitions 783 470 220 754 72% E XP .O PEN execution time 2m23s 2m10s 9% E XP .O PEN memory consumption (Kb) 5 776 3 944 32% SVL execution time 3m05s 3m03s 1% 26 CAV - Boulder, Colorado - July 12th, 2003

  27. Conclusions • Efficient techniques on selected examples – τ -confluence is created mostly by parallel composition – But the memory overhead is negligible in worst cases • On the fly τ -prioritisation can be used as preprocessing step for branching minimisation • Results are not limited to LOTOS-like expressions EXP.OPEN implements other operators (CCS, CSP, muCRL, E-LOTOS) using synchronization vectors • Potential τ -confluence still to be exploited in tools • CADP web page: http://www.inrialpes.fr/vasy/cadp 27 CAV - Boulder, Colorado - July 12th, 2003

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