Filinski constructed a symmetric lambda-calculus consisting of expressions and continuations which are symmetric, and functions which have duality. In his calculus, functions can be encoded to expressions and continuations using primitive operators. That is, the duality of functions is not derived in the calculus but adopted as a principle of the calculus. In this paper, we propose a simple symmetric lambda-calculus corresponding to the negation-free natural deduction based bilateralism in proof-theoretic semantics. In our calculus, continuation types are represented as not negations of formulae but formulae with negative polarity. Function types are represented as the implication and but-not connectives in intuitionistic and paraconsistent logics, respectively. Our calculus is not only simple but also powerful as it includes a call-value calculus corresponding to the call-by-value dual calculus invented by Wadler. We show that mutual transformations between expressions and continuations are definable in our calculus to justify the duality of functions. We also show that every typable function has dual types. Thus, the duality of function is derived from bilateralism.
翻译:Filinski 构建了一个由对称性表达式和延续性的对称性羊羔计算法组成的对称性羊羔计算法, 以及具有双重功能的函数。 在其微积分中, 函数可以使用原始操作器对表达式和延续性进行编码。 也就是说, 函数的双重性不是从微积分中衍生而来, 而是作为微积分的一项原则被采纳。 在本文中, 我们提出一个简单的对称性羊羔计算法, 相对应于无否认性自然扣减法, 在校对性精度精度中, 并且具有双重性。 在我们的计算中, 连续性类型代表的不是公式的否定, 而是负极化的公式。 函数类型代表的隐含性和非关联性, 分别是直觉和准性逻辑的。 我们的计算法不仅简单, 而且还是强大的, 因为它包含一个与Wadler 发明的无价双值双向性双向性计算法函数。 我们显示, 表达式和连续性之间的相互变异性是双向的双向性。