Coinductive techniques for operational equivalence of interaction nets

  title={Coinductive techniques for operational equivalence of interaction nets},
  author={Maribel Fern{\'a}ndez and Ian Mackie},
  journal={Proceedings. Thirteenth Annual IEEE Symposium on Logic in Computer Science (Cat. No.98CB36226)},
  • Maribel Fernández, I. Mackie
  • Published 21 June 1998
  • Computer Science
  • Proceedings. Thirteenth Annual IEEE Symposium on Logic in Computer Science (Cat. No.98CB36226)
In this paper we study a notion of operational equivalence for interaction nets, following the recent success of applying methods based on bisimulation to functional and object oriented programming languages. We set up notions of contextual equivalence and bisimilarity and show that they coincide. A coinduction principle then gives a simple and robust way of showing when two interaction nets are contextually equivalent. We include several examples to demonstrate the usefulness of the approach… 

Figures from this paper

A Theory of Operational Equivalence for Interaction Nets

This work generalizes previous studies of operational equivalence in interaction nets since it can be applied to untyped systems, thus all systems of interaction nets are captured.

Observational Equivalence for Synchronized Graph Rewriting with Mobility

A notion of bisimulation for graph rewriting systems is introduced, allowing to prove observational equivalence for dynamically evolving graphs and networks, and an up-to technique simplifying bisimilarity proofs is introduced.

ATheor yo fOperationa lEquivalenc efor Interaction Nets

This work generalizes previous studies of operational equivalence in interaction nets since it can be applied to untyped systems, thus all systems of interaction nets are captured.

Representing the Finite calculus in Multi Interaction Nets Concurrency Interaction Non determinism

The Interaction Nets of Lafont are extended with some non determinism capabilities and then it is shown how to implement the nite monadic calculus in that system.

Functional programming and program transformation with interaction nets

The use of recursion patterns are considered and a suitable archetype/instantiation mechanism for interaction agents are introduced and program transformation by fusion is considered, a well-known transformation technique, and this extends smoothly to the visual programming framework.

A Calculus for Interaction Nets

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, and a type system which formalizes the notion of partition used to define semi-simple nets.

Interaction nets for linear logic

  • I. Mackie
  • Computer Science, Mathematics
    Theor. Comput. Sci.
  • 2000

Optimal sharing graphs for substructural higher-order rewriting systems

This work provides an algorithm by defining a class of higher-order rewriting systems having Intuitionistic Linear Logic as a substitution calculus, in the sense of Van Oostrom (1994), and introduces a method of translating terms and rules into equivalent Lamping-Gonthier sharing graphs, offering a generalisation of the mechanism for optimal reduction from second- to higher- order term rewriting systems.

A Calculus for Interaction Nets Based on the Linear Chemical Abstract Machine

Towards a Programming Language for Interaction Nets

  • I. Mackie
  • Computer Science, Linguistics
    Electron. Notes Theor. Comput. Sci.
  • 2005



Proving Congruence of Bisimulation in Functional Programming Languages

This work uses this method to show that some generalizations of Abramsky's applicative bisimulation are congruences whenever evaluation can be specified by a certain natural form of structured operational semantics.

From Term Rewriting to Generalised Interaction Nets

This framework allows us to represent large classes of term rewriting systems, genuine parallel functions, non-determinism, communication, sharing, and hence can be used to code features from Standard ML and Concurrent ML.

Bisimilarity for a first-order calculus of objects with subtyping

This is the first study of contextual equivalence for an object calculus and the first application of Howe's method to subtyping, and intends to demonstrate that operational methods are a promising new direction for the foundations of object-oriented programming.

Communication and concurrency

  • R. Milner
  • Computer Science
    PHI Series in computer science
  • 1989
This chapter discusses Bisimulation and Observation Equivalence as a Modelling Communication, a Programming Language, and its application to Equational laws.

Type assignment and termination of interaction nets

This paper considers semi-simple interaction nets as a programming language, and presents a type assignment system using intersection types, and shows that interactions preserve types and the type system is not decidable, but its restriction to rank 2 types is.

Linear logic with boxes

  • I. Mackie
  • Computer Science
    Proceedings. Thirteenth Annual IEEE Symposium on Logic in Computer Science (Cat. No.98CB36226)
  • 1998
This work gives an efficient new finite interaction net encoding of linear logic which is not optimal, but overcomes many of the inefficiencies caused by the bookkeeping operations in the implementations of optimal reduction.

The geometry of optimal lambda reduction

This paper connects and explains the geometry of interaction and Lamping's graphs, which offer a new understanding of computation, as well as ideas for efficient and correct implementations.

Functional programming and input/output

The author obtains, for the first time, operational semantics for the three most widely implemented I/O mechanisms for lazy languages, and proves that the three are equivalent in expressive power.

Interaction nets

A new kind of programming language, with the following features: a simple graph rewriting semantics, a complete symmetry between constructors and destructors, and a type discipline for deterministic and deadlock-free (microscopic) parallelism.

Interaction Combinators

It is shown that a very simple system ofinteraction combinators, with only three symbols and six rules, is a universal model of distributed computation, in a sense that will be made precise. This