A pi-calculus Specification of Prolog

A pi-calculus Specification of Prolog
复制标题

Prolog 的 pi 演算规范

DOI:
10.1007/3-540-57880-3_25
复制
发表时间:
1993
期刊:
--
影响因子:
--
通讯作者:
Zhenzhong Li
Zhenzhong Li
中科院分区:
--
文献类型:
--
作者:
Zhenzhong Li

文献摘要

被引文献

相似文献

本文利用π演算给出了一个清晰的模块化Prolog规范。Prolog目标被表示为π演算过程,Prolog谓词定义被转换为π演算主体定义。Prolog深度优先的左右控制策略和剪切控制算子都是通过进程间的同步通信来实现的,这与Prolog的continuationpassing风格实现在本质上是相似的。Prolog术语由持久进程表示,而逻辑变量由复杂进程建模,这些复杂进程具有通道,在不同的时间可以写入、读取和重置。有和没有回溯的统一都由π演算代理定义指定。控制规范和统一规范的顺利合并为Prolog的大部分提供了一个完整的规范。本文还讨论了一些相关的和进一步的工作。
A clear and modular specification of Prolog using the π-calculus is presented in this paper. Prolog goals are represented as π-calculus processes, and Prolog predicate definitions are translated into π-calculus agent definitions. Prolog's depth-first left-right control strategy as well as the cut control operator are modeled by the synchronized communication among processes, which is similar in spirit to continuationpassing style implementation of Prolog. Prolog terms are represented by persistent processes, while logical variables are modeled by complex processes with channels that, at various times, can be written, read, and reset. Both unifications with and without backtracking are specified by π-calculus agent definitions. A smooth merging of the specification for control and the specification for unification gives a full specification for much of Prolog. Some related and further works are also discussed.