DeepAI
Log In Sign Up

The Space of Interaction (long version)

04/28/2021
by   Beniamino Accattoli, et al.
0

The space complexity of functional programs is not well understood. In particular, traditional implementation techniques are tailored to time efficiency, and space efficiency induces time inefficiencies, as it prefers re-computing to saving. Girard's geometry of interaction underlies an alternative approach based on the interaction abstract machine (IAM), claimed as space efficient in the literature. It has also been conjectured to provide a reasonable notion of space for the lambda-calculus, but such an important result seems to be elusive. In this paper we introduce a new intersection type system precisely measuring the space consumption of the IAM on the typed term. Intersection types have been repeatedly used to measure time, which they achieve by dropping idempotency, turning intersections into multisets. Here we show that the space consumption of the IAM is connected to a further structural modification, turning multisets into trees. Tree intersection types lead to a finer understanding of some space complexity results from the literature. They also shed new light on the conjecture about reasonable space: we show that the usual way of encoding Turing machines into the lambda calculus cannot be used to prove that the space of the IAM is a reasonable cost model.

READ FULL TEXT

page 1

page 2

page 3

page 4

07/18/2022

Multi Types and Reasonable Space (Long Version)

Accattoli, Dal Lago, and Vanoni have recently proved that the space used...
10/24/2020

The (In)Efficiency of Interaction

Evaluating higher-order functional programs through abstract machines in...
03/01/2022

Reasonable Space for the λ-Calculus, Logarithmically

Can the λ-calculus be considered as a reasonable computational model? Ca...
02/28/2018

The Dynamic Geometry of Interaction Machine: A Token-Guided Graph Rewriter

In implementing evaluation strategies of the lambda-calculus, both corre...
07/06/2018

Tight Typings and Split Bounds

Multi types---aka non-idempotent intersection types---have been used to ...
02/19/2018

Efficient Implementation of Evaluation Strategies via Token-Guided Graph Rewriting

In implementing evaluation strategies of the lambda-calculus, both corre...
02/20/2019

The Weak Call-By-Value λ-Calculus is Reasonable for Both Time and Space

We study the weak call-by-value λ-calculus as a model for computational ...