Blum, William and Ong, C. -H. Luke - The Safe Lambda Calculus

lmcs:1145 - Logical Methods in Computer Science, February 19, 2009, Volume 5, Issue 1
The Safe Lambda Calculus

Authors: Blum, William and Ong, C. -H. Luke

Safety is a syntactic condition of higher-order grammars that constrains occurrences of variables in the production rules according to their type-theoretic order. In this paper, we introduce the safe lambda calculus, which is obtained by transposing (and generalizing) the safety condition to the setting of the simply-typed lambda calculus. In contrast to the original definition of safety, our calculus does not constrain types (to be homogeneous). We show that in the safe lambda calculus, there is no need to rename bound variables when performing substitution, as variable capture is guaranteed not to happen. We also propose an adequate notion of beta-reduction that preserves safety. In the same vein as Schwichtenberg's 1976 characterization of the simply-typed lambda calculus, we show that the numeric functions representable in the safe lambda calculus are exactly the multivariate polynomials; thus conditional is not definable. We also give a characterization of representable word functions. We then study the complexity of deciding beta-eta equality of two safe simply-typed terms and show that this problem is PSPACE-hard. Finally we give a game-semantic analysis of safety: We show that safe terms are denoted by `P-incrementally justified strategies'. Consequently pointers in the game semantics of safe lambda-terms are only necessary from order 4 onwards.


Source : oai:arXiv.org:0901.2399
DOI : 10.2168/LMCS-5(1:3)2009
Volume: Volume 5, Issue 1
Published on: February 19, 2009
Submitted on: June 25, 2015
Keywords: Computer Science - Programming Languages,Computer Science - Computer Science and Game Theory,F.3.2,F.4.1


Share

Browsing statistics

This page has been seen 15 times.
This article's PDF has been downloaded 3 times.