arXivDaily arXiv每日学术速递 周一至周五更新
arXiv 0901.2399cs.PLcs.GT
收藏

安全的λ演算

The Safe Lambda Calculus

William Blum, C. -H. Luke Ong

摘要:

安全性是高阶文法的一个句法条件,它根据变量的类型论顺序约束变量在产生式规则中的出现。在本文中,我们介绍了安全的λ演算,这是通过转置(和推广)的设置简单类型的λ演算的安全条件。与安全性的原始定义相反,我们的演算并不约束类型(必须是同质的)。我们表明,在安全的λ演算,没有必要重命名绑定变量时,执行替代,变量捕获是保证不会发生。我们还提出了一个适当的概念β-减少,保持安全性。与Schwichtenberg在1976年对简单类型的λ演算的刻画一样,我们证明了在安全的λ演算中可表示的数值函数恰好是多元多项式,因此条件是不可定义的。我们也给出了表征词的功能。然后,我们研究了两个安全的简单类型的条款,并表明这个问题是PSPACE困难的决定β-eta平等的复杂性。最后,我们给出了一个游戏语义分析的安全:我们表明,安全的条款表示的“P-增量合理的策略”。因此,在安全的博弈语义中,指针只有从4阶开始才是必要的。

英文摘要:

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.

机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。

↑