PVM-Prolog: Parallel Logic in the PVM System

Rui F. P. Marques, Jose' C. Cunha
Departamento de Informatica
Universidade Nova de Lisboa
2825 Monte de Caparica

Parallelism in Logic Programming has been an active research area due to the large computational requirements posed by Artificial Intelligence applications. Although very significant efforts have been done both in the automatic parallelization and in the development of new language constructs for parallel and distributed logic programming, relatively few attempts have been done to transport such models on top of the PVM environment.

In this paper we propose a low-level layer for parallel programming in Prolog over PVM. The layer encompasses PVM interfacing capabilities as well as multi-threaded Prolog processes. While the multi-threaded model was designed anew, the Prolog/PVM interface basically corresponds to the inclusion of additional system predicates, giving the Prolog programmer full access to the PVM environment.

This layer is intended to be used as a basis for the implementation of higher level parallel logic languages, as well as for the implementation of a diversity of parallelization strategies according to each specific problem domain. Such upper layers will then provide the required programming support for the exploitation of parallelism in applications in Artificial Intelligence and Distributed Artificial Intelligence. However it may also be used directly for programming small parallel applications in Prolog.

PVM-Prolog.ps (128K)

rfm@fct.unl.pt Rui F. P. Marques
jcc@fct.unl.pt Jose C. Cunha

Departamento de Informatica
Faculdade de Ciencias e Tecnologia - Universidade Nova de Lisboa, Portugal