Efficient Checking of Link-Reversal-Based Concurrent Systems

  • Matthias Függer
  • Josef Widder
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7454)


Link reversal is an algorithmic method with various applications. Originally proposed by Gafni and Bertsekas in 1981 for routing in radio networks, it has been later applied also to solve concurrency related problems as mutual exclusion, resource allocation, and leader election. For resource allocation, conflicts can be represented by conflict graphs, and link reversal algorithms work on these graphs to resolve conflicts. In this paper we establish that executions of link reversal algorithms on large graphs are similar (a notion which we make precise in the paper) to executions on smaller graphs. This similarity then allows to verify linear time temporal properties of large systems, by verifying a smaller one.


Model Check Temporal Logic Linear Temporal Logic Concurrent System Kripke Structure 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Apt, K.R., Kozen, D.: Limits for automatic verification of finite-state concurrent systems. Inf. Process. Lett. 22(6), 307–309 (1986)MathSciNetCrossRefGoogle Scholar
  2. 2.
    Baier, C., Katoen, J.-P.: Principles of model checking. MIT Press (2008)Google Scholar
  3. 3.
    Barbosa, V.C., Gafni, E.: Concurrency in heavily loaded neighborhood-constrained systems. ACM Trans. Program. Lang. Syst. 11(4), 562–584 (1989)CrossRefGoogle Scholar
  4. 4.
    Browne, M.C., Clarke, E.M., Grumberg, O.: Reasoning about networks with many identical finite state processes. Inf. Comput. 81(1), 13–31 (1989)MathSciNetzbMATHCrossRefGoogle Scholar
  5. 5.
    Busch, C., Surapaneni, S., Tirthapura, S.: Analysis of link reversal routing algorithms for mobile ad hoc networks. In: Proceedings of the 15th ACM Symposium on Parallelism in Algorithms and Architectures (SPAA), pp. 210–219 (2003)Google Scholar
  6. 6.
    Mani Chandy, K., Misra, J.: The drinking philosopher’s problem. ACM Transactions on Programming Languages and Systems 6(4), 632–646 (1984)CrossRefGoogle Scholar
  7. 7.
    Charron-Bost, B., Függer, M., Welch, J.L., Widder, J.: Partial is Full. In: Kosowski, A., Yamashita, M. (eds.) SIROCCO 2011. LNCS, vol. 6796, pp. 113–124. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  8. 8.
    Charron-Bost, B., Gaillard, A., Welch, J.L., Widder, J.: Routing without ordering. In: Proceedings of the 21st ACM Symposium on Parallelism in Algorithms and Architectures (SPAA), pp. 145–153 (2009)Google Scholar
  9. 9.
    Clarke, E., Talupur, M., Touili, T., Veith, H.: Verification by Network Decomposition. In: Gardner, P., Yoshida, N. (eds.) CONCUR 2004. LNCS, vol. 3170, pp. 276–291. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  10. 10.
    Allen, E., Emerson, V.K.: Reducing Model Checking of the Many to the Few. In: McAllester, D. (ed.) CADE 2000. LNCS, vol. 1831, pp. 236–254. Springer, Heidelberg (2000)CrossRefGoogle Scholar
  11. 11.
    Emerson, E.A., Kahlon, V.: Parameterized Model Checking of Ring-Based Message Passing Systems. In: Marcinkowski, J., Tarlecki, A. (eds.) CSL 2004. LNCS, vol. 3210, pp. 325–339. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  12. 12.
    Allen Emerson, E., Namjoshi, K.S.: Reasoning about rings. In: 22nd ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (POPL), pp. 85–94 (1995)Google Scholar
  13. 13.
    Gafni, E., Bertsekas, D.P.: Distributed algorithms for generating loop-free routes in networks with frequently changing topology. IEEE Transactions on Communications 29(1), 11–18 (1981)MathSciNetCrossRefGoogle Scholar
  14. 14.
    German, S.M., Sistla, A.P.: Reasoning about systems with many processes. J. ACM 39(3), 675–735 (1992)MathSciNetzbMATHCrossRefGoogle Scholar
  15. 15.
    Malpani, N., Welch, J.L., Vaidya, N.: Leader election algorithms for mobile ad hoc networks. In: Proceedings of the 4th International Workshop on Discrete Algorithms and Methods for Mobile Computing and Communication (2000)Google Scholar
  16. 16.
    Park, V.D., Scott Corson, M.: A highly adaptive distributed routing algorithm for mobile wireless networks. In: 16th Conference on Computer Communications (Infocom), pp. 1405–1413 (April 1997)Google Scholar
  17. 17.
    Pnueli, A., Xu, J., Zuck, L.D.: Liveness with (0,1, ∞ )-Counter Abstraction. In: Brinksma, E., Larsen, K.G. (eds.) CAV 2002. LNCS, vol. 2404, pp. 107–122. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  18. 18.
    Welch, J.L., Walter, J.E.: Link Reversal Algorithms. Synthesis Lectures on Distributed Computing Theory. Morgan & Claypool Publishers (2011)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2012

Authors and Affiliations

  • Matthias Függer
    • 1
  • Josef Widder
    • 2
  1. 1.Embedded Computing Systems GroupTU WienAustria
  2. 2.Formal Methods in Systems Engineering GroupTU WienAustria

Personalised recommendations