Abstract
We describe an incomplete but sound and efficient livelock freedom test for infinite state asynchronous reactive systems. The method abstracts a system into a set of simple control flow cycles labeled with their message passing effects. From these cycles, it constructs a homogeneous integer programming problem (IP) encoding a necessary condition for the existence of livelock runs. Livelock freedom is assured by the infeasibility of the generated homogeneous IP, which can be checked in polynomial time. In the case that livelock freedom cannot be proved, the method proposes a counterexample given as a set of cycles. We apply an automated cycle dependency analysis to counterexamples to check their spuriousness and to refine the abstraction. We illustrate the application of the method to Promela models using our prototype implementation named aLive.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Brand, D., Zafiropulo, P.: On communicating finite-state machines. Journal of the ACM 30(2), 323–342 (1983)
Corbett, J.C., Avrunin, G.S.: Using integer programming to verify general safety and liveness properties. Formal Methods in System Design 6(1), 97–123 (1995)
Dellacherie, S., Devulder, S., Lambert, J.-L.: Software Verification Based on Linear Programming. In: Woodcock, J.C.P., Davies, J., Wing, J.M. (eds.) FM 1999. LNCS, vol. 1709, pp. 1147–1165. Springer, Heidelberg (1999)
Dong, Y., Du, X., Holzmann, G.J., Smolka, S.A.: Fighting livelock in the GNU i-Protocol: a case study in explicit-state model checking. Int. Journal on Software Tools for Technology Transfer (STTT) 4(4), 505–528 (2003)
Esparza, J., Melzer, S.: Model checking LTL using constraint programming. In: Azéma, P., Balbo, G. (eds.) ICATPN 1997. LNCS, vol. 1248, pp. 1–20. Springer, Heidelberg (1997)
Esparza, J., Melzer, S.: Verification of safety properties using integer programming: Beyond the state equation. Formal Methods in System Design 16(2), 159–189 (2000)
FDR2 tool. Formal Systems (Europe) Ltd., http://www.fsel.com
Godefroid, P.: Software model checking: The VeriSoft approach. Formal Methods in System Design 26(2), 77–101 (2005)
Hansen, H., Penczek, W., Valmari, A.: Stuttering-insensitive automata for on-the-fly detection of livelock properties. ENTCS 66(2) (2002)
Ho, A., Smith, S., Hand, S.: On deadlock, livelock, and forward progress. Technical Report UCAM-CL-TR-633, Cambridge University, Computer Laboratory, p. 8 (2005), http://www.cl.cam.ac.uk/TechReports/UCAM-CL-TR-633.pdf
Holzmann, G.J.: The SPIN model checker: Primer and reference manual. Addison-Wesley, Reading (2004)
Kamel, M., Leue, S.: Formalization and validation of the general Inter-ORB protocol (GIOP) using PROMELA and SPIN. Int. Journal on Software Tools for Technology Transfer (STTT) 2(4), 394–409 (2000)
Leue, S., Mayr, R., Wei, W.: A Scalable Incomplete Test for Message Buffer Overflow in Promela Models. In: Graf, S., Mounier, L. (eds.) SPIN 2004. LNCS, vol. 2989, pp. 216–233. Springer, Heidelberg (2004)
Leue, S., Mayr, R., Wei, W.: A Scalable Incomplete Test for the Boundedness of UML RT Models. In: Jensen, K., Podelski, A. (eds.) TACAS 2004. LNCS, vol. 2988, pp. 327–341. Springer, Heidelberg (2004)
Leue, S., Wei, W.: Counterexample-Based Refinement for a Boundedness Test for CFSM Languages. In: Godefroid, P. (ed.) SPIN 2005. LNCS, vol. 3639, pp. 58–74. Springer, Heidelberg (2005)
Leue, S., Wei, W.: A Region Graph Based Approach to Termination Proofs. In: Hermanns, H., Palsberg, J. (eds.) TACAS 2006. LNCS, vol. 3920, pp. 318–333. Springer, Heidelberg (2006)
Manna, Z., Pnueli, A.: The Temporal Logic of Reactive and Concurrent Systems – Specification. Springer, Heidelberg (1992)
Nakatani, T.: Verification of group address registration protocol using PROMELA and SPIN. In: Proc. of SPIN (1997), Available at: http://spinroot.com/spin/Workshops/ws97/nakatani.pdf
Papadimitriou, C.H., Steiglitz, K.: Combinatorial optimization: algorithms and complexity. Prentice-Hall, Englewood Cliffs (1982)
Siegel, S.F., Avrunin, G.S.: Improving the precision of INCA by eliminating solutions with spurious cycles. IEEE Trans. Software Eng. 28(2), 115–128 (2002)
S.L.A.P tool (version 0.1): A static livelock analyzer for CSP processes, Webpage: http://web.comlab.ox.ac.uk/oucl/work/joel.ouaknine/software/slap.html
von Bochmann, G.: Finite state description of communication protocols. Computer Networks 2, 361–372 (1978)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2006 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Leue, S., Ştefănescu, A., Wei, W. (2006). A Livelock Freedom Analysis for Infinite State Asynchronous Reactive Systems. In: Baier, C., Hermanns, H. (eds) CONCUR 2006 – Concurrency Theory. CONCUR 2006. Lecture Notes in Computer Science, vol 4137. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11817949_6
Download citation
DOI: https://doi.org/10.1007/11817949_6
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-37376-6
Online ISBN: 978-3-540-37377-3
eBook Packages: Computer ScienceComputer Science (R0)