Some Experimental Results in Implementing a Logic Language with Multi-head Clauses on a Transputer Architecture

We focus on the distributed implementation of an extended logic language (called ROSE) based on multi-head clauses which can be useful to implement parallel logic objects where state change is performed by unification and recursion. Distinguishing features of ROSE are OR-parallelism with committed-choice behaviour and the AND-parallel execution of subgoals which do not share variables. We present the real implementation of ROSE on a Transputer-based architecture, and discuss some experimental results obtained by considering different allocation policies for processes. These allocation policies correspond to forms of inter- and intra-object parallelism when objects with state are implemented as ROSE programs. Obtained figures help in understanding which is the optimal allocation policy to adopt on the basis of an estimation of the time necessary for performing the distributed unification and the guard and body evaluation.

[1]  Gul A. Agha,et al.  ACTORS - a model of concurrent computation in distributed systems , 1985, MIT Press series in artificial intelligence.

[2]  Ian Foster,et al.  Strand: New Concepts in Parallel Programming , 1990 .

[3]  Giorgio Levi,et al.  A Synchronization Logic: Axiomatics and Formal Semantics of Generalized Horn Clauses , 1984, Inf. Control..

[4]  Evelina Lamma,et al.  The Implementation of a Distributed Model for Logic Programming Based on Multiple-Headed Clauses , 1992, Inf. Process. Lett..

[5]  Kazunori Ueda,et al.  A New Implementation Technique for Flat GHC , 1990, ICLP.

[6]  Daniel G. Bobrow,et al.  Objects in concurrent logic programming languages , 1986, OOPSLA 1986.

[7]  Yu Inamura,et al.  Distributed Implementation of KL1 on the Multi-PSI/V2 , 1989, ICLP.

[8]  Antonio Brogi,et al.  AND-Parallelism without Shared Variables , 1990, International Conference on Logic Programming.

[9]  Evelina Lamma,et al.  A distributed implementation for parallel logic programming , 1991, [1991] Proceedings, Advanced Computer Technology, Reliable Systems and Applications.

[10]  Ehud Shapiro,et al.  The family of concurrent logic programming languages , 1989, CSUR.

[11]  Ian T. Foster,et al.  Parallel Implementation of Parlog , 1988, International Conference on Parallel Processing.

[12]  Luís Monteiro,et al.  A Proposal for Distributed Programming in Logic , 1984, Implementations of Prolog.