Node Replication: Theory And Practice
Delia Kesner, Loïc Peyrot, Daniel Ventura
TL;DR
This work introduces λR, a term-calculus for node replication that captures higher-order sharing by splitting values into skeletons and multiset MFEs. It provides an internal machinery to realize two evaluation strategies—call-by-name and a fully lazy call-by-need—through distance-based reductions and skeleton extraction, without relying on external meta-level definitions. A non-idempotent intersection type system is developed to give quantitative characterisations of termination and reduction length, and it is shown that name and fully lazy strategies are observationally equivalent using these type-theoretic tools. The results bridge Curry-Howard interpretations of deep inference with practical sharing mechanisms, offering a concise framework for implementing and reasoning about fully lazy sharing in functional languages and linking to prior work on explicit substitutions and graph-reduction formalisms.
Abstract
We define and study a term calculus implementing higher-order node replication. It is used to specify two different (weak) evaluation strategies: call-by-name and fully lazy call-by-need, that are shown to be observationally equivalent by using type theoretical technical tools.
