The Abstract Machinery of Interaction (Long Version)

This paper revisits the Interaction Abstract Machine (IAM), a machine based on Girard's Geometry of Interaction, introduced by Mackie and Danos & Regnier. It is an unusual machine, not relying on environments, presented on linear logic proof nets, and whose soundness proof is convoluted and passes through various other formalisms. Here we provide a new direct proof of its correctness, based on a variant of Sands's improvements, a natural notion of bisimulation. Moreover, our proof is carried out on a new presentation of the IAM, defined as a machine acting directly on $\lambda$-terms, rather than on linear logic proof nets.

[1]  Ugo Dal Lago,et al.  The geometry of synchronization , 2014, CSL-LICS.

[2]  Ulrich Schöpp,et al.  On the Relation of Interaction Semantics to Continuations and Defunctionalization , 2014, Log. Methods Comput. Sci..

[3]  Beniamino Accattoli,et al.  Implementing Open Call-by-Value , 2017, FSEN.

[4]  Guy E. Blelloch,et al.  Parallelism in sequential functional languages , 1995, FPCA '95.

[5]  Marc Roth,et al.  The weak call-by-value λ-calculus is reasonable for both time and space , 2020, Proc. ACM Program. Lang..

[6]  Ross Street,et al.  Traced monoidal categories , 1996 .

[7]  Vincent Danos,et al.  Head Linear Reduction , 2004 .

[8]  Beniamino Accattoli,et al.  An Abstract Factorization Theorem for Explicit Substitutions , 2012, RTA.

[9]  Claudio Sacerdoti Coen,et al.  Crumbling Abstract Machines , 2019, PPDP.

[10]  Jean-Louis Krivine,et al.  A call-by-name lambda-calculus machine , 2007, High. Order Symb. Comput..

[11]  David Sands,et al.  Total correctness by local improvement in the transformation of functional programs , 1996, TOPL.

[12]  Damiano Mazza Simple Parsimonious Types and Logarithmic Space , 2015, CSL.

[13]  Beniamino Accattoli,et al.  Environments and the complexity of abstract machines , 2017, PPDP.

[14]  Olivier Laurent A Token Machine for Full Geometry of Interaction , 2001, TLCA.

[15]  P. J. Landin,et al.  Correspondence between ALGOL 60 and Church's Lambda-notation , 1965, Commun. ACM.

[16]  Beniamino Accattoli Proof Nets and the Linear Substitution Calculus , 2018, ICTAC.

[17]  Kazushige Terui,et al.  Parsimonious Types and Non-uniform Computation , 2015, ICALP.

[18]  Ian Mackie,et al.  A Geometry of Interaction Machine for Gödel's System T , 2017, WoLLIC.

[19]  Martín Abadi,et al.  The geometry of optimal lambda reduction , 1992, POPL '92.

[20]  Dan R. Ghica,et al.  The Dynamic Geometry of Interaction Machine: A Call-by-need Graph Rewriter , 2017, CSL.

[21]  Damiano Mazza,et al.  Distilling abstract machines , 2014, ICFP.

[22]  Vincent Danos,et al.  Local and asynchronous beta-reduction (an analysis of Girard's execution formula) , 1993, [1993] Proceedings Eighth Annual IEEE Symposium on Logic in Computer Science.

[23]  Claudio Sacerdoti Coen,et al.  On the Relative Usefulness of Fireballs , 2015, 2015 30th Annual ACM/IEEE Symposium on Logic in Computer Science.

[24]  Vincent Danos,et al.  Game Semantics & Abstract Machines. , 1996, LICS 1996.

[25]  Robin Milner,et al.  Local Bigraphs and Confluence: Two Conjectures: (Extended Abstract) , 2007, EXPRESS.

[26]  Ugo Dal Lago,et al.  Computation by interaction for space-bounded functional programming , 2016, Inf. Comput..

[27]  D. Kesner,et al.  Milner’s Lambda-Calculus with Partial Substitutions , 2008 .

[28]  Gianfranco Mascari,et al.  Head Linear Reduction and Pure Proof Net Extraction , 1992, Theor. Comput. Sci..

[29]  Ugo Dal Lago,et al.  (Leftmost-Outermost) Beta Reduction is Invariant, Indeed , 2016, Log. Methods Comput. Sci..

[30]  C. Laneve,et al.  Paths in the lambda-calculus , 1994, LICS 1994.

[31]  Vincent Danos,et al.  Reversible, Irreversible and Optimal lambda-Machines , 1999, Theor. Comput. Sci..

[32]  Ichiro Hasuo,et al.  Memoryful geometry of interaction: from coalgebraic components to algebraic effects , 2014, CSL-LICS.

[33]  Ulrich Schöpp,et al.  Stratified Bounded Affine Logic for Logarithmic Space , 2007, 22nd Annual IEEE Symposium on Logic in Computer Science (LICS 2007).

[34]  Ian Mackie,et al.  The geometry of interaction machine , 1995, POPL '95.

[35]  Samson Abramsky,et al.  Geometry of Interaction and linear combinatory algebras , 2002, Mathematical Structures in Computer Science.

[36]  Vincent Danos,et al.  Reversible, Irreversible and Optimal Lambda-machines , 1999, Linear Logic Tokyo Meeting.

[37]  Hugo Herbelin,et al.  Computing with Abstract Böhm Trees , 1998, Fuji International Symposium on Functional and Logic Programming.

[38]  Ugo Dal Lago,et al.  The geometry of concurrent interaction: Handling multiple ports by way of multiple tokens , 2017, 2017 32nd Annual ACM/IEEE Symposium on Logic in Computer Science (LICS).

[39]  Hugo Herbelin,et al.  Abstract machines for dialogue games , 2007, ArXiv.

[40]  Ugo Dal Lago,et al.  The weak lambda calculus as a reasonable machine , 2008, Theor. Comput. Sci..

[41]  Laurent Regnier,et al.  Une équivalence sur les lambda-termes , 1994, Theor. Comput. Sci..

[42]  Ugo Dal Lago,et al.  The geometry of parallelism: classical, probabilistic, and quantum effects , 2016, POPL.

[43]  Andrew Moran,et al.  Lambda Calculi and Linear Speedups , 2002, The Essence of Computation.

[44]  Cosimo Laneve,et al.  Paths, Computations and Labels in the Lambda-Calculus , 1993, RTA.

[45]  Ulrich Schöpp From Call-by-Value to Interaction by Typed Closure Conversion , 2015, APLAS.

[46]  Ugo Dal Lago,et al.  Parallelism and Synchronization in an Infinitary Context , 2015, 2015 30th Annual ACM/IEEE Symposium on Logic in Computer Science.

[47]  Jean-Yves Girard,et al.  Geometry of Interaction 1: Interpretation of System F , 1989 .

[48]  Delia Kesner,et al.  The structural λ-calculus , 2010 .

[49]  Dan R. Ghica,et al.  Geometry of synthesis: a structured approach to VLSI design , 2007, POPL '07.