一句话:为 λY 演算设计类型系统,确保程序正规形满足给定的弱一元二阶逻辑性质。
本文研究如何静态保证非解释函数式程序 λY 的执行结果满足给定的弱一元二阶逻辑(wMSOL)性质。程序执行结果为其正规形,可看作对内置操作的调用树,而 wMSOL 适合描述此类树的性质。作者为 λY 演算设计了一个类型系统,使得良类型程序的结果满足指定 wMSOL 性质。为证明该系统的可靠性与完备性,他们构造了 λY 的指称语义,使其能够计算 wMSOL 表达的性质。评估以理论证明为主,未涉及实现或实验。
We consider lambda-Y-calculus as a non-interpreted functional programming language: the result of the execution of a program is its normal form that can be seen as the tree of calls to built-in operations. Weak monadic second-order logic (wMSOL) is well suited to express properties of such trees. We give a type system for ensuring that the result of the execution of a lambda-Y-program satisfies a given wMSOL property. In order to prove soundness and completeness of the system we construct a denotational semantics of lambda-Y-calculus that is capable of computing properties expressed in wMSOL.