A Calculus for Interaction Nets

  • Maribel Fernández
  • Ian Mackie
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1702)


Interaction nets are graphical rewriting systems which can be used as either a high-level programming paradigm or a low-level implementation language. However, an operational semantics together with notions of strategy and normal form which are essential to reason about implementations, are not easy to formalize in this graphical framework. The purpose of this paper is to study a textual calculus for interaction nets, with a formal operational semantics, which provides a foundation for implementation. In addition, we are able to specify in this calculus various strategies, and a type system which formalizes the notion of partition used to define semi-simple nets. The resulting system can be seen as a kernel for a programming language, analogous to the λ-calculus.


Normal Form Operational Semantic Proof Tree Active Pair Type Constructor 
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.
    Abramsky, S.: Computational Interpretations of Linear Logic. Theoretical Computer Science 111, 3–57 (1993)zbMATHCrossRefMathSciNetGoogle Scholar
  2. 2.
    Ariola, Z.M., Klop, J.W.: Lambda calculus with explicit recursion. Information and Computation 139(2), 154–233 (1997)zbMATHCrossRefMathSciNetGoogle Scholar
  3. 3.
    Banach, R.: The algebraic theory of interaction nets. Technical Report UMCS-95- 7-2, University of Manchester (1995)Google Scholar
  4. 4.
    Bawden, A.: Connection graphs. In: Proceedings of ACM Conference on Lisp and Functional Programming, pp. 258–265 (1986)Google Scholar
  5. 5.
    Danos, V., Regnier, L.: The structure of multiplicatives. Archive for Mathematical Logic 28, 181–203 (1989)zbMATHCrossRefMathSciNetGoogle Scholar
  6. 6.
    Fernández, M.: Type assignment and termination of interaction nets. Mathematical Structures in Computer Science 8(6), 593–636 (1998)zbMATHCrossRefMathSciNetGoogle Scholar
  7. 7.
    Fernández, M., Mackie, I.: Coinductive techniques for operational equivalence of interaction nets. In: Proceedings of the 13th Annual IEEE Symposium on Logic in Computer Science (LICS 1998), pp. 321–332. IEEE Computer Society Press, Los Alamitos (1998)Google Scholar
  8. 8.
    Fernández, M., Mackie, I.: Interaction nets and term rewriting systems. Theoretical Computer Science 190(1), 3–39 (1998)zbMATHCrossRefMathSciNetGoogle Scholar
  9. 9.
    Gonthier, G., Abadi, M., Lévy, J.-J.: The geometry of optimal lambda reduction. In: Proceedings of the 19th ACM Symposium on Principles of Programming Languages (POPL 1992), pp. 15–26. ACM Press, New York (1992)CrossRefGoogle Scholar
  10. 10.
    Honda, K.: Types for dyadic interaction. In: Best, E. (ed.) CONCUR 1993. LNCS, vol. 715. Springer, Heidelberg (1993)Google Scholar
  11. 11.
    Klop, J.-W., van Oostrom, V., van Raamsdonk, F.: Combinatory reduction systems, introduction and survey. Theoretical Computer Science 121, 279–308 (1993)zbMATHCrossRefMathSciNetGoogle Scholar
  12. 12.
    Lafont, Y.: Interaction nets. In: Proceedings of the 17th ACM Symposium on Principles of Programming Languages (POPL 1990), pp. 95–108. ACM Press, New York (1990)CrossRefGoogle Scholar
  13. 13.
    Lamping, J.: An algorithm for optimal lambda calculus reduction. In: Proceedings of the 17th ACM Symposium on Principles of Programming Languages (POPL 1990), pp. 16–30. ACM Press, New York (1990)CrossRefGoogle Scholar
  14. 14.
    Laneve, C.: Optimality and Concurrency in Interaction Systems. PhD thesis, Dipartmento di Informatica, Universitá degli Studi di Pisa (1993)Google Scholar
  15. 15.
    Mackie, I.: Static analysis of interaction nets for distributed implementations. In: Van Hentenryck, P. (ed.) SAS 1997. LNCS, vol. 1302, pp. 217–231. Springer, Heidelberg (1997)Google Scholar
  16. 16.
    Mackie, I.: YALE: Yet another lambda evaluator based on interaction nets. In: Proceedings of the 3rd ACM SIGPLAN International Conference on Functional Programming (ICFP 1998), pp. 117–128. ACM Press, New York (1998)CrossRefGoogle Scholar
  17. 17.
    Pinto, J.S.: An abstract machine for interaction nets, École Polytechnique (1999)Google Scholar
  18. 18.
    Yoshida, N.: Graph notation for concurrent combinators. In: Ito, T., Yonezawa, A. (eds.) TPPP 1994. LNCS, vol. 907, pp. 364–397. Springer, Heidelberg (1995)CrossRefGoogle Scholar
  19. 19.
    Yoshida, N.: Minimality and separation results on asynchronous mobile processes: Representability theorems by concurrent combinators. In: Sangiorgi, D., de Simone, R. (eds.) CONCUR 1998. LNCS, vol. 1466, pp. 131–146. Springer, Heidelberg (1998)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1999

Authors and Affiliations

  • Maribel Fernández
    • 1
  • Ian Mackie
    • 2
  1. 1.LIENS (CNRS UMR 8548)École Normale SupérieureParisFrance
  2. 2.CNRS-LIX (UMR 7650)École PolytechniquePalaiseau CedexFrance

Personalised recommendations