Journal of Symbolic Logic

Storage Operators and Directed Lambda-Calculus

Rene David and Karim Nour

Full-text is available via JSTOR, for JSTOR subscribers. Go to this article in JSTOR.


Storage operators have been introduced by J. L. Krivine in [5] they are closed $\lambda$-terms which, for a data type, allow one to simulate a "call by value" while using the "call by name" strategy. In this paper, we introduce the directed $\lambda$-calculus and show that it has the usual properties of the ordinary $\lambda$-calculus. With this calculus we get an equivalent--and simple--definition of the storage operators that allows to show some of their properties: $\bullet$ the stability of the set of storage operators under the $\beta$-equivalence (Theorem 5.1.1); $\bullet$ the undecidability (and semidecidability) of the problem "is a closed $\lambda$-term $t$ a storage operator for a finite set of closed normal $\lambda$-terms?" (Theorems 5.2.2 and 5.2.3); $\bullet$ the existence of storage operators for every finite set of closed normal $\lambda$-terms (Theorem 5.4.3); $\bullet$ the computation time of the "storage operation" (Theorem 5.5.2).

Article information

J. Symbolic Logic, Volume 60, Issue 4 (1995), 1054-1086.

First available in Project Euclid: 6 July 2007

Permanent link to this document

Mathematical Reviews number (MathSciNet)

Zentralblatt MATH identifier



David, Rene; Nour, Karim. Storage Operators and Directed Lambda-Calculus. J. Symbolic Logic 60 (1995), no. 4, 1054--1086.

Export citation