Interaction nets are a model of computation (developed by Lafont in 1990s) based on paradigm of interaction, they are an inherently distributed form of computation.
Agents
Agents are nodes with:
- one principal port (outgoing edge depicted with arrow)
- set of auxiliary ports (other connected edges, ordered)
- a type that determines its interactions (node symbol)
Agents correspond with functions.
Nets
An interaction net is a graph of agents, where agents are connected at their ports.
Ports are connected 1-to-1.
If a port is not connected to another agent, we say it is free.
The interface of a net is its set of free ports.
Nets correspond with programs.
There are two special nets:
- the empty net
- wirings (nets with only edges)
Active Pairs
A pair of agents which are connected by their primary ports are called an active pair.
(we draw a parallel to redexes)
Interaction Rules
An interaction rule replaces an active pair of agents by a new net . The new net must have the same interface as the active pair. There can be at most one interaction rule for each pair of agent types. The reduction is local so only agents in the active pair are rewritten.

Natural Numbers
We can define natural numbers over a 0 agent and the successor agent .
Addition
Example: addition in practice
Erasing Agent
The erasing agent is helpful to erase sub-nets (e.g. to )
Duplication Agent
The duplicating agent is helpful to copy the same operation (e.g. ) to two sub-nets (e.g. and )
Multiplication
Rule 2:
Slides 13-15
Normal Forms
When do we stop applying interaction rules to a net? Normal form: stop when there are no more active pairs
Not all nets have a normal form, some can be non-terminating:

Confluence
Interactions nets have strong confluence (the diamond property).
If and are interaction nets, we use to denote that can be obtained through a single interaction rule from .
The property of strong confludence tells us that if and then there exists a term such that and .
This property makes interaction nets suitable for representing distributed computations, since computational steps can take place in parallel.
Non-deterministic extension
Interaction nets are inherently deterministic, even with many active pairs, each is reduced in isolation.
Possible non-deterministic extensions include:
- allowing multiple interaction rules for each pair of agents, from which one will be chosen at random for each active pair
- allowing edges that connect more than two ports, where branch is chosen at random
- allowing agents to have multiple principal ports - ambiguous agents
amb agent
The
ambagent has two principal ports. If anambagent forms two active pairs, then the interaction is to be resolved at random.
Computational power of Interaction Nets
Any computation that can be encoded by Turing Machines or Lambda Calculus can be encoded by Interaction Nets. Therefore, Interaction Nets are a computationally equivalent model of computation.





Rule 2: /Pasted%20image%2020240416191956.png)