Abstract
We are concerned with the static analysis of the communication topology for systems of mobile processes. For this purpose we construct an abstract interpretation of a large fragment of the π-calculus which can be used as a metalanguage to specify the behaviour of these systems. The abstract domain is expressive enough to give accurate descriptions of infinite and non-uniform distributions of processes and communication channels. We design appropriate widening operators for the automatic inference of such information.
This work was partly supported by esprit bra 8130 lomaps.
Preview
Unable to display preview. Download preview PDF.
References
G. Berry and G. Boudol. The chemical abstract machine. Theoretical Computer Science, 96:217–248, 1992.
G. Boudol, I. Castellani, M. Hennessy, and A Kiehn. A theory of processes with localities. Formal Aspects of Computing, 6(2): 165–200, 1994.
M. Barr and C. Wells. Category Theory for Computing Science. Prentice Hall, 1990.
P. Cousot and R. Cousot. Static determination of dynamic properties of programs. In Proceedings of the 2nd International Symposium on Programming, pages 106–130, Paris, 1976. Dunod.
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 4th ACM Symposium on Principles of Programming Languages, pages 238–252, Los Angeles, California, U.S.A., 1977.
P. Cousot and R. Cousot. Abstract interpretation frameworks. Journal of logic and computation, 2(4):511–547, August 1992.
P. Cousot and R. Cousot. Compositional and inductive semantic definitions in fixpoint, equational, constraint, closure-condition, rule-based and game theoretic form. In Conference on Computer-Aided Verification, 7th International Conference, CAV'95, volume 939 of Lecture Notes in Computer Science, pages 293–308. Springer-Verlag, 1995.
P. Cousot and N. Halbwachs. Automatic discovery of linear restraints among variables of a program. In 5th POPL. ACM Press, 1978.
C. Colby. Analyzing the communication topology of concurrent programs. In Symposium on Partial Evaluation and Program Manipulation, 1995.
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.
A. Deutsch. Operational models of programming languages and representations of relations on regular languages with application to the static determination of dynamic aliasing properties of data. PhD thesis, University Paris VI France, 1992.
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, Los Alamitos, California, U.S.A., 1992.
A. Deutsch. Interprocedural may-alias analysis for pointers: beyond klimiting. In ACM SIGPLAN'94 Conference on Programming Language Design and Implementation. ACM Press, 1994.
P. Granger. Static analysis of arithmetical congruences. International Journal of Computer Mathematics, 30:165–190, 1989.
P. Granger. Static analysis of linear congruence equalities among variables of a program. In TAPSOFT'91, volume 493. Lecture Notes in Computer Science, 1991.
A. Habel. Hyperedge replacement: grammars and languages, volume 643 of Lecture Notes in Computer Science. Springer-Verlag, 1992.
N. Jones and S. Muchnick. Flow analysis and optimization of lisp-like structures. In Program Flow Analysis: Theory and Applications, pages 102–131. Prentice Hall, 1981.
H.B.M Jonkers. Abstract storage structures. In De Bakker and Van Vliet, editors, Algorithmic languages, pages 321–343. IFIP, 1981.
M. Karr. Affine relationships among variables of a program. Acta Informatica, pages 133–151, 1976.
R. Milner. The polyadic π-calculus: a tutorial. In Proceedings of the International Summer School on Logic and Algebra of Specification. Springer Verlag, 1991.
R. Milner. Functions as processes. Journal of Mathematical Structures in Computer Science, 2, 1992.
R. Milner, J. Parrow, and D. Walker. A calculus of mobile processes. Information and Computation, 100:1–77, 1992.
H. R. Nielson and F. Nielson. Higher-order concurrent programs with finite communication topology. In 21st ACM Symposium on Principles of Programming Languages, 1994.
D. Sangiorgi. Expressing mobility in process algebras: first-order and higher order paradigms. PhD thesis, University of Edinburgh, 1994.
D. Sangiorgi. Locality and true-concurrency in calculi for mobile processes. In International Symposium on Theoretical Aspects of Computer Software, Lecture Notes in Computer Science, 1994.
D. N. Turner. The Polymorphic Pi-Calculus: Theory and Implementation. PhD thesis, Edinburgh University, 1995.
A. Venet. Abstract cofibered domains: Application to the alias analysis of untyped programs. In Proc. of the Third International Static Analysis Symposium SAS'96, volume 1145 of Lecture Notes in Computer Science, pages 366–382. Springer-Verlag, 1996.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1997 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Venet, A. (1997). Abstract interpretation of the π-calculus. In: Dam, M. (eds) Analysis and Verification of Multiple-Agent Languages. LOMAPS 1996. Lecture Notes in Computer Science, vol 1192. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-62503-8_3
Download citation
DOI: https://doi.org/10.1007/3-540-62503-8_3
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-62503-2
Online ISBN: 978-3-540-68052-9
eBook Packages: Springer Book Archive