Automatic Determination of Communication Topologies in Mobile Systems

  • Arnaud Venet
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1503)


The interconnection structure of mobile systems is very difficult to predict, since communication between component agents may carry information which dynamically changes that structure. In this paper we design an automatic analysis for statically determining all potential links between the agents of a mobile system specified in the π calculus. For this purpose, we use a nonstandard semantics of the π calculus which allows us to describe precisely the linkage of agents. The analysis algorithm is then derived by abstract interpretation of this semantics.

Key words

π- calculus nonstandard semantics abstract interpretation 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    G. Berry and G. Boudol. The chemical abstract machine. Theoretical Computer Science, 96:217–248, 1992.zbMATHCrossRefMathSciNetGoogle Scholar
  2. 2.
    G. Boudol. Asynchrony and the π-calculus. Technical Report 1702, INRIA, 1992.Google Scholar
  3. 3.
    P. Cousot and R. Cousot. Abstract interpretation: a unified lattice model for static analysis of programs by construction or approximation of fixpoints. In Conference Record of the Fourth ACM Symposium on Principles of Programming Languages, pages 238–252, 1977.Google Scholar
  4. 4.
    P. Cousot and R. Cousot. Semantic analysis of communicating sequential processes. In Seventh International Colloquium on Automata, Languages and Programming, volume 85 of LNCS, 1980.Google Scholar
  5. 5.
    P. Cousot and R. Cousot. Abstract interpretation frameworks. Journal of logic and computation, 2(4):511–547, August 1992.Google Scholar
  6. 6.
    P. Cousot and N. Halbwachs. Automatic discovery of linear restraints among variables of a program. In Proceedings of the Fifth Conference on Principles of Programming Languages. ACM Press, 1978.Google Scholar
  7. 7.
    C. Colby. Analyzing the communication topology of concurrent programs. In Symposium on Partial Evaluation and Program Manipulation, 1995.Google Scholar
  8. 8.
    C. Colby. Determining storage properties of sequential and concurrent programs with assignment and structured data. In Proceedings of the Second International Static Analysis Symposium, volume 983 of Lecture Notes in Computer Science, pages 64–81. Springer-Verlag, 1995.Google Scholar
  9. 9.
    P. Cousot. Semantic foundations of program analysis. In S.S. Muchnick and N.D. Jones, editors, Program Flow Analysis: Theory and Applications, chapter 10, pages 303–342. Prentice-Hall, Inc., Englewood Cliffs, 1981.Google Scholar
  10. 10.
    A. Deutsch. A storeless model of aliasing and its abstraction using finite representations of right-regular equivalence relations. In Proceedings of the 1992 International Conference on Computer Languages, pages 2–13. IEEE Computer Society Press, 1992.Google Scholar
  11. 11.
    P. Degano, C. Priami, L. Leth, and B. Thomsen. Analysis of facile programs: A case study. In Proceedings of the Fifth LOMAPS Workshop on Analysis and Verification of Multiple-Agent Languages, volume 1192 of Lecture Notes in Computer Science, pages 345–369. Springer-Verlag, 1996.Google Scholar
  12. 12.
    P. Granger. Static analysis of linear congruence equalities among variables of a program. In TAPSOFT’91, volume 493. Lecture Notes in Computer Science, 1991.Google Scholar
  13. 13.
    C.A.R. Hoare. Communicating Sequential Processes. Prentice Hall, 1985.Google Scholar
  14. 14.
    H.B.M Jonkers. Abstract storage structures. In De Bakker and Van Vliet, editors, Algorithmic languages, pages 321–343. IFIP, 1981.Google Scholar
  15. 15.
    M. Karr. Affine relationships among variables of a program. Acta Informatica, pages 133–151, 1976.Google Scholar
  16. 16.
    N. Mercouroff. An algorithm for analysing communicating processes. In Mathematical Foundations of Programming Semantics, volume 598 of LNCS, 1991.Google Scholar
  17. 17.
    R. Milner. Communication and Concurrency. Prentice Hall, 1989.Google Scholar
  18. 18.
    R. Milner. The polyadic π-calculus: a tutorial. In Proceedings of the International Summer School on Logic and Algebra of Specification. Springer-Verlag, 1991.Google Scholar
  19. 19.
    R. Milner, J. Parrow, and D. Walker. A calculus of mobile processes. Information and Computation, 100:1–77, 1992.zbMATHCrossRefMathSciNetGoogle Scholar
  20. 20.
    H. R. Nielson and F. Nielson. Higher-order concurrent programs with finite communication topology. In 21st ACM Symposium on Principles of Programming Languages, 1994.Google Scholar
  21. 21.
    D. N. Turner. The Polymorphic Pi-Calculus: Theory and Implementation. PhD thesis, Edinburgh University, 1995.Google Scholar
  22. 22.
    A. Venet. Abstract cofibered domains: Application to the alias analysis of untyped programs. In Proceedings of the Third International Static Analysis Symposium SAS’96, volume 1145 of Lecture Notes in Computer Science, pages 366–382. Springer-Verlag, 1996.Google Scholar
  23. 23.
    A. Venet. Abstract interpretation of the π-calculus. In Proceedings of the Fifth LOMAPS Workshop on Analysis and Verification of High-Level Concurrent Languages, volume 1192 of Lecture Notes in Computer Science, pages 51–75. Springer-Verlag, 1996.Google Scholar
  24. 24.
    A. Venet. Automatic analysis of pointer aliasing for untyped programs. Science of Computer Programming, 1999. To appear.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1998

Authors and Affiliations

  • Arnaud Venet
    • 1
  1. 1.LIX, École PolytechniquePalaiseauFrance

Personalised recommendations