I am reading Yves Lafont's introductory paper Interaction Nets. Early in the beginning he mentions that max cannot be coded as follows

Naive coding of max

since in this coding it is not possible to choose which argument to look at first (so necessitating the need for a principle port). But I don't understand why it's wrong. I am trying to come up with an example where certain choice of rewritings will lead to a wrong answer.


1 Answer 1


Rules for agents in interaction nets are defined by what the principal port of that agent is connected to and each agent has exactly one principal port.

In the "max" example, for the top left rule to work the principal port of the Max agent must be the one connected to the 0.

But then the top right rule can only depend on the value of x, not the 0. So the top right rule cannot be differentiated from the bottom rule (assuming x is not 0) and the bottom rule does not work if the y value is 0.

It is usual, when drawing interaction nets, for the principal port to have a little arrow drawn on it, to make this clear.

Lafont goes on to show how to make this work via an intermediate step, but I assume you've read that.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.