Advertisement

Abstract

We study a refinement of name passing in a process calculus, where names have input and output polarities. Building on a simple asynchronous reduction semantics, we develop a notion of polarized bisimulation and show that it is a congruence. We then give an encoding of Moggi's computational lambda calculus in polarized π which preserves all of Moggi's observational equivalences except the η-value rule.

Keywords

Parallel Composition Process Equivalence Process Context Proof Sketch Output Polarity 
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.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Gérard Berry and Gérard Boudol. The chemical abstract machine. In Proc. 17th ACM Symposium on Principles of Programming Languages, pages 81–94, January 1990.Google Scholar
  2. 2.
    Gérard Boudol. Asynchrony and the pi-calculus. Research Report 1702, INRIA, May 1992.Google Scholar
  3. 3.
    U. Engberg and M. Nielsen. A calculus of communicating systems with label-passing. Report DAIMI PB-208, Computer Science Department, Aarhus University, 1986.Google Scholar
  4. 4.
    Keiho Honda and Nobuko Yoshida. On reduction-based process semantics. In Proc. 13th Conf. on Foundations of Softawre Technology and Theoretical Computer Science, pages 373–387, December 1993.Google Scholar
  5. 5.
    Kohei Honda and Mario Tokoro. An object calculus for asynchronous communication. In Proc. 5th European Conference on Object-Oriented Programming, pages 133–147, July 1991. Springer LNCS 512.Google Scholar
  6. 6.
    C.B. Jones. Process-algebraic foundations for an object-based design notation. Technical Report UMCS-93-10-1, University of Manchester, 1993.Google Scholar
  7. 7.
    Robin Milner. Functions as processes. Rapport de Recherche 1154, INRIA Sophia-Antipolis, February 1990.Google Scholar
  8. 8.
    Robin Milner. The polyadic π-calculus: A tutorial. Report ECS-LFCS-91-180, Laboratory for Foundations of Computer Science, Edinburgh University, October 1991.Google Scholar
  9. 9.
    Robin Milner. Functions as processes. Mathematical Structures in Computer Science, 2(2):119–141, 1992.Google Scholar
  10. 10.
    Robin Milner. Elements of interaction. Communications of the ACM, 36(1):78–89, January 1993. Turing Award lecture.Google Scholar
  11. 11.
    Robin Milner, Joachim Parrow, and David Walker. A calculus of mobile processes, part I and II. Report ECS-LFCS-89-85/86, Laboratory for Foundations of Computer Science, Edinburgh University, 1989.Google Scholar
  12. 12.
    Robin Milner and Davide Sangiorgi. Barbed bisimulation. In Automata, Languages, and Programming, 19th International Colloquium, 1992. Lecture Notes in Computer Science 623.Google Scholar
  13. 13.
    Eugenio Moggi. Computational lambda-calculus and monads. LFCS Report ECS-LFCS-88-66, University of Edinburgh, October 1988.Google Scholar
  14. 14.
    Eugenio Moggi. Computational lambda-calculus and monads. In Proceedings 1989 IEEE Symposium on Logic in Computer Science, pages 14–23. IEEE, June 1989.Google Scholar
  15. 15.
    Martin Odersky. Applying π: Towards a basis for concurrent imperative programming. In Proc. 2nd ACM SIGPLAN Workshop on State in Programming Languages, January 1995.Google Scholar
  16. 16.
    Benjamin Pierce and Davide Sangiorgi. Typing and subtyping for mobile processes. In IEEE Symposium on Logic in Computer Science, June 1993.Google Scholar
  17. 17.
    Benjamin C. Pierce, Didier Rémy, and David N. Turner. A typed higher-order programming language based on the Pi-calculus. Draft report; available in the PICT distribution, July 1993.Google Scholar
  18. 18.
    Davide Sangiorgi. Expressing Mobility in Process Algebras: First-Order and Higher-Order Paradigms. PhD thesis, Department of Computer Science, University of Edinburgh, 1992.Google Scholar
  19. 19.
    Davide Sangiorgi. An investigation into functions as processes. In Proc. 9th International Conference on the Mathematical Foundation of Programming Semantics, New Orleans, Louisana, pages 143–159, April 1993.Google Scholar
  20. 20.
    David Walker, π-calculus semantics of object-oriented programming languages. In Takayasu Ito and Albert R. Meyer, editors, Proc. Theoretical Aspects of Computer Software, pages 532–547. Springer-Verlag, September 1991. LNCS 526.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1995

Authors and Affiliations

  • Martin Odersky
    • 1
  1. 1.Department of Computer ScienceUniversity of KarlsruheKarlsruheGermany

Personalised recommendations