当前位置: X-MOL 学术J. Funct. Program. › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
A tutorial on computational classical logic and the sequent calculus
Journal of Functional Programming ( IF 1.1 ) Pub Date : 2018-02-01 , DOI: 10.1017/s0956796818000023
PAUL DOWNEN , ZENA M. ARIOLA

We present a model of computation that heavily emphasizes the concept of duality and the interaction between opposites–production interacts with consumption. The symmetry of this framework naturally explains more complicated features of programming languages through relatively familiar concepts. For example, binding a value to a variable is dual to manipulating the flow of control in a program. By looking at the computational interpretation of the sequent calculus, we find a language that lets us speak about duality, control flow, and evaluation order in programs as first-class concepts.We begin by reviewing Gentzen's LK sequent calculus and show how the Curry–Howard isomorphism still applies to give us a different basis for expressing computation. We then illustrate how the fundamental dilemma of computation in the sequent calculus gives rise to a duality between evaluation strategies: strict languages are dual to lazy languages. Finally, we discuss how the concept of focusing, developed in the setting of proof search, is related to the idea of type safety for computation expressed in the sequent calculus. In this regard, we compare and contrast two different methods of focusing that have appeared in the literature, static and dynamic focusing, and illustrate how they are two means to the same end.

中文翻译:

计算经典逻辑和后续微积分教程

我们提出了一个计算模型,它非常强调二元性对立面之间的相互作用——生产与消费相互作用。这个框架的对称性通过相对熟悉的概念自然地解释了编程语言更复杂的特性。例如,将值绑定到变量与在程序中操纵控制流是双重的。通过查看序列演算的计算解释,我们发现一种语言可以让我们将程序中的对偶性、控制流和评估顺序作为一流的概念进行讨论。我们首先回顾 Gentzen 的 LK 序列演算,并展示 Curry-霍华德同构仍然适用于为我们提供表达计算的不同基础。然后,我们说明了后续微积分中计算的基本困境如何导致两者之间的对偶评价策略: 严格语言与惰性语言是双重的。最后,我们讨论一下聚焦,在证明搜索的设置中发展起来,与后续演算中表达的计算类型安全的思想有关。在这方面,我们比较和对比了文献中出现的两种不同的聚焦方法,静止的动态的重点,并说明它们是如何达到同一目的的两种手段。
更新日期:2018-02-01
down
wechat
bug