arXivDaily arXiv每日学术速递 周一至周五更新
北美退伍军人节(Veterans Day),12 日无更新
arXiv 1609.00322cs.LO
收藏

Open Call-by-Value(扩展版)

Open Call-by-Value (Extended Version)

Beniamino Accattoli, Giulio Guerrieri

摘要:

按值调用演算的优雅理论依赖于弱求值和封闭项,这是程序设计语言研究中的自然假设。然而,为了对证明助手进行建模,需要强求值和开放项,并且众所周知,在这种情况下,按值调用的操作语义会成为问题。在这里,我们研究中间设置-我们称之为Open Call-by-Value -具有开放项的弱求值,在此之上,Grégoire和Leroy设计了Coq的抽象机。开放式按值调用的各种演算已经存在,每一个都有它的优点和缺点。本文提出了一个详细的比较研究,其中四个操作语义,来自不同的领域,如抽象机的研究,指称语义,线性逻辑证明网,和逻辑演算。我们表明,这些演算都是等价的,从终止的角度来看,证明口号开放调用的价值。

英文摘要:

The elegant theory of the call-by-value lambda-calculus relies on weak evaluation and closed terms, that are natural hypotheses in the study of programming languages. To model proof assistants, however, strong evaluation and open terms are required, and it is well known that the operational semantics of call-by-value becomes problematic in this case. Here we study the intermediate setting -- that we call Open Call-by-Value -- of weak evaluation with open terms, on top of which Grégoire and Leroy designed the abstract machine of Coq. Various calculi for Open Call-by-Value already exist, each one with its pros and cons. This paper presents a detailed comparative study of the operational semantics of four of them, coming from different areas such as the study of abstract machines, denotational semantics, linear logic proof nets, and sequent calculus. We show that these calculi are all equivalent from a termination point of view, justifying the slogan Open Call-by-Value.

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

↑