Date of this Version
Sharing graphs are the structures introduced by Lamping to implement optimal reductions of lambda calculus. Gonthier’s reformulation of Lamping’s technique inside Geometry of Interaction, and Asperti and Laneve’s work on Interaction Systems have shown that sharing graphs can be used to implement a wide class of calculi. Here, we give a general characterization of sharing graphs independent from the calculus to be implemented. Such a characterization rests on an algebraic semantics of sharing graphs exploiting the methods of Geometry of Interaction. By this semantics we can define an unfolding partial order between proper sharing graphs, whose minimal elements are unshared graphs. The least-shared-instance of a sharing graph is the unique unshared graph that the unfolding partial order associates to it. The algebraic semantics allows to prove that we can associate a semantical read-back to each unshared graph and that such a read-back can be computed via suitable read-back reductions. The result is then lifted to sharing graphs proving that any read-back (or unfolding) reduction of them can be simulated on their least-shared- instances. The sharing graphs defined in this way allow to implement in a distributed and local way any calculus with a global reduction rule in the style of the beta rule of lambda calculus. Also in this case the proof technique is to prove that sharing reductions can be simulated on least-shared-instances. The result is proved under the only assumption that the structures of the calculus have a box nesting property, that is, that two beta redexes may not partially overlap. As a result, we get a sharing graph machine that seems to be the most natural low-level computational model for functional languages. The paper concludes showing that optimality is a by-product of this technique: optimal reductions are lazy reductions of the sharing graph machine. We stress the proof strategy followed in the paper: it is based on an amazing interplay between standard rewriting system properties (strong normalization, confluence, and unique normal form) and algebraic properties definable via the techniques of Geometry of Interaction.
Date Posted: 26 August 2006