Skip to main content

Calculi for interaction

Abstract

Action structures have previously been proposed as an algebra for both the syntax and the semantics of interactive computation. Here, a class of concrete action structures calledaction calculi is identified, which can serve as a non-linear syntax for a wide variety of models of interactive behaviour. Each action in an action calculus is represented as an assembly ofmolecules; the syntactic binding ofnames is the means by which molecules are bound together. A graphical form,action graphs, is used to aid presentation. One action calculus differs from another only in its generators, calledcontrols.

Action calculi generalise a previously defined action structure PIC for the π- calculus. Several extensions to PIC are given as action calculi, giving essentially the same power as the π-calculus. An action calculus is also given for the typed λ-calculus, and for Petri nets parametrized on their places and transitions.

An equational characterization of action calculi is given: each action calculusA is the quotient of a term algebra by certain equations. The terms are generated by a set of operators, including those basic to all action structures as well as the controls specific toA; the equations are the basic axioms of action structures together with four additional axiom schemata.

This is a preview of subscription content, access via your institution.

References

  1. 1.

    Abadi, M., Cardelli, L., Curien, P.-L., Lévy, J.-J.: Explicit substitutions. ACM POPL Conference, 1990

  2. 2.

    Barendregt, H.: The Lambda Calculus. North Holland, 2nd edition, 1984

  3. 3.

    Berry, G., Boudol, G.: The chemical abstract machine. Journal of Theoretical Computer Science96, 217–248 (1992)

    MATH  Article  MathSciNet  Google Scholar 

  4. 4.

    Banâtre, J.P., Métayer, D.: The GAMMA model and its discipline of programming. Science of Computer Programming15, 55–77 (1990)

    MATH  Article  MathSciNet  Google Scholar 

  5. 5.

    Gardner, P.: A name-free account of action calculi. Proc. 11th Conference on Mathematical Foundations of Programming Semantics, Tulane, 1995

  6. 6.

    Hermida, C., Power, J.: Fibrational control structures, Proc CONCUR ’95: Concurrency theory. Lecture Notes in Computer Science, Vol 962, pp. 117–129, Springer 1995

  7. 7.

    Hoare, C.A.R.: Communicating Sequential Processes. Communications of ACM21, 666–677 (1978)

    MATH  Article  Google Scholar 

  8. 8.

    Honda, K., Tokoro, M.: An object calculus for asynchronous communication. Proc. European Conference on object-oriented programming. Lecture Notes in Computer Science, Vol 512, pp 133–147. Springer 1991

  9. 9.

    Honda, K., Yoshida, N.: On reduction-based process semantics. Journal of Theoretical Computer Science (1995)

  10. 10.

    Jensen, Ole: Forthcoming PhD thesis. University of Cambridge

  11. 11.

    Lafont, Y.: Interaction nets. Proc. 17th ACM Symposium on Principles of Programming Languages (POPL 90), pp. 95–108, 1990

  12. 12.

    Meseguer, J., Montanari, U.: Petri nets are monoids. Journal of Information and Computation88, 105–155 (1990)

    MATH  Article  MathSciNet  Google Scholar 

  13. 13.

    Mifsud, A.: Forthcoming PhD thesis. University of Edinburgh

  14. 14.

    Mifsud, A., Milner, R, Power, J.: Control structures. Proceedings of LICS ’95, 10th Annual IEEE Symposium on Logic in Computer Science, ed. D. Kozen, IEEE Computer Society Press, pp. 188–198, 1995

  15. 15.

    Milner, R.: The polyadic π-calculus: a tutorial. In: Logic and Algebra of Specification (ed. F.L. Bauer, W. Brauer and H. Schwichtenberg) Springer Verlag, 1993, pp 203–246

  16. 16.

    Milner, R.: Functions as processes. Math. Struct. in Comp. Science 2, 119–141 (1992)

    MATH  Article  MathSciNet  Google Scholar 

  17. 17.

    Milner, R.: Action structures and the π-calculus. In: Proof and Computation (ed. H. Schwichtenberg) Series F: Computer and Systems Sciences, NATO Advanced Study Institute, (Proceedings of International Summer School held in Marktoberdorf, Germany, 1993), Springer Verlag 1994, pp 219–280

  18. 18.

    Milner, R.: Action structures for the π-calculus. Research Report ECS-LFCS-93-264, Laboratory for Foundations of Computer Science, Computer Science Department, Edinburgh University, 1992

  19. 19.

    Milner, R., Action calculi, or concrete action structures. Proc. MFCS Conference, Gdansk, Poland, Lecture Notes in Computer Science, Vol 711, pp. 105–121. Springer-Verlag 1993

  20. 20.

    Milner, R.: Higher-order action calculi. Proc. Computer Science Logic 1992 (ed. Karl Meinke) Lecture Notes in Computer Science, Vol 832, pp. 238–260. Springer-Verlag 1994

  21. 21.

    Milner, R., Parrow, J., Walker D.: A calculus of mobile processes, Parts I and II. Journal of Information and Computation100, 1–40, 41–77 (1992)

    MATH  Article  MathSciNet  Google Scholar 

  22. 22.

    Petri, C.A.: Fundamentals of a theory of asynchronous information flow. Proc. IFIP Congress ’62, pp. 386–390. North Holland 1962

Download references

Author information

Affiliations

Authors

Corresponding author

Correspondence to Robin Milner.

Rights and permissions

Reprints and Permissions

About this article

Cite this article

Milner, R. Calculi for interaction. Acta Informatica 33, 707–737 (1996). https://doi.org/10.1007/BF03036472

Download citation

Keywords

  • Action Structure
  • Molecular Form
  • Monoidal Category
  • Control Rule
  • Action Graph